Coder Social home page Coder Social logo

One to many repository maps about rome HOT 9 CLOSED

tmspzz avatar tmspzz commented on May 28, 2024
One to many repository maps

from rome.

Comments (9)

erichoracek avatar erichoracek commented on May 28, 2024 1

Appears to be working perfectly now, thanks!

from rome.

tmspzz avatar tmspzz commented on May 28, 2024

How do you see this working when:

  • rome (upload | download) CocoaLumberjack ? Should rome try to upload/download all resolved names?
  • rome list ([--missing] | [--present]) ?
  • Should rome report cache hits only when ALL resolved names are present?
  • Should rome report misses when ANY of the resolved names is a miss?

from rome.

erichoracek avatar erichoracek commented on May 28, 2024

I think this one is a bit different from dSYMS. If you have specified that a framework has a one-to-many repository/framework relationship, it would seem like rome would try to upload/download all names if they're specified, and consider any operation a failure if one of the frameworks are unavailable. As far as I know, there is no way to tell carthage to only build a specific subset of frameworks from a repo.

In terms of the above questions, this would result in:

Should rome try to upload/download all resolved names?

Yes, and consider the operation a failure if any are missing.

Should rome report cache hits only when ALL resolved names are present?

Yes

Should rome report misses when ANY of the resolved names is a miss?

Yes

Unfortunately, since Rome isn't able to communicate with the internals of Carthage, it's not as simple as just parsing the output of xcodebuild -list like carthage:

https://github.com/Carthage/Carthage/blob/master/Source/CarthageKit/Xcode.swift#L167-L192
https://github.com/Carthage/Carthage/blob/master/Source/CarthageKit/Xcode.swift#L745-L769

from rome.

tmspzz avatar tmspzz commented on May 28, 2024

@erichoracek Please try https://github.com/blender/Rome/releases/tag/v0.6.0.8

I think that rome list could be improved to report what alias of the framework is missing

from rome.

tmspzz avatar tmspzz commented on May 28, 2024

Fixes a crash in v0.6.0.8 https://github.com/blender/Rome/releases/tag/v0.6.0.9

from rome.

erichoracek avatar erichoracek commented on May 28, 2024

From trying out version 0.6.0.9, this doesn't seem to be working quite as expected. We have a repo named libPusher-Carthage, which builds the Pusher and SocketRocket frameworks.

When specifying the following [RepositoryMap]:

[RepositoryMap]
    libPusher-carthage = Pusher, SocketRocket

and this Cartfile.resolved:

github "Automatic/libPusher-carthage" "1.6.1"

I get the following behavior on rome upload:

$ rome upload  
Successfully uploaded Pusher to: Pusher/Pusher.framework-1.6.1.zip
Successfully uploaded Pusher.dSYM to: Pusher/Pusher.framework.dSYM-1.6.1.zip

And the following behavior on rome download:

$ rome download
Donwloaded: Pusher.framework-1.6.1.zip
Unzipped: Pusher.framework-1.6.1.zip
Donwloaded: Pusher.framework.dSYM-1.6.1.zip
Unzipped: Pusher.framework.dSYM-1.6.1.zip
Error downloading  SocketRocket.framework-1.6.1.zip : The specified key does not exist.
Error downloading  SocketRocket.framework.dSYM-1.6.1.zip : The specified key does not exist.

However, if I reverse the ordering of the repository map:

[RepositoryMap]
    libPusher-carthage = SocketRocket, Pusher

I get the reverse behavior:

$ rome upload  
Successfully uploaded SocketRocket to: SocketRocket/SocketRocket.framework-1.6.1.zip
Successfully uploaded SocketRocket.dSYM to: SocketRocket/SocketRocket.framework.dSYM-1.6.1.zip

It seems like this is almost there—thanks for taking a stab at this!

from rome.

tmspzz avatar tmspzz commented on May 28, 2024

@erichoracek I believe your problem are additional white spaces around frameworks names. This is addressed in pre-release v6.0.10

from rome.

erichoracek avatar erichoracek commented on May 28, 2024

@blender Thanks! I'll try this out.

Re: the v0.6.0.10 release, it would appear that the binary is missing from the Github attachments.

from rome.

tmspzz avatar tmspzz commented on May 28, 2024

@erichoracek Sorry about that. Fixed.

from rome.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.