-
Notifications
You must be signed in to change notification settings - Fork 2.5k
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
vendor: Add --include-path-deps to include path dependencies #12858
Conversation
Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @weihanglo (or someone else) soon. Please see the contribution instructions for more information. Namely, in order to ensure the minimum review times lag, PR authors and assigned reviewers should ensure that the review label (
|
edb2e13
to
1e81f58
Compare
This changes the erroneous behavior to skip path dependencies and adds a command option to keep the current behavior.
1e81f58
to
bb8db8f
Compare
While the effort is pretty much appreciated, the current approach doesn't seem to work. As ehuss mentioned earlier, source replacement doesn't support path dependencies. The current output vendor-config is like [source."path+file:///home/user/cargo/target/tmp/cit/t0/foo/bar"]
directory = "file:///home/user/cargo/target/tmp/cit/t0/foo/bar"
replace-with = "vendored-sources"
[source.vendored-sources]
directory = "vendor" It makes We'd happy to discuss use cases, workflows and design first in #10134, and see which approach fits better with the community need and the current architecture of Cargo. |
☔ The latest upstream changes (presumably #12959) made this pull request unmergeable. Please resolve the merge conflicts. |
I am going to close this and keep the alternative #13347 open. #13347 is a proof-of-concept that addresses the issue mentioned in #12858 (comment). It supports path sources in source replacement so that Cargo can pick up correct sources. Thanks for the pull request! |
Fixes #9172, #10134.
Replacement of #10135.
I would just like to say that I personally think it's incorrect that path dependencies are skipped by default (especially without this being documented explicitly anywhere). I think #10135 is a more correct fix for this behavior that I consider a bug. However, since it seems that #10135 is not considered a bugfix by the cargo devs, I would like to propose this alternative solution to make a flag that explicitly includes path dependencies.
This means that using the flag will break with existing behavior, but using the flag will also fix the current documented behavior.