Skip to content

Commit 57277c3

Browse files
committed
Auto merge of #3035 - RalfJung:serde, r=RalfJung
bump serde bump to a version with the binary blob removed also, respect CARGO_EXTRA_FLAGS in more places
2 parents a5ba57e + 269cbc2 commit 57277c3

File tree

11 files changed

+51
-41
lines changed

11 files changed

+51
-41
lines changed

src/tools/miri/Cargo.lock

+10-10
Original file line numberDiff line numberDiff line change
@@ -529,18 +529,18 @@ checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de"
529529

530530
[[package]]
531531
name = "proc-macro2"
532-
version = "1.0.60"
532+
version = "1.0.66"
533533
source = "registry+https://github.com/rust-lang/crates.io-index"
534-
checksum = "dec2b086b7a862cf4de201096214fa870344cf922b2b30c167badb3af3195406"
534+
checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9"
535535
dependencies = [
536536
"unicode-ident",
537537
]
538538

539539
[[package]]
540540
name = "quote"
541-
version = "1.0.26"
541+
version = "1.0.33"
542542
source = "registry+https://github.com/rust-lang/crates.io-index"
543-
checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc"
543+
checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
544544
dependencies = [
545545
"proc-macro2",
546546
]
@@ -686,18 +686,18 @@ dependencies = [
686686

687687
[[package]]
688688
name = "serde"
689-
version = "1.0.162"
689+
version = "1.0.185"
690690
source = "registry+https://github.com/rust-lang/crates.io-index"
691-
checksum = "71b2f6e1ab5c2b98c05f0f35b236b22e8df7ead6ffbf51d7808da7f8817e7ab6"
691+
checksum = "be9b6f69f1dfd54c3b568ffa45c310d6973a5e5148fd40cf515acaf38cf5bc31"
692692
dependencies = [
693693
"serde_derive",
694694
]
695695

696696
[[package]]
697697
name = "serde_derive"
698-
version = "1.0.162"
698+
version = "1.0.185"
699699
source = "registry+https://github.com/rust-lang/crates.io-index"
700-
checksum = "a2a0814352fd64b58489904a44ea8d90cb1a91dcb6b4f5ebabc32c8318e93cb6"
700+
checksum = "dc59dfdcbad1437773485e0367fea4b090a2e0a16d9ffc46af47764536a298ec"
701701
dependencies = [
702702
"proc-macro2",
703703
"quote",
@@ -738,9 +738,9 @@ checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
738738

739739
[[package]]
740740
name = "syn"
741-
version = "2.0.15"
741+
version = "2.0.29"
742742
source = "registry+https://github.com/rust-lang/crates.io-index"
743-
checksum = "a34fcf3e8b60f57e6a14301a2e916d323af98b0ea63c599441eec8558660c822"
743+
checksum = "c324c494eba9d92503e6f1ef2e6df781e78f6a7705a0202d9801b198807d518a"
744744
dependencies = [
745745
"proc-macro2",
746746
"quote",

src/tools/miri/Cargo.toml

+2-2
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,8 @@ rustc_version = "0.4"
4141
# Features chosen to match those required by env_logger, to avoid rebuilds
4242
regex = { version = "1.5.5", default-features = false, features = ["perf", "std"] }
4343
lazy_static = "1.4.0"
44-
# Pin a version of serde without intransparent unreproducible binary blobs.
45-
serde = { version = "1.0, < 1.0.172", features = ["derive"] }
44+
# Require a version of serde without intransparent unreproducible binary blobs.
45+
serde = { version = "1.0.185", features = ["derive"] }
4646

4747
[package.metadata.rust-analyzer]
4848
# This crate uses #[feature(rustc_private)].

src/tools/miri/cargo-miri/Cargo.lock

+10-10
Original file line numberDiff line numberDiff line change
@@ -178,18 +178,18 @@ checksum = "ece97ea872ece730aed82664c424eb4c8291e1ff2480247ccf7409044bc6479f"
178178

179179
[[package]]
180180
name = "proc-macro2"
181-
version = "1.0.60"
181+
version = "1.0.66"
182182
source = "registry+https://github.com/rust-lang/crates.io-index"
183-
checksum = "dec2b086b7a862cf4de201096214fa870344cf922b2b30c167badb3af3195406"
183+
checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9"
184184
dependencies = [
185185
"unicode-ident",
186186
]
187187

188188
[[package]]
189189
name = "quote"
190-
version = "1.0.26"
190+
version = "1.0.33"
191191
source = "registry+https://github.com/rust-lang/crates.io-index"
192-
checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc"
192+
checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
193193
dependencies = [
194194
"proc-macro2",
195195
]
@@ -280,18 +280,18 @@ dependencies = [
280280

281281
[[package]]
282282
name = "serde"
283-
version = "1.0.162"
283+
version = "1.0.185"
284284
source = "registry+https://github.com/rust-lang/crates.io-index"
285-
checksum = "71b2f6e1ab5c2b98c05f0f35b236b22e8df7ead6ffbf51d7808da7f8817e7ab6"
285+
checksum = "be9b6f69f1dfd54c3b568ffa45c310d6973a5e5148fd40cf515acaf38cf5bc31"
286286
dependencies = [
287287
"serde_derive",
288288
]
289289

290290
[[package]]
291291
name = "serde_derive"
292-
version = "1.0.162"
292+
version = "1.0.185"
293293
source = "registry+https://github.com/rust-lang/crates.io-index"
294-
checksum = "a2a0814352fd64b58489904a44ea8d90cb1a91dcb6b4f5ebabc32c8318e93cb6"
294+
checksum = "dc59dfdcbad1437773485e0367fea4b090a2e0a16d9ffc46af47764536a298ec"
295295
dependencies = [
296296
"proc-macro2",
297297
"quote",
@@ -311,9 +311,9 @@ dependencies = [
311311

312312
[[package]]
313313
name = "syn"
314-
version = "2.0.15"
314+
version = "2.0.29"
315315
source = "registry+https://github.com/rust-lang/crates.io-index"
316-
checksum = "a34fcf3e8b60f57e6a14301a2e916d323af98b0ea63c599441eec8558660c822"
316+
checksum = "c324c494eba9d92503e6f1ef2e6df781e78f6a7705a0202d9801b198807d518a"
317317
dependencies = [
318318
"proc-macro2",
319319
"quote",

src/tools/miri/cargo-miri/Cargo.toml

+2-2
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,8 @@ rustc-build-sysroot = "0.4.1"
2222

2323
# Enable some feature flags that dev-dependencies need but dependencies
2424
# do not. This makes `./miri install` after `./miri build` faster.
25-
# Pin a version of serde without intransparent unreproducible binary blobs.
26-
serde = { version = "1.0, < 1.0.172", features = ["derive"] }
25+
# Require a version of serde without intransparent unreproducible binary blobs.
26+
serde = { version = "1.0.185", features = ["derive"] }
2727

2828
[build-dependencies]
2929
rustc_tools_util = "0.3"

src/tools/miri/ci.sh

+1-1
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ function run_tests {
5252

5353
# Also run some many-seeds tests. 64 seeds means this takes around a minute per test.
5454
for FILE in tests/many-seeds/*.rs; do
55-
MIRI_SEEDS=64 CARGO_EXTRA_FLAGS="$CARGO_EXTRA_FLAGS -q" ./miri many-seeds ./miri run "$FILE"
55+
MIRI_SEEDS=64 ./miri many-seeds ./miri run "$FILE"
5656
done
5757

5858
# Check that the benchmarks build and run, but without actually benchmarking.

src/tools/miri/miri

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,5 +2,5 @@
22
set -e
33
# Instead of doing just `cargo run --manifest-path .. $@`, we invoke miri-script binary directly. Invoking `cargo run` goes through
44
# rustup (that sets it's own environmental variables), which is undesirable.
5-
cargo build -q --manifest-path "$(dirname "$0")"/miri-script/Cargo.toml
5+
cargo build $CARGO_EXTRA_FLAGS -q --manifest-path "$(dirname "$0")"/miri-script/Cargo.toml
66
"$(dirname "$0")"/miri-script/target/debug/miri-script "$@"

src/tools/miri/miri-script/src/commands.rs

+3-1
Original file line numberDiff line numberDiff line change
@@ -319,6 +319,8 @@ impl Command {
319319
let Some((program_name, args)) = hyperfine.split_first() else {
320320
bail!("expected HYPERFINE environment variable to be non-empty");
321321
};
322+
// Extra flags to pass to cargo.
323+
let cargo_extra_flags = std::env::var("CARGO_EXTRA_FLAGS").unwrap_or_default();
322324
// Make sure we have an up-to-date Miri installed and selected the right toolchain.
323325
Self::install(vec![])?;
324326

@@ -341,7 +343,7 @@ impl Command {
341343
// That seems to make Windows CI happy.
342344
cmd!(
343345
sh,
344-
"{program_name} {args...} 'cargo miri run --manifest-path \"'{current_bench}'\"'"
346+
"{program_name} {args...} 'cargo miri run '{cargo_extra_flags}' --manifest-path \"'{current_bench}'\"'"
345347
)
346348
.run()?;
347349
}

src/tools/miri/test-cargo-miri/Cargo.lock

+8-8
Original file line numberDiff line numberDiff line change
@@ -83,27 +83,27 @@ version = "0.1.0"
8383

8484
[[package]]
8585
name = "proc-macro2"
86-
version = "1.0.60"
86+
version = "1.0.66"
8787
source = "registry+https://github.com/rust-lang/crates.io-index"
88-
checksum = "dec2b086b7a862cf4de201096214fa870344cf922b2b30c167badb3af3195406"
88+
checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9"
8989
dependencies = [
9090
"unicode-ident",
9191
]
9292

9393
[[package]]
9494
name = "quote"
95-
version = "1.0.23"
95+
version = "1.0.33"
9696
source = "registry+https://github.com/rust-lang/crates.io-index"
97-
checksum = "8856d8364d252a14d474036ea1358d63c9e6965c8e5c1885c18f73d70bff9c7b"
97+
checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae"
9898
dependencies = [
9999
"proc-macro2",
100100
]
101101

102102
[[package]]
103103
name = "serde_derive"
104-
version = "1.0.152"
104+
version = "1.0.185"
105105
source = "registry+https://github.com/rust-lang/crates.io-index"
106-
checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e"
106+
checksum = "dc59dfdcbad1437773485e0367fea4b090a2e0a16d9ffc46af47764536a298ec"
107107
dependencies = [
108108
"proc-macro2",
109109
"quote",
@@ -119,9 +119,9 @@ dependencies = [
119119

120120
[[package]]
121121
name = "syn"
122-
version = "1.0.107"
122+
version = "2.0.29"
123123
source = "registry+https://github.com/rust-lang/crates.io-index"
124-
checksum = "1f4064b5b16e03ae50984a5a8ed5d4f8803e6bc1fd170a3cda91a1be4b18e3f5"
124+
checksum = "c324c494eba9d92503e6f1ef2e6df781e78f6a7705a0202d9801b198807d518a"
125125
dependencies = [
126126
"proc-macro2",
127127
"quote",

src/tools/miri/test-cargo-miri/Cargo.toml

+1-2
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,7 @@ issue_rust_86261 = { path = "issue-rust-86261" }
2121
[dev-dependencies]
2222
byteorder_2 = { package = "byteorder", version = "0.5" } # to test dev-dependencies behave as expected, with renaming
2323
# Not actually used, but exercises some unique code path (`--extern` .so file).
24-
# Pin a version without intransparent unreproducible binary blobs.
25-
serde_derive = "=1.0.152"
24+
serde_derive = "1.0.185"
2625

2726
[build-dependencies]
2827
autocfg = "1"

src/tools/miri/test-cargo-miri/run-test.py

+3-1
Original file line numberDiff line numberDiff line change
@@ -15,12 +15,14 @@
1515
CBOLD = '\33[1m'
1616
CEND = '\33[0m'
1717

18+
CARGO_EXTRA_FLAGS = os.environ.get("CARGO_EXTRA_FLAGS", "").split()
19+
1820
def fail(msg):
1921
print("\nTEST FAIL: {}".format(msg))
2022
sys.exit(1)
2123

2224
def cargo_miri(cmd, quiet = True):
23-
args = ["cargo", "miri", cmd]
25+
args = ["cargo", "miri", cmd] + CARGO_EXTRA_FLAGS
2426
if quiet:
2527
args += ["-q"]
2628
if 'MIRI_TEST_TARGET' in os.environ:

src/tools/miri/tests/compiletest.rs

+10-3
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,11 @@ fn get_host() -> String {
1616
.host
1717
}
1818

19+
pub fn flagsplit(flags: &str) -> Vec<String> {
20+
// This code is taken from `RUSTFLAGS` handling in cargo.
21+
flags.split(' ').map(str::trim).filter(|s| !s.is_empty()).map(str::to_string).collect()
22+
}
23+
1924
// Build the shared object file for testing external C function calls.
2025
fn build_so_for_c_ffi_tests() -> PathBuf {
2126
let cc = option_env!("CC").unwrap_or("cc");
@@ -100,14 +105,16 @@ fn test_config(target: &str, path: &str, mode: Mode, with_dependencies: bool) ->
100105
if with_dependencies && use_std {
101106
config.dependencies_crate_manifest_path =
102107
Some(Path::new("test_dependencies").join("Cargo.toml"));
103-
config.dependency_builder.args = vec![
104-
"run".into(),
108+
let mut builder_args = vec!["run".into()];
109+
builder_args.extend(flagsplit(&env::var("CARGO_EXTRA_FLAGS").unwrap_or_default()));
110+
builder_args.extend([
105111
"--manifest-path".into(),
106112
"cargo-miri/Cargo.toml".into(),
107113
"--".into(),
108114
"miri".into(),
109115
"run".into(), // There is no `cargo miri build` so we just use `cargo miri run`.
110-
];
116+
]);
117+
config.dependency_builder.args = builder_args.into_iter().map(Into::into).collect();
111118
}
112119
config
113120
}

0 commit comments

Comments
 (0)