Carthage: Extend the Cartfile

Created on 26 Oct 2018  路  6Comments  路  Source: Carthage/Carthage

Carthage is simple. So is this issue trying to be (although the first word in the title gives it away already).

Looking through the issues around here people seem to want to specify dependencies:

  • per scheme
  • per platform

Possible solutions:

  • yaml
  • ogdl
  • prefixes and/or suffixes

While the discussions are long on this subject, I suggest we keep this short and focused, to decide in general whether we want this or not. I'll try to update the above lists if new ideas come up.

enhancement

Most helpful comment

I think an extensible format would definitely be helpful. It's not important to focus on specific metadata, but it should be able to support the things you mentioned.

Whatever it is should be compatible with the existing Cartfile. Broad adoption of a format is a big plus. Simplicity is also a big plus.

A good starting place is probably to list any standard formats that are compatible with the existing format. Then show what it'd look like to include additional information.

All 6 comments

I think an extensible format would definitely be helpful. It's not important to focus on specific metadata, but it should be able to support the things you mentioned.

Whatever it is should be compatible with the existing Cartfile. Broad adoption of a format is a big plus. Simplicity is also a big plus.

A good starting place is probably to list any standard formats that are compatible with the existing format. Then show what it'd look like to include additional information.

We should make sure that we can support a version of the file format / scheme. Cartfile鈥檚 now are only 1 version with no ability to extend and not break new/old versions. I鈥檇 like to see a version header be accounted for as well from the start so we can extend this further. The version header I am thinking of is similar to config file based CI systems like Travis or CircleCI version: 0. Maintaining backwards compatibility is important as well with the current files. Would supporting old and a new format be feasible?

I'm not sure that's necessary. The minimum to build should always be the information that's currently in a Cartfile. We may add optional configuration, but the point here is to maintain compatibility with our existing format.

Agree with @mdiep. Versioning would just complicate.

Also, I read people want to specify which schemes are valid to be built in general by Carthage (like for omitting test schemes and the likes). Should I add it to the list?

I don't think we need to worry about building an exhaustive list of extensions that people want. :)

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

itinance picture itinance  路  3Comments

rogernolan picture rogernolan  路  3Comments

pmhood picture pmhood  路  3Comments

abbeyjackson picture abbeyjackson  路  3Comments

Ogerets picture Ogerets  路  3Comments