[INFO] fetching crate async-trait 0.1.88... [INFO] testing async-trait-0.1.88 against master#a1531335fe2807715fff569904d99602022643a7 for pr-145277 [INFO] extracting crate async-trait 0.1.88 into /workspace/builds/worker-6-tc1/source [INFO] started tweaking crates.io crate async-trait 0.1.88 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate async-trait 0.1.88 [INFO] tweaked toml for crates.io crate async-trait 0.1.88 written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate async-trait 0.1.88 on toolchain a1531335fe2807715fff569904d99602022643a7 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a1531335fe2807715fff569904d99602022643a7" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate async-trait 0.1.88 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a1531335fe2807715fff569904d99602022643a7" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded serde_spanned v0.6.8 [INFO] [stderr] Downloaded toml v0.8.20 [INFO] [stderr] Downloaded target-triple v0.1.4 [INFO] [stderr] Downloaded futures-executor v0.3.31 [INFO] [stderr] Downloaded futures v0.3.31 [INFO] [stderr] Downloaded dissimilar v1.0.10 [INFO] [stderr] Downloaded tracing-core v0.1.33 [INFO] [stderr] Downloaded indexmap v2.8.0 [INFO] [stderr] Downloaded toml_edit v0.22.24 [INFO] [stderr] Downloaded hashbrown v0.15.2 [INFO] [stderr] Downloaded winnow v0.7.4 [INFO] [stderr] Downloaded proc-macro2 v1.0.94 [INFO] [stderr] Downloaded trybuild v1.0.104 [INFO] [stderr] Downloaded once_cell v1.21.1 [INFO] [stderr] Downloaded tracing-attributes v0.1.28 [INFO] [stderr] Downloaded glob v0.3.2 [INFO] [stderr] Downloaded futures-macro v0.3.31 [INFO] [stderr] Downloaded autocfg v1.4.0 [INFO] [stderr] Downloaded rustversion v1.0.20 [INFO] [stderr] Downloaded syn v2.0.100 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a1531335fe2807715fff569904d99602022643a7" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ef1477e23c1cdf109f70c5cb635619b2465c4632714f5397e31ce3dfd0122adf [INFO] running `Command { std: "docker" "start" "-a" "ef1477e23c1cdf109f70c5cb635619b2465c4632714f5397e31ce3dfd0122adf", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ef1477e23c1cdf109f70c5cb635619b2465c4632714f5397e31ce3dfd0122adf", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ef1477e23c1cdf109f70c5cb635619b2465c4632714f5397e31ce3dfd0122adf", kill_on_drop: false }` [INFO] [stdout] ef1477e23c1cdf109f70c5cb635619b2465c4632714f5397e31ce3dfd0122adf [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a1531335fe2807715fff569904d99602022643a7" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 22e8dea42adb4bea8b103c4628ecd564e986967ddcd11a208f973fff9f84a0b2 [INFO] running `Command { std: "docker" "start" "-a" "22e8dea42adb4bea8b103c4628ecd564e986967ddcd11a208f973fff9f84a0b2", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.94 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling syn v2.0.100 [INFO] [stderr] Compiling async-trait v0.1.88 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.31s [INFO] running `Command { std: "docker" "inspect" "22e8dea42adb4bea8b103c4628ecd564e986967ddcd11a208f973fff9f84a0b2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "22e8dea42adb4bea8b103c4628ecd564e986967ddcd11a208f973fff9f84a0b2", kill_on_drop: false }` [INFO] [stdout] 22e8dea42adb4bea8b103c4628ecd564e986967ddcd11a208f973fff9f84a0b2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a1531335fe2807715fff569904d99602022643a7" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2ec07cf9c9896eb8778acdc2c01a9f9efe87bf88c2ff5c04c726b774058c85d5 [INFO] running `Command { std: "docker" "start" "-a" "2ec07cf9c9896eb8778acdc2c01a9f9efe87bf88c2ff5c04c726b774058c85d5", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.94 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Compiling autocfg v1.4.0 [INFO] [stderr] Compiling memchr v2.7.4 [INFO] [stderr] Compiling hashbrown v0.15.2 [INFO] [stderr] Compiling futures-core v0.3.31 [INFO] [stderr] Compiling futures-sink v0.3.31 [INFO] [stderr] Compiling pin-project-lite v0.2.16 [INFO] [stderr] Compiling equivalent v1.0.2 [INFO] [stderr] Compiling futures-channel v0.3.31 [INFO] [stderr] Compiling futures-io v0.3.31 [INFO] [stderr] Compiling pin-utils v0.1.0 [INFO] [stderr] Compiling target-triple v0.1.4 [INFO] [stderr] Compiling futures-task v0.3.31 [INFO] [stderr] Compiling serde_json v1.0.140 [INFO] [stderr] Compiling winnow v0.7.4 [INFO] [stderr] Compiling itoa v1.0.15 [INFO] [stderr] Compiling once_cell v1.21.1 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Compiling rustversion v1.0.20 [INFO] [stderr] Compiling ryu v1.0.20 [INFO] [stderr] Compiling tracing-core v0.1.33 [INFO] [stderr] Compiling dissimilar v1.0.10 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling indexmap v2.8.0 [INFO] [stderr] Compiling syn v2.0.100 [INFO] [stderr] Compiling glob v0.3.2 [INFO] [stderr] Compiling termcolor v1.4.1 [INFO] [stderr] Compiling toml_datetime v0.6.8 [INFO] [stderr] Compiling serde_spanned v0.6.8 [INFO] [stderr] Compiling toml_edit v0.22.24 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling tracing-attributes v0.1.28 [INFO] [stderr] Compiling async-trait v0.1.88 (/opt/rustwide/workdir) [INFO] [stderr] Compiling toml v0.8.20 [INFO] [stderr] Compiling futures-util v0.3.31 [INFO] [stderr] Compiling tracing v0.1.41 [INFO] [stderr] Compiling trybuild v1.0.104 [INFO] [stderr] Compiling futures-executor v0.3.31 [INFO] [stderr] Compiling futures v0.3.31 [INFO] [stdout] warning: unexpected `cfg` condition name: `async_trait_nightly_testing` [INFO] [stdout] --> tests/test.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | async_trait_nightly_testing, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: expected names are: `docsrs`, `feature`, and `test` and 31 more [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(async_trait_nightly_testing)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(async_trait_nightly_testing)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `async_trait_nightly_testing` [INFO] [stdout] --> tests/test.rs:382:7 [INFO] [stdout] | [INFO] [stdout] 382 | #[cfg(async_trait_nightly_testing)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(async_trait_nightly_testing)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(async_trait_nightly_testing)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `async_trait_nightly_testing` [INFO] [stdout] --> tests/test.rs:1300:7 [INFO] [stdout] | [INFO] [stdout] 1300 | #[cfg(async_trait_nightly_testing)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(async_trait_nightly_testing)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(async_trait_nightly_testing)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `async_trait_nightly_testing` [INFO] [stdout] --> tests/test.rs:1628:7 [INFO] [stdout] | [INFO] [stdout] 1628 | #[cfg(async_trait_nightly_testing)] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(async_trait_nightly_testing)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(async_trait_nightly_testing)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around type [INFO] [stdout] --> tests/test.rs:904:20 [INFO] [stdout] | [INFO] [stdout] 904 | impl Trait for (dyn Fn(u8) + Send + Sync) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 904 - impl Trait for (dyn Fn(u8) + Send + Sync) { [INFO] [stdout] 904 + impl Trait for dyn Fn(u8) + Send + Sync { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 42.48s [INFO] running `Command { std: "docker" "inspect" "2ec07cf9c9896eb8778acdc2c01a9f9efe87bf88c2ff5c04c726b774058c85d5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2ec07cf9c9896eb8778acdc2c01a9f9efe87bf88c2ff5c04c726b774058c85d5", kill_on_drop: false }` [INFO] [stdout] 2ec07cf9c9896eb8778acdc2c01a9f9efe87bf88c2ff5c04c726b774058c85d5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a1531335fe2807715fff569904d99602022643a7" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 7d873df89cc27d420f35efe87d683d521738e151c726d01de8f5686b0dbdb54d [INFO] running `Command { std: "docker" "start" "-a" "7d873df89cc27d420f35efe87d683d521738e151c726d01de8f5686b0dbdb54d", kill_on_drop: false }` [INFO] [stderr] warning: unexpected `cfg` condition name: `async_trait_nightly_testing` [INFO] [stderr] --> tests/test.rs:2:5 [INFO] [stderr] | [INFO] [stderr] 2 | async_trait_nightly_testing, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: expected names are: `docsrs`, `feature`, and `test` and 31 more [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(async_trait_nightly_testing)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(async_trait_nightly_testing)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `async_trait_nightly_testing` [INFO] [stderr] --> tests/test.rs:382:7 [INFO] [stderr] | [INFO] [stderr] 382 | #[cfg(async_trait_nightly_testing)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(async_trait_nightly_testing)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(async_trait_nightly_testing)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `async_trait_nightly_testing` [INFO] [stderr] --> tests/test.rs:1300:7 [INFO] [stderr] | [INFO] [stderr] 1300 | #[cfg(async_trait_nightly_testing)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(async_trait_nightly_testing)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(async_trait_nightly_testing)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `async_trait_nightly_testing` [INFO] [stderr] --> tests/test.rs:1628:7 [INFO] [stderr] | [INFO] [stderr] 1628 | #[cfg(async_trait_nightly_testing)] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(async_trait_nightly_testing)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(async_trait_nightly_testing)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around type [INFO] [stderr] --> tests/test.rs:904:20 [INFO] [stderr] | [INFO] [stderr] 904 | impl Trait for (dyn Fn(u8) + Send + Sync) { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 904 - impl Trait for (dyn Fn(u8) + Send + Sync) { [INFO] [stderr] 904 + impl Trait for dyn Fn(u8) + Send + Sync { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `async-trait` (test "test") generated 5 warnings (run `cargo fix --test "test"` to apply 1 suggestion) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.21s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/async_trait-c49460d9d21a6a63) [INFO] [stderr] Running tests/compiletest.rs (/opt/rustwide/target/debug/deps/compiletest-9acde2f8c239b7fb) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 1 test [INFO] [stderr] Compiling proc-macro2 v1.0.94 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Compiling autocfg v1.4.0 [INFO] [stderr] Checking pin-project-lite v0.2.16 [INFO] [stderr] Checking futures-sink v0.3.31 [INFO] [stderr] Checking futures-core v0.3.31 [INFO] [stderr] Checking futures-task v0.3.31 [INFO] [stderr] Checking pin-utils v0.1.0 [INFO] [stderr] Checking futures-io v0.3.31 [INFO] [stderr] Checking memchr v2.7.4 [INFO] [stderr] Checking once_cell v1.21.1 [INFO] [stderr] Checking futures-channel v0.3.31 [INFO] [stderr] Compiling rustversion v1.0.20 [INFO] [stderr] Checking tracing-core v0.1.33 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Checking quote v1.0.40 [INFO] [stderr] Checking syn v2.0.100 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling tracing-attributes v0.1.28 [INFO] [stderr] Compiling async-trait v0.1.88 (/opt/rustwide/workdir) [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Checking tracing v0.1.41 [INFO] [stderr] Checking futures-executor v0.3.31 [INFO] [stderr] Checking futures v0.3.31 [INFO] [stderr] Checking async-trait-tests v0.0.0 (/opt/rustwide/target/tests/trybuild/async-trait) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 22.75s [INFO] [stderr] [INFO] [stderr] [INFO] [stderr] test tests/ui/arg-implementation-detail.rs ... ok [INFO] [stderr] test tests/ui/bare-trait-object.rs ... ok [INFO] [stderr] test tests/ui/consider-restricting.rs ... mismatch [INFO] [stderr] [INFO] [stderr] EXPECTED: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] error: future cannot be sent between threads safely [INFO] [stderr] --> tests/ui/consider-restricting.rs:16:49 [INFO] [stderr] | [INFO] [stderr] 16 | async fn publish(&self, url: T) {} [INFO] [stderr] | ^^ future created by async block is not `Send` [INFO] [stderr] | [INFO] [stderr] note: captured value is not `Send` [INFO] [stderr] --> tests/ui/consider-restricting.rs:16:41 [INFO] [stderr] | [INFO] [stderr] 16 | async fn publish(&self, url: T) {} [INFO] [stderr] | ^^^ has type `T` which is not `Send` [INFO] [stderr] = note: required for the cast from `Pin>` to `Pin + Send + 'async_trait)>>` [INFO] [stderr] help: consider further restricting type parameter `T` with trait `Send` [INFO] [stderr] | [INFO] [stderr] 16 | async fn publish(&self, url: T) {} [INFO] [stderr] | +++++++++++++++++++ [INFO] [stderr] [INFO] [stderr] error: future cannot be sent between threads safely [INFO] [stderr] --> tests/ui/consider-restricting.rs:23:40 [INFO] [stderr] | [INFO] [stderr] 23 | async fn publish(&self, url: T) {} [INFO] [stderr] | ^^ future created by async block is not `Send` [INFO] [stderr] | [INFO] [stderr] note: captured value is not `Send` [INFO] [stderr] --> tests/ui/consider-restricting.rs:23:32 [INFO] [stderr] | [INFO] [stderr] 23 | async fn publish(&self, url: T) {} [INFO] [stderr] | ^^^ has type `T` which is not `Send` [INFO] [stderr] = note: required for the cast from `Pin>` to `Pin + Send + 'async_trait)>>` [INFO] [stderr] help: consider further restricting type parameter `T` with trait `Send` [INFO] [stderr] | [INFO] [stderr] 23 | async fn publish(&self, url: T) {} [INFO] [stderr] | +++++++++++++++++++ [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] [INFO] [stderr] ACTUAL OUTPUT: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] warning: unused variable: `url` [INFO] [stderr] --> tests/ui/consider-restricting.rs:16:41 [INFO] [stderr] | [INFO] [stderr] 16 | async fn publish(&self, url: T) {} [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_url` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] error: future cannot be sent between threads safely [INFO] [stderr] --> tests/ui/consider-restricting.rs:16:49 [INFO] [stderr] | [INFO] [stderr] 16 | async fn publish(&self, url: T) {} [INFO] [stderr] | ^^ future created by async block is not `Send` [INFO] [stderr] | [INFO] [stderr] note: captured value is not `Send` [INFO] [stderr] --> tests/ui/consider-restricting.rs:16:41 [INFO] [stderr] | [INFO] [stderr] 16 | async fn publish(&self, url: T) {} [INFO] [stderr] | ^^^ has type `T` which is not `Send` [INFO] [stderr] = note: required for the cast from `Pin>` to `Pin + Send>>` [INFO] [stderr] help: consider further restricting type parameter `T` with trait `Send` [INFO] [stderr] | [INFO] [stderr] 16 | async fn publish(&self, url: T) {} [INFO] [stderr] | +++++++++++++++++++ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `url` [INFO] [stderr] --> tests/ui/consider-restricting.rs:23:32 [INFO] [stderr] | [INFO] [stderr] 23 | async fn publish(&self, url: T) {} [INFO] [stderr] | ^^^ help: if this is intentional, prefix it with an underscore: `_url` [INFO] [stderr] [INFO] [stderr] error: future cannot be sent between threads safely [INFO] [stderr] --> tests/ui/consider-restricting.rs:23:40 [INFO] [stderr] | [INFO] [stderr] 23 | async fn publish(&self, url: T) {} [INFO] [stderr] | ^^ future created by async block is not `Send` [INFO] [stderr] | [INFO] [stderr] note: captured value is not `Send` [INFO] [stderr] --> tests/ui/consider-restricting.rs:23:32 [INFO] [stderr] | [INFO] [stderr] 23 | async fn publish(&self, url: T) {} [INFO] [stderr] | ^^^ has type `T` which is not `Send` [INFO] [stderr] = note: required for the cast from `Pin>` to `Pin + Send>>` [INFO] [stderr] help: consider further restricting type parameter `T` with trait `Send` [INFO] [stderr] | [INFO] [stderr] 23 | async fn publish(&self, url: T) {} [INFO] [stderr] | +++++++++++++++++++ [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning [INFO] [stderr] your test with the environment variable TRYBUILD=overwrite [INFO] [stderr] [INFO] [stderr] test tests/ui/delimiter-span.rs ... mismatch [INFO] [stderr] [INFO] [stderr] EXPECTED: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] error: no rules expected `{` [INFO] [stderr] --> tests/ui/delimiter-span.rs:19:16 [INFO] [stderr] | [INFO] [stderr] 5 | macro_rules! picky { [INFO] [stderr] | ------------------ when calling this macro [INFO] [stderr] ... [INFO] [stderr] 19 | picky!({ 123, self }); [INFO] [stderr] | ^ no rules expected this token in macro call [INFO] [stderr] | [INFO] [stderr] = note: while trying to match sequence start [INFO] [stderr] [INFO] [stderr] error: no rules expected `{` [INFO] [stderr] --> tests/ui/delimiter-span.rs:20:16 [INFO] [stderr] | [INFO] [stderr] 5 | macro_rules! picky { [INFO] [stderr] | ------------------ when calling this macro [INFO] [stderr] ... [INFO] [stderr] 20 | picky!({ 123 }); [INFO] [stderr] | ^ no rules expected this token in macro call [INFO] [stderr] | [INFO] [stderr] = note: while trying to match sequence start [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] [INFO] [stderr] ACTUAL OUTPUT: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] error: no rules expected `{` [INFO] [stderr] --> tests/ui/delimiter-span.rs:19:16 [INFO] [stderr] | [INFO] [stderr] 5 | macro_rules! picky { [INFO] [stderr] | ------------------ when calling this macro [INFO] [stderr] ... [INFO] [stderr] 19 | picky!({ 123, self }); [INFO] [stderr] | ^ no rules expected this token in macro call [INFO] [stderr] | [INFO] [stderr] = note: while trying to match sequence start [INFO] [stderr] [INFO] [stderr] error: no rules expected `{` [INFO] [stderr] --> tests/ui/delimiter-span.rs:20:16 [INFO] [stderr] | [INFO] [stderr] 5 | macro_rules! picky { [INFO] [stderr] | ------------------ when calling this macro [INFO] [stderr] ... [INFO] [stderr] 20 | picky!({ 123 }); [INFO] [stderr] | ^ no rules expected this token in macro call [INFO] [stderr] | [INFO] [stderr] = note: while trying to match sequence start [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning [INFO] [stderr] your test with the environment variable TRYBUILD=overwrite [INFO] [stderr] [INFO] [stderr] test tests/ui/lifetime-defined-here.rs ... ok [INFO] [stderr] test tests/ui/lifetime-span.rs ... ok [INFO] [stderr] test tests/ui/missing-async-in-impl.rs ... mismatch [INFO] [stderr] [INFO] [stderr] EXPECTED: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] error[E0195]: lifetime parameters or bounds on associated function `method` do not match the trait declaration [INFO] [stderr] --> tests/ui/missing-async-in-impl.rs:12:14 [INFO] [stderr] | [INFO] [stderr] 5 | async fn method(); [INFO] [stderr] | -------- lifetimes in impl do not match this associated function in trait [INFO] [stderr] ... [INFO] [stderr] 12 | fn method() {} [INFO] [stderr] | ^ lifetimes do not match associated function in trait [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] [INFO] [stderr] ACTUAL OUTPUT: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] error[E0195]: lifetime parameters or bounds on associated function `method` do not match the trait declaration [INFO] [stderr] --> tests/ui/missing-async-in-impl.rs:12:14 [INFO] [stderr] | [INFO] [stderr] 5 | async fn method(); [INFO] [stderr] | -------- lifetimes in impl do not match this associated function in trait [INFO] [stderr] ... [INFO] [stderr] 12 | fn method() {} [INFO] [stderr] | ^ lifetimes do not match associated function in trait [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning [INFO] [stderr] your test with the environment variable TRYBUILD=overwrite [INFO] [stderr] [INFO] [stderr] test tests/ui/missing-async-in-trait.rs ... mismatch [INFO] [stderr] [INFO] [stderr] EXPECTED: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] error[E0195]: lifetime parameters or bounds on associated function `method` do not match the trait declaration [INFO] [stderr] --> tests/ui/missing-async-in-trait.rs:12:14 [INFO] [stderr] | [INFO] [stderr] 5 | fn method(); [INFO] [stderr] | - lifetimes in impl do not match this associated function in trait [INFO] [stderr] ... [INFO] [stderr] 12 | async fn method() {} [INFO] [stderr] | ^^^^^^^^ lifetimes do not match associated function in trait [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] [INFO] [stderr] ACTUAL OUTPUT: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] error[E0195]: lifetime parameters or bounds on associated function `method` do not match the trait declaration [INFO] [stderr] --> tests/ui/missing-async-in-trait.rs:12:14 [INFO] [stderr] | [INFO] [stderr] 5 | fn method(); [INFO] [stderr] | - lifetimes in impl do not match this associated function in trait [INFO] [stderr] ... [INFO] [stderr] 12 | async fn method() {} [INFO] [stderr] | ^^^^^^^^ lifetimes do not match associated function in trait [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning [INFO] [stderr] your test with the environment variable TRYBUILD=overwrite [INFO] [stderr] [INFO] [stderr] test tests/ui/missing-body.rs ... ok [INFO] [stderr] test tests/ui/must-use.rs ... mismatch [INFO] [stderr] [INFO] [stderr] EXPECTED: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] error: unused pinned boxed `Future` trait object that must be used [INFO] [stderr] --> tests/ui/must-use.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | Thing.f(); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: futures do nothing unless you `.await` or poll them [INFO] [stderr] note: the lint level is defined here [INFO] [stderr] --> tests/ui/must-use.rs:1:9 [INFO] [stderr] | [INFO] [stderr] 1 | #![deny(unused_must_use)] [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: unused return value of `Interface::f` that must be used [INFO] [stderr] --> tests/ui/must-use.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | Thing.f(); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 18 | let _ = Thing.f(); [INFO] [stderr] | +++++++ [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] [INFO] [stderr] ACTUAL OUTPUT: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] error: unused pinned boxed `Future` trait object that must be used [INFO] [stderr] --> tests/ui/must-use.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | Thing.f(); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: futures do nothing unless you `.await` or poll them [INFO] [stderr] note: the lint level is defined here [INFO] [stderr] --> tests/ui/must-use.rs:1:9 [INFO] [stderr] | [INFO] [stderr] 1 | #![deny(unused_must_use)] [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] error: unused return value of `Interface::f` that must be used [INFO] [stderr] --> tests/ui/must-use.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | Thing.f(); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 18 | let _ = Thing.f(); [INFO] [stderr] | +++++++ [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning [INFO] [stderr] your test with the environment variable TRYBUILD=overwrite [INFO] [stderr] [INFO] [stderr] test tests/ui/no-attribute-macro.rs ... mismatch [INFO] [stderr] [INFO] [stderr] EXPECTED: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] error[E0038]: the trait `Trait` is not dyn compatible [INFO] [stderr] --> tests/ui/no-attribute-macro.rs:12:12 [INFO] [stderr] | [INFO] [stderr] 12 | let _: &dyn Trait; [INFO] [stderr] | ^^^^^^^^^^ `Trait` is not dyn compatible [INFO] [stderr] | [INFO] [stderr] note: for a trait to be dyn compatible it needs to allow building a vtable [INFO] [stderr] for more information, visit [INFO] [stderr] --> tests/ui/no-attribute-macro.rs:2:14 [INFO] [stderr] | [INFO] [stderr] 1 | pub trait Trait { [INFO] [stderr] | ----- this trait is not dyn compatible... [INFO] [stderr] 2 | async fn method(&self); [INFO] [stderr] | ^^^^^^ ...because method `method` is `async` [INFO] [stderr] = help: consider moving `method` to another trait [INFO] [stderr] = help: only type `Struct` implements `Trait` within this crate; consider using it directly instead. [INFO] [stderr] = note: `Trait` may be implemented in other crates; if you want to support your users passing their own types here, you can't refer to a specific type [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] [INFO] [stderr] ACTUAL OUTPUT: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] error[E0038]: the trait `Trait` is not dyn compatible [INFO] [stderr] --> tests/ui/no-attribute-macro.rs:12:17 [INFO] [stderr] | [INFO] [stderr] 12 | let _: &dyn Trait; [INFO] [stderr] | ^^^^^ `Trait` is not dyn compatible [INFO] [stderr] | [INFO] [stderr] note: for a trait to be dyn compatible it needs to allow building a vtable [INFO] [stderr] for more information, visit [INFO] [stderr] --> tests/ui/no-attribute-macro.rs:2:14 [INFO] [stderr] | [INFO] [stderr] 1 | pub trait Trait { [INFO] [stderr] | ----- this trait is not dyn compatible... [INFO] [stderr] 2 | async fn method(&self); [INFO] [stderr] | ^^^^^^ ...because method `method` is `async` [INFO] [stderr] = help: consider moving `method` to another trait [INFO] [stderr] = help: only type `Struct` implements `Trait` within this crate; consider using it directly instead. [INFO] [stderr] = note: `Trait` may be implemented in other crates; if you want to support your users passing their own types here, you can't refer to a specific type [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning [INFO] [stderr] your test with the environment variable TRYBUILD=overwrite [INFO] [stderr] [INFO] [stderr] test tests/ui/self-span.rs ... ok [INFO] [stderr] test tests/ui/send-not-implemented.rs ... mismatch [INFO] [stderr] [INFO] [stderr] EXPECTED: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] error: future cannot be sent between threads safely [INFO] [stderr] --> tests/ui/send-not-implemented.rs:8:26 [INFO] [stderr] | [INFO] [stderr] 8 | async fn test(&self) { [INFO] [stderr] | __________________________^ [INFO] [stderr] 9 | | let mutex = Mutex::new(()); [INFO] [stderr] 10 | | let _guard = mutex.lock().unwrap(); [INFO] [stderr] 11 | | f().await; [INFO] [stderr] 12 | | } [INFO] [stderr] | |_____^ future created by async block is not `Send` [INFO] [stderr] | [INFO] [stderr] = help: within `{async block@$DIR/tests/ui/send-not-implemented.rs:8:26: 12:6}`, the trait `Send` is not implemented for `MutexGuard<'_, ()>` [INFO] [stderr] note: future is not `Send` as this value is used across an await [INFO] [stderr] --> tests/ui/send-not-implemented.rs:11:13 [INFO] [stderr] | [INFO] [stderr] 10 | let _guard = mutex.lock().unwrap(); [INFO] [stderr] | ------ has type `MutexGuard<'_, ()>` which is not `Send` [INFO] [stderr] 11 | f().await; [INFO] [stderr] | ^^^^^ await occurs here, with `_guard` maybe used later [INFO] [stderr] = note: required for the cast from `Pin>` to `Pin + Send>>` [INFO] [stderr] [INFO] [stderr] error: future cannot be sent between threads safely [INFO] [stderr] --> tests/ui/send-not-implemented.rs:14:38 [INFO] [stderr] | [INFO] [stderr] 14 | async fn test_ret(&self) -> bool { [INFO] [stderr] | ______________________________________^ [INFO] [stderr] 15 | | let mutex = Mutex::new(()); [INFO] [stderr] 16 | | let _guard = mutex.lock().unwrap(); [INFO] [stderr] 17 | | f().await; [INFO] [stderr] 18 | | true [INFO] [stderr] 19 | | } [INFO] [stderr] | |_____^ future created by async block is not `Send` [INFO] [stderr] | [INFO] [stderr] = help: within `{async block@$DIR/tests/ui/send-not-implemented.rs:14:38: 19:6}`, the trait `Send` is not implemented for `MutexGuard<'_, ()>` [INFO] [stderr] note: future is not `Send` as this value is used across an await [INFO] [stderr] --> tests/ui/send-not-implemented.rs:17:13 [INFO] [stderr] | [INFO] [stderr] 16 | let _guard = mutex.lock().unwrap(); [INFO] [stderr] | ------ has type `MutexGuard<'_, ()>` which is not `Send` [INFO] [stderr] 17 | f().await; [INFO] [stderr] | ^^^^^ await occurs here, with `_guard` maybe used later [INFO] [stderr] = note: required for the cast from `Pin>` to `Pin + Send>>` [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] [INFO] [stderr] ACTUAL OUTPUT: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] error: future cannot be sent between threads safely [INFO] [stderr] --> tests/ui/send-not-implemented.rs:8:26 [INFO] [stderr] | [INFO] [stderr] 8 | async fn test(&self) { [INFO] [stderr] | __________________________^ [INFO] [stderr] 9 | | let mutex = Mutex::new(()); [INFO] [stderr] 10 | | let _guard = mutex.lock().unwrap(); [INFO] [stderr] 11 | | f().await; [INFO] [stderr] 12 | | } [INFO] [stderr] | |_____^ future created by async block is not `Send` [INFO] [stderr] | [INFO] [stderr] = help: within `{async block@$DIR/tests/ui/send-not-implemented.rs:8:26: 12:6}`, the trait `Send` is not implemented for `std::sync::MutexGuard<'_, ()>` [INFO] [stderr] note: future is not `Send` as this value is used across an await [INFO] [stderr] --> tests/ui/send-not-implemented.rs:11:13 [INFO] [stderr] | [INFO] [stderr] 10 | let _guard = mutex.lock().unwrap(); [INFO] [stderr] | ------ has type `std::sync::MutexGuard<'_, ()>` which is not `Send` [INFO] [stderr] 11 | f().await; [INFO] [stderr] | ^^^^^ await occurs here, with `_guard` maybe used later [INFO] [stderr] = note: required for the cast from `Pin>` to `Pin + Send>>` [INFO] [stderr] [INFO] [stderr] error: future cannot be sent between threads safely [INFO] [stderr] --> tests/ui/send-not-implemented.rs:14:38 [INFO] [stderr] | [INFO] [stderr] 14 | async fn test_ret(&self) -> bool { [INFO] [stderr] | ______________________________________^ [INFO] [stderr] 15 | | let mutex = Mutex::new(()); [INFO] [stderr] 16 | | let _guard = mutex.lock().unwrap(); [INFO] [stderr] 17 | | f().await; [INFO] [stderr] 18 | | true [INFO] [stderr] 19 | | } [INFO] [stderr] | |_____^ future created by async block is not `Send` [INFO] [stderr] | [INFO] [stderr] = help: within `{async block@$DIR/tests/ui/send-not-implemented.rs:14:38: 19:6}`, the trait `Send` is not implemented for `std::sync::MutexGuard<'_, ()>` [INFO] [stderr] note: future is not `Send` as this value is used across an await [INFO] [stderr] --> tests/ui/send-not-implemented.rs:17:13 [INFO] [stderr] | [INFO] [stderr] 16 | let _guard = mutex.lock().unwrap(); [INFO] [stderr] | ------ has type `std::sync::MutexGuard<'_, ()>` which is not `Send` [INFO] [stderr] 17 | f().await; [INFO] [stderr] | ^^^^^ await occurs here, with `_guard` maybe used later [INFO] [stderr] = note: required for the cast from `Pin>` to `Pin + Send>>` [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning [INFO] [stderr] your test with the environment variable TRYBUILD=overwrite [INFO] [stderr] [INFO] [stderr] test tests/ui/unreachable.rs ... mismatch [INFO] [stderr] [INFO] [stderr] EXPECTED: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] error: unreachable statement [INFO] [stderr] --> tests/ui/unreachable.rs:16:9 [INFO] [stderr] | [INFO] [stderr] 15 | let _y = unimplemented!(); [INFO] [stderr] | ---------------- any code following this expression is unreachable [INFO] [stderr] 16 | let _z = _y; [INFO] [stderr] | ^^^^^^^^^^^^ unreachable statement [INFO] [stderr] | [INFO] [stderr] note: the lint level is defined here [INFO] [stderr] --> tests/ui/unreachable.rs:1:9 [INFO] [stderr] | [INFO] [stderr] 1 | #![deny(warnings)] [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] = note: `#[deny(unreachable_code)]` implied by `#[deny(warnings)]` [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] [INFO] [stderr] ACTUAL OUTPUT: [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] error: unreachable statement [INFO] [stderr] --> tests/ui/unreachable.rs:16:9 [INFO] [stderr] | [INFO] [stderr] 15 | let _y = unimplemented!(); [INFO] [stderr] | ---------------- any code following this expression is unreachable [INFO] [stderr] 16 | let _z = _y; [INFO] [stderr] | ^^^^^^^^^^^^ unreachable statement [INFO] [stderr] | [INFO] [stderr] note: the lint level is defined here [INFO] [stderr] --> tests/ui/unreachable.rs:1:9 [INFO] [stderr] | [INFO] [stderr] 1 | #![deny(warnings)] [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] = note: `#[deny(unreachable_code)]` implied by `#[deny(warnings)]` [INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈ [INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning [INFO] [stderr] your test with the environment variable TRYBUILD=overwrite [INFO] [stderr] [INFO] [stderr] test tests/ui/unsupported-self.rs ... ok [INFO] [stderr] [INFO] [stderr] [INFO] [stdout] test ui ... FAILED [INFO] [stderr] error: test failed, to rerun pass `--test compiletest` [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- ui stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'ui' (17) panicked at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/trybuild-1.0.104/src/run.rs:102:13: [INFO] [stdout] 8 of 15 tests failed [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x649523c52bb2 - std::backtrace_rs::backtrace::libunwind::trace::h28054f4383c3f58e [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x649523c52bb2 - std::backtrace_rs::backtrace::trace_unsynchronized::ha282a8c421679d2f [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x649523c52bb2 - std::sys::backtrace::_print_fmt::hbec33065234e0802 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/sys/backtrace.rs:66:9 [INFO] [stdout] 3: 0x649523c52bb2 - ::fmt::hd1d4bb6928e618aa [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/sys/backtrace.rs:39:26 [INFO] [stdout] 4: 0x649523c7cbef - core::fmt::rt::Argument::fmt::h9d7a9c51e359853c [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/core/src/fmt/rt.rs:173:76 [INFO] [stdout] 5: 0x649523c7cbef - core::fmt::write::hb74543a25e711b4b [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/core/src/fmt/mod.rs:1468:25 [INFO] [stdout] 6: 0x649523c4f1c3 - std::io::default_write_fmt::h5fc6d59ce87844c1 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x649523c4f1c3 - std::io::Write::write_fmt::hd2771080cbf96086 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/io/mod.rs:1954:13 [INFO] [stdout] 8: 0x649523c52a02 - std::sys::backtrace::BacktraceLock::print::heea219b8050afbf1 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/sys/backtrace.rs:42:9 [INFO] [stdout] 9: 0x649523c5511a - std::panicking::default_hook::{{closure}}::hd4259c9ab8b045c5 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/panicking.rs:301:27 [INFO] [stdout] 10: 0x649523c54f86 - std::panicking::default_hook::h11ff409030846680 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/panicking.rs:325:9 [INFO] [stdout] 11: 0x649523c19d0e - as core::ops::function::Fn>::call::hd51613452276a673 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/alloc/src/boxed.rs:1985:9 [INFO] [stdout] 12: 0x649523c19d0e - test::test_main_with_exit_callback::{{closure}}::he745dc5723cd1954 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x649523c55c4e - as core::ops::function::Fn>::call::h11f03226fe12b23f [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/alloc/src/boxed.rs:1985:9 [INFO] [stdout] 14: 0x649523c55c4e - std::panicking::panic_with_hook::h7ff7afb88160a118 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/panicking.rs:842:13 [INFO] [stdout] 15: 0x649523c5591a - std::panicking::panic_handler::{{closure}}::hcdc643b4bb0ebe9b [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/panicking.rs:707:13 [INFO] [stdout] 16: 0x649523c530a9 - std::sys::backtrace::__rust_end_short_backtrace::h1e475b2065076ac7 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/sys/backtrace.rs:174:18 [INFO] [stdout] 17: 0x649523c555ad - __rustc[e46213fa37f0c562]::rust_begin_unwind [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/panicking.rs:698:5 [INFO] [stdout] 18: 0x649523c7af80 - core::panicking::panic_fmt::h80b565e2eb233fe8 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/core/src/panicking.rs:75:14 [INFO] [stdout] 19: 0x6495239fab53 - trybuild::run::::run::hbb043cd500a37817 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/trybuild-1.0.104/src/run.rs:102:13 [INFO] [stdout] 20: 0x649523a00288 - ::drop::ha6d810093aefa181 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/trybuild-1.0.104/src/lib.rs:341:38 [INFO] [stdout] 21: 0x649523923b27 - core::ptr::drop_in_place::h589ee34255442d80 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/core/src/ptr/mod.rs:804:1 [INFO] [stdout] 22: 0x649523924223 - compiletest::ui::h7fa3914e1d69745b [INFO] [stdout] at /opt/rustwide/workdir/tests/compiletest.rs:7:1 [INFO] [stdout] 23: 0x6495239241b7 - compiletest::ui::{{closure}}::h6043ae807204d969 [INFO] [stdout] at /opt/rustwide/workdir/tests/compiletest.rs:4:8 [INFO] [stdout] 24: 0x649523923a86 - core::ops::function::FnOnce::call_once::h9d232ef6e9d15654 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/core/src/ops/function.rs:253:5 [INFO] [stdout] 25: 0x649523c1f45b - core::ops::function::FnOnce::call_once::hfc756c52547ce44a [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/core/src/ops/function.rs:253:5 [INFO] [stdout] 26: 0x649523c1f45b - test::__rust_begin_short_backtrace::h9a5ae329d078bcd9 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/test/src/lib.rs:663:18 [INFO] [stdout] 27: 0x649523c1e655 - test::run_test_in_process::{{closure}}::h3426e995573c268d [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/test/src/lib.rs:686:74 [INFO] [stdout] 28: 0x649523c1e655 - as core::ops::function::FnOnce<()>>::call_once::ha7835434f938d8f3 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/core/src/panic/unwind_safe.rs:272:9 [INFO] [stdout] 29: 0x649523c1e655 - std::panicking::catch_unwind::do_call::hba7daaeffaa7fd92 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/panicking.rs:590:40 [INFO] [stdout] 30: 0x649523c1e655 - std::panicking::catch_unwind::h429b54e97c207d41 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/panicking.rs:553:19 [INFO] [stdout] 31: 0x649523c1e655 - std::panic::catch_unwind::h51208656128c85f9 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/panic.rs:357:14 [INFO] [stdout] 32: 0x649523c1e655 - test::run_test_in_process::h689806cd12adfed7 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/test/src/lib.rs:686:27 [INFO] [stdout] 33: 0x649523c1e655 - test::run_test::{{closure}}::hb7a4442cffb3ca48 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/test/src/lib.rs:607:43 [INFO] [stdout] 34: 0x649523be18b4 - test::run_test::{{closure}}::hbfdd49e739af13e8 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/test/src/lib.rs:637:41 [INFO] [stdout] 35: 0x649523be18b4 - std::sys::backtrace::__rust_begin_short_backtrace::h8748685fe296ef1f [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/sys/backtrace.rs:158:18 [INFO] [stdout] 36: 0x649523be51fa - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h934221187d822cc7 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/thread/mod.rs:559:17 [INFO] [stdout] 37: 0x649523be51fa - as core::ops::function::FnOnce<()>>::call_once::ha2070c9c72742147 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/core/src/panic/unwind_safe.rs:272:9 [INFO] [stdout] 38: 0x649523be51fa - std::panicking::catch_unwind::do_call::h0fa4d7384e02a51e [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/panicking.rs:590:40 [INFO] [stdout] 39: 0x649523be51fa - std::panicking::catch_unwind::h57da5b94928bf70d [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/panicking.rs:553:19 [INFO] [stdout] 40: 0x649523be51fa - std::panic::catch_unwind::h11a7caa5ab9505ca [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/panic.rs:357:14 [INFO] [stdout] 41: 0x649523be51fa - std::thread::Builder::spawn_unchecked_::{{closure}}::h81bd754a5aa6f57a [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/thread/mod.rs:557:30 [INFO] [stdout] 42: 0x649523be51fa - core::ops::function::FnOnce::call_once{{vtable.shim}}::hd839d279b244de64 [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/core/src/ops/function.rs:253:5 [INFO] [stdout] 43: 0x649523c5916f - as core::ops::function::FnOnce>::call_once::h234c89b9d620936c [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/alloc/src/boxed.rs:1971:9 [INFO] [stdout] 44: 0x649523c5916f - std::sys::pal::unix::thread::Thread::new::thread_start::h185f7d20f8cd290f [INFO] [stdout] at /rustc/a1531335fe2807715fff569904d99602022643a7/library/std/src/sys/pal/unix/thread.rs:107:17 [INFO] [stdout] 45: 0x70a36cf9caa4 - [INFO] [stdout] 46: 0x70a36d029a34 - clone [INFO] [stdout] 47: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] ui [INFO] [stdout] [INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 23.95s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "7d873df89cc27d420f35efe87d683d521738e151c726d01de8f5686b0dbdb54d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7d873df89cc27d420f35efe87d683d521738e151c726d01de8f5686b0dbdb54d", kill_on_drop: false }` [INFO] [stdout] 7d873df89cc27d420f35efe87d683d521738e151c726d01de8f5686b0dbdb54d