-
Notifications
You must be signed in to change notification settings - Fork 2.7k
Open
Labels
A-featuresArea: features — conditional compilationArea: features — conditional compilationA-workspacesArea: workspacesArea: workspacesC-bugCategory: bugCategory: bugE-hardExperience: HardExperience: HardS-needs-designStatus: Needs someone to work further on the design for the feature or fix. NOT YET accepted.Status: Needs someone to work further on the design for the feature or fix. NOT YET accepted.
Description
Maintainers notes
- The recompilation was fixed, but this issue is still open regarding having features change based on what is being built simultaneously.
- The
cargo hackplugin will automatically expandcargo check --workspace(etc) tocargo check -p fail_test && cargo check -p lang_rust && ...,
Reproduction:
-
Check out this commit: matklad/fall@3022be4
-
Build some test with
cargo test -p fall_test -p fall_test -p lang_rust -p lang_rust -p lang_json --verbose --no-run -
Build other tests with
cargo test --all --verbose --no-run -
Run
cargo test -p fall_test -p fall_test -p lang_rust -p lang_rust -p lang_json --verbose --no-runagain and observe thatmemchrand some other dependencies are recompiled. -
Run
cargo test --all --verbose --no-runand observememchrrecompiled again.
The verbose flag gives the following commands for memchr:
Running `rustc --crate-name memchr /home/matklad/trash/registry/src/github.com-1ecc6299db9ec823/memchr-1.0.1/src/lib.rs --crate-type lib --emit=dep-info,link -C debuginfo=2 --cfg 'feature="default"' --cfg 'feature="libc"' --cfg 'feature="use_std"' -C metadata=be49c4722e8b48bf -C extra-filename=-be49c4722e8b48bf --out-dir /home/matklad/trash/fall/target/debug/deps -L dependency=/home/matklad/trash/fall/target/debug/deps --extern libc=/home/matklad/trash/fall/target/debug/deps/liblibc-90ba32719d46f457.rlib --cap-lints allow -C target-cpu=native`
Running `rustc --crate-name memchr /home/matklad/trash/registry/src/github.com-1ecc6299db9ec823/memchr-1.0.1/src/lib.rs --crate-type lib --emit=dep-info,link -C debuginfo=2 --cfg 'feature="default"' --cfg 'feature="libc"' --cfg 'feature="use_std"' -C metadata=be49c4722e8b48bf -C extra-filename=-be49c4722e8b48bf --out-dir /home/matklad/trash/fall/target/debug/deps -L dependency=/home/matklad/trash/fall/target/debug/deps --extern libc=/home/matklad/trash/fall/target/debug/deps/liblibc-335251832eb2b7ec.rlib --cap-lints allow -C target-cpu=native`
Here's the single difference:
--extern libc=/home/matklad/trash/fall/target/debug/deps/liblibc-90ba32719d46f457.rlib
--extern libc=/home/matklad/trash/fall/target/debug/deps/liblibc-335251832eb2b7ec.rlib
Versions (whyyyyy cargo is 0.21 and rustc is 1.20??? This is soo confusing)
λ cargo --version --verbose
cargo 0.21.0 (5b4b8b2ae 2017-08-12)
release: 0.21.0
commit-hash: 5b4b8b2ae3f6a884099544ce66dbb41626110ece
commit-date: 2017-08-12
~/trash/fall master
λ rustc --version
rustc 1.20.0 (f3d6973f4 2017-08-27)
Dushistov, OlegTheCat, nmattia, AlterionX, tjkirch and 28 more
Metadata
Metadata
Assignees
Labels
A-featuresArea: features — conditional compilationArea: features — conditional compilationA-workspacesArea: workspacesArea: workspacesC-bugCategory: bugCategory: bugE-hardExperience: HardExperience: HardS-needs-designStatus: Needs someone to work further on the design for the feature or fix. NOT YET accepted.Status: Needs someone to work further on the design for the feature or fix. NOT YET accepted.