You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The "Organization/FrameworkName" convention for automatically detecting frameworks causes subtle problems with Carthage workflows.
Steps which explain the enhancement or reproduce the bug
Add a custom framework to your project which doesn't follow the "Organization/FrameworkName" convention
Build and upload to the rome cache
Clear the Carthage/Build folder
Run rome download
Current behavior
rome doesn't find the framework name, but uploads a .<repo-name>.version-x.x.x file to the cache. When the Carthage/Build folder is cleared (or fresh, in the case of CI) and rome download is invoked, the version file is synced to the Build folder.
If you use a tool like carthage-verify it will say your Build folder is complete, but really you only have the version file and none of the frameworks.
Suggested behavior
Add an optional configuration to disable the "Organization/FrameworkName" convention. Only frameworks explicitly defined in the repositoryMap would be synced.
Why would the enhancement be useful to most users
It would keep CI builds from failing due to a mis-configured Romefile. IMHO, It's better to have no cache, than failing builds. Obviously, writing a correct Romefile is important, it can just be hard to enforce across distributed teams in a large organization.
Rome version:
0.20.0.56
OS and version:
macOS 10.14.3
The text was updated successfully, but these errors were encountered:
This sounds to me like a problem between the chair and the keyboard.
Very much so. I'm just trying to code around the problems I can solve.
+1 for rome verify. Any thoughts about how to approach this? I spent a bit of time yesterday prototyping something similar, but it's messy. The two approaches I came up with were:
crawl the Carthage/Checkouts folder and find all the targets
parse the project files to introspect the framework build phases and try to union that with input files and input file lists from carthage copy-frameworks
The first option requires a carthage checkout pre-step.
The second option doesn't seem generalized enough.
Enhancement Suggestion
The "Organization/FrameworkName" convention for automatically detecting frameworks causes subtle problems with Carthage workflows.
Steps which explain the enhancement or reproduce the bug
rome download
Current behavior
rome
doesn't find the framework name, but uploads a.<repo-name>.version-x.x.x
file to the cache. When the Carthage/Build folder is cleared (or fresh, in the case of CI) androme download
is invoked, the version file is synced to the Build folder.If you use a tool like carthage-verify it will say your Build folder is complete, but really you only have the version file and none of the frameworks.
Suggested behavior
Add an optional configuration to disable the "Organization/FrameworkName" convention. Only frameworks explicitly defined in the
repositoryMap
would be synced.Why would the enhancement be useful to most users
It would keep CI builds from failing due to a mis-configured Romefile. IMHO, It's better to have no cache, than failing builds. Obviously, writing a correct Romefile is important, it can just be hard to enforce across distributed teams in a large organization.
Rome version:
0.20.0.56
OS and version:
macOS 10.14.3
The text was updated successfully, but these errors were encountered: