-
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
fix: use spec id instead of name to match package #13335
Conversation
Signed-off-by: hi-rustin <[email protected]>
r? @weihanglo (rustbot has picked a reviewer for you, use r? to override) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🔢 Self-check
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Other parts look great. Thanks for the fix!
Signed-off-by: hi-rustin <[email protected]>
Signed-off-by: hi-rustin <[email protected]>
3c3fe21
to
7a13864
Compare
Thanks! @bors r+ |
☀️ Test successful - checks-actions |
Update cargo 24 commits in 7bb7b539558dc88bea44cee4168b6269bf8177b0..cdf84b69d0416c57ac9dc3459af80dfb4883d27a 2024-01-20 00:15:32 +0000 to 2024-02-02 19:39:16 +0000 - Apply `-Zpanic-abort-tests` to doctests too (rust-lang/cargo#13388) - Don't print rustdoc command lines on failure by default (rust-lang/cargo#13387) - Ensure `nonzero_exit_code` test isn't affected by developers `RUST_BACKTRACE` setting (rust-lang/cargo#13385) - Add `docsrs` cfg as a well known `--check-cfg` (rust-lang/cargo#13383) - fix(new): Print a note, rather than a comment, for more information (rust-lang/cargo#13371) - Change tests to support changes to suggestion (rust-lang/cargo#13382) - chore(ci): enable m1 runner (rust-lang/cargo#13377) - fix(toml): Improve map/sequence error message (rust-lang/cargo#13376) - fix(diagnostic): Don't panic on empty spans (rust-lang/cargo#13375) - doc: Hide `cargo-fetch` description in offline man page (rust-lang/cargo#13364) - feat: stabilize lockfile v4 (rust-lang/cargo#12852) - fix(new): Print a 'Creating', rather than 'Created' status (rust-lang/cargo#13367) - fix: use spec id instead of name to match package (rust-lang/cargo#13335) - refactor(shell): Use new fancy anstyle API (rust-lang/cargo#13368) - feat(cargo-update): `--precise` to allow yanked versions (rust-lang/cargo#13333) - refactor: remove unnecessary Option in `Freshness::Dirty` (rust-lang/cargo#13361) - doc: Replace version with `latest` for jobserver link (rust-lang/cargo#13366) - test: data layout fix for `x86_64-unknown-none-gnu` (rust-lang/cargo#13362) - docs(ref): Try to improve reg auth docs (rust-lang/cargo#13351) - fix typo of rustbuild, instead of rustuild (rust-lang/cargo#13357) - fix(config): Deprecate non-extension files (rust-lang/cargo#13349) - fix(cli): Improve errors related to cargo script (rust-lang/cargo#13346) - fix list option description starting with uppercase (rust-lang/cargo#13344) - Fix typo in test (rust-lang/cargo#13342)
What does this PR try to resolve?
close #13310
Users tried
cargo run -p [email protected]
.The bug came from here:
So
[email protected]
didn't match withfoo
. It said there is no[email protected]
in the workspace.In order to resolve this issue, we need to utilize the package specification ID directly. If we only extract the name and drop the version specification, it could potentially lead to another bug. For instance, if you have a package
[email protected] in your workspace and you intend to use
[email protected], extracting only the name would result in the selection of
[email protected]` instead.So in this PR I parsed the package spec ID and used it to match the package's spec ID.
How should we test and review this PR?
Check out the unit test.
Additional information
None