-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cargo versioning #2182
Cargo versioning #2182
Conversation
To summarize the RFC as I understand it: the idea is that cargo can figure out your minimum version requirements based on what features of cargo are necessary to compile it, and that it will then record it in the index entry for your crate. This will then influence error messages and version resolution. The user interface doesn't need to change to support this (that is, you don't specify a minimum version in your Cargo.toml). Is that right? |
Would it be possible to allow an optional cargo version number if crate authors want to be able to enforce they will be using other newer features of cargo but currently do not? |
@withoutboats Correct. This is best-effort, and if the schemas turn out to be incorrect we can fix bugs in them. @bryteise Perhaps, though the default |
Sorry to take so long to get to this. This is generally quite good, but I am also a bit wary of no manual recourse in
seem sub-par. crates.io access for non-crates.io deps seems likely to cause confusion, non-determinism, and annoyance when there is no internet access. An optional schema version in |
N.B. haskell/cabal#4899 is the plan for schema versions for Cabal. Their situation is more awkward because Cabal files are a non-standard syntax, in addition to schema within that syntax, but I'd thought i'd still link for reference. |
@rfcbot postpone I no longer think this is the right approach. I think we need to have a new index format that incorporates a Cargo version number, but I don't think we should have a complex detection mechanism like this. |
Team member @joshtriplett has proposed to postpone this. The next step is review by the rest of the tagged team members: No concerns currently listed. Once a majority of reviewers approve (and at most 2 approvals are outstanding), this will enter its final comment period. If you spot a major issue that hasn't been raised at any point in this process, please speak up! See this document for info about what commands tagged team members can give me. |
Note that the MSRV RFC is not so different from the first alternative. |
@rfcbot reviewed |
🔔 This is now entering its final comment period, as per the review above. 🔔 |
The final comment period, with a disposition to postpone, as per the review above, is now complete. As the automated representative of the governance process, I would like to thank the author for their work and everyone else who contributed. The RFC is now postponed. |
One further followup on this: Since Cargo 1.19, in mid-2017, Cargo now ignores index entries it doesn't understand. |
Rendered
RFC co-authored by myself and @wycats, and pre-reviewed by @alexcrichton.