-
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
bump jobserver to respect --jobserver-auth=fifo:PATH
#11767
Conversation
r? @ehuss (rustbot has picked a reviewer for you, use r? to override) |
52a8a18
to
b9bfda5
Compare
--jobserver-style=fifo
'--jobserver-auth=fifo:PATH
BTW, should we update rustc and other crates as well in the ecosystem, i.e. |
When this merges in rust-lang/rust, it should implicitly update As for users of This also only really matters when cargo is being run under a relatively recent Is this ready to merge? |
Yep. It should behave as before for any GNU Make older than v4.4. |
Thanks! @bors r+ |
☀️ Test successful - checks-actions |
10 commits in 9d5b32f503fc099c4064298465add14d4bce11e6..9880b408a3af50c08fab3dbf4aa2a972df71e951 2023-02-22 23:04:16 +0000 to 2023-02-28 19:39:39 +0000 - bump jobserver to respect `--jobserver-auth=fifo:PATH` (rust-lang/cargo#11767) - Addition of support for -F as an alias for --features (rust-lang/cargo#11774) - Added documentation for the configuration discovery of `cargo install` to the man pages (rust-lang/cargo#11763) - Fix Cargo removing the sparse+ prefix from sparse URLs in .crates.toml (rust-lang/cargo#11756) - Fix warning with tempfile (rust-lang/cargo#11771) - Error message for transitive artifact dependencies with targets the package doesn't directly interact with (rust-lang/cargo#11643) - Fix tests with nondeterministic ordering (rust-lang/cargo#11766) - Make some blocking tests non-blocking (rust-lang/cargo#11650) - Suggest cargo add when installing library crate (rust-lang/cargo#11410) - chore: bump is-terminal to 0.4.4 (rust-lang/cargo#11759)
Update cargo 10 commits in 9d5b32f503fc099c4064298465add14d4bce11e6..9880b408a3af50c08fab3dbf4aa2a972df71e951 2023-02-22 23:04:16 +0000 to 2023-02-28 19:39:39 +0000 - bump jobserver to respect `--jobserver-auth=fifo:PATH` (rust-lang/cargo#11767) - Addition of support for -F as an alias for --features (rust-lang/cargo#11774) - Added documentation for the configuration discovery of `cargo install` to the man pages (rust-lang/cargo#11763) - Fix Cargo removing the sparse+ prefix from sparse URLs in .crates.toml (rust-lang/cargo#11756) - Fix warning with tempfile (rust-lang/cargo#11771) - Error message for transitive artifact dependencies with targets the package doesn't directly interact with (rust-lang/cargo#11643) - Fix tests with nondeterministic ordering (rust-lang/cargo#11766) - Make some blocking tests non-blocking (rust-lang/cargo#11650) - Suggest cargo add when installing library crate (rust-lang/cargo#11410) - chore: bump is-terminal to 0.4.4 (rust-lang/cargo#11759) r? `@ghost`
What does this PR try to resolve?
tl;dr: GNU Make 4.4 switches to use named pipes instead of anonymous simple pipes. Cargo needs to respect that to prevent clients from breaking.
See rust-lang/jobserver-rs#49
How should we test and review this PR?
For example, on macOS I changed to
gmake
to invoke GNU Make from homebrew.cargo t --test testsuite jobserver::
If you want to test this patch live, you can also execute
cargo build
frommake -j2
to test the behaviour.(I usually run
procs -w rustc
to observe the amount of rustc invocations.)Additional information
Fallback workaround: add
--jobserver-style=pipe
if you are using GNU Make 4.4 and this PR has yet got landed.Some distros that already got GNU Make 4.4: