-
Notifications
You must be signed in to change notification settings - Fork 2.4k
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
feat(spec): Extend PackageIdSpec with source kind + git ref for unambiguous specs #12933
Conversation
r? @weihanglo (rustbot has picked a reviewer for you, use r? to override) |
@rfcbot fcp merge |
Team member @epage has proposed to merge 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. |
refactor(source): Prepare for new PackageIDSpec syntax ### What does this PR try to resolve? This adds tests and refactors to prepare for #12933 ### How should we test and review this PR? ### Additional information
☔ The latest upstream changes (presumably #12938) made this pull request unmergeable. Please resolve the merge conflicts. |
7f4bbea
to
d981612
Compare
3f0d38c
to
e703af1
Compare
754b457
to
51a9018
Compare
🔔 This is now entering its final comment period, as per the review above. 🔔 |
d1f5a34
to
ec64b41
Compare
Going to merge this. I don't think we need to wait for 10 day long. If people think it is wrong, or have a better alternative, please call it out and we can reconsider. @bors r+ |
☀️ Test successful - checks-actions |
Update cargo 5 commits in 623b788496b3e51dc2f9282373cf0f6971a229b5..9787229614b27854cf73d57ffae430d7c1e6caa4 2023-12-02 18:10:03 +0000 to 2023-12-06 02:29:23 +0000 - feat(spec): Extend PackageIdSpec with source kind + git ref for unambiguous specs (rust-lang/cargo#12933) - test(trim-paths): assert `OSO` and `SO` cannot be trimmed (rust-lang/cargo#13118) - refactor(schemas): Pull out mod for proposed schemas package (rust-lang/cargo#13097) - chore(test): remove unnecesary packages and versions for `optionals` tests (rust-lang/cargo#13108) - chore(config): migrate renovate config (rust-lang/cargo#13106) r? ghost
Update cargo 5 commits in 623b788496b3e51dc2f9282373cf0f6971a229b5..9787229614b27854cf73d57ffae430d7c1e6caa4 2023-12-02 18:10:03 +0000 to 2023-12-06 02:29:23 +0000 - feat(spec): Extend PackageIdSpec with source kind + git ref for unambiguous specs (rust-lang/cargo#12933) - test(trim-paths): assert `OSO` and `SO` cannot be trimmed (rust-lang/cargo#13118) - refactor(schemas): Pull out mod for proposed schemas package (rust-lang/cargo#13097) - chore(test): remove unnecesary packages and versions for `optionals` tests (rust-lang/cargo#13108) - chore(config): migrate renovate config (rust-lang/cargo#13106) r? ghost
Update cargo 5 commits in 623b788496b3e51dc2f9282373cf0f6971a229b5..9787229614b27854cf73d57ffae430d7c1e6caa4 2023-12-02 18:10:03 +0000 to 2023-12-06 02:29:23 +0000 - feat(spec): Extend PackageIdSpec with source kind + git ref for unambiguous specs (rust-lang/cargo#12933) - test(trim-paths): assert `OSO` and `SO` cannot be trimmed (rust-lang/cargo#13118) - refactor(schemas): Pull out mod for proposed schemas package (rust-lang/cargo#13097) - chore(test): remove unnecesary packages and versions for `optionals` tests (rust-lang/cargo#13108) - chore(config): migrate renovate config (rust-lang/cargo#13106) r? ghost
What does this PR try to resolve?
This tries to add just enough information to Package ID Specs that we can be sure they are unambiguous. On its own thats important but this will unblock #12914 so we can have a user-facing ID that can be used with cargo's CLI.
More specifically, this adds
git+
, etc prefixes to the schemecargo metadata
s source id urlsSourceID
, this will allowPackageIDSpec
to generatedirectory+
andlocal-registry+
prefixes but not parse them. I'm assuming that the layers where those are dealt with they won't appear here but I don't have enough experience with themThings from
SourceID
that this does not includeimpl Ord for SourceId
)Fixes #10256
How should we test and review this PR?
Per-commit
Additional information