[INFO] cloning repository https://github.com/Jarusk/price-rs [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Jarusk/price-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJarusk%2Fprice-rs", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJarusk%2Fprice-rs'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 2d34a2825e85336f9703a3091bd6aed9cd7e3f96 [INFO] checking Jarusk/price-rs/2d34a2825e85336f9703a3091bd6aed9cd7e3f96 against try#7014e13d5becc920d4bea3cd87942c8a13d359bf+rustflags=-Dtail_expr_drop_order for pr-129864 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJarusk%2Fprice-rs" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Jarusk/price-rs on toolchain 7014e13d5becc920d4bea3cd87942c8a13d359bf [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Jarusk/price-rs [INFO] finished tweaking git repo https://github.com/Jarusk/price-rs [INFO] tweaked toml for git repo https://github.com/Jarusk/price-rs written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/Jarusk/price-rs 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" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 38dfd25596694a2fb2a07ad5af47a07461979f4810e9a9821e8788789e95c6f0 [INFO] running `Command { std: "docker" "start" "-a" "38dfd25596694a2fb2a07ad5af47a07461979f4810e9a9821e8788789e95c6f0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "38dfd25596694a2fb2a07ad5af47a07461979f4810e9a9821e8788789e95c6f0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "38dfd25596694a2fb2a07ad5af47a07461979f4810e9a9821e8788789e95c6f0", kill_on_drop: false }` [INFO] [stdout] 38dfd25596694a2fb2a07ad5af47a07461979f4810e9a9821e8788789e95c6f0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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 -Dtail_expr_drop_order" "-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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 1a0ea75a831c930e0b939ac7f55391a07f07d2ef42d186abd11fd7bd705e8d40 [INFO] running `Command { std: "docker" "start" "-a" "1a0ea75a831c930e0b939ac7f55391a07f07d2ef42d186abd11fd7bd705e8d40", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] Checking libc v0.2.39 [INFO] [stderr] Checking cfg-if v0.1.2 [INFO] [stderr] Checking futures v0.1.18 [INFO] [stderr] Checking byteorder v1.2.1 [INFO] [stderr] Checking nodrop v0.1.12 [INFO] [stderr] Checking lazy_static v1.0.0 [INFO] [stderr] Checking lazycell v0.6.0 [INFO] [stderr] Checking slab v0.4.0 [INFO] [stderr] Compiling version_check v0.1.3 [INFO] [stderr] Checking log v0.4.1 [INFO] [stderr] Checking arrayvec v0.4.7 [INFO] [stderr] Checking crossbeam-utils v0.3.2 [INFO] [stderr] Checking crossbeam-utils v0.2.2 [INFO] [stderr] Compiling proc-macro2 v0.2.3 [INFO] [stderr] Checking scoped-tls v0.1.1 [INFO] [stderr] Checking log v0.3.9 [INFO] [stderr] Checking safemem v0.2.0 [INFO] [stderr] Checking slab v0.3.0 [INFO] [stderr] Checking take v0.1.0 [INFO] [stderr] Checking smallvec v0.2.1 [INFO] [stderr] Compiling unicase v2.1.0 [INFO] [stderr] Checking base64 v0.9.0 [INFO] [stderr] Checking httparse v1.2.4 [INFO] [stderr] Checking crossbeam-epoch v0.4.1 [INFO] [stderr] Compiling quote v0.4.2 [INFO] [stderr] Checking iovec v0.1.2 [INFO] [stderr] Checking rand v0.4.2 [INFO] [stderr] Checking num_cpus v1.8.0 [INFO] [stderr] Checking bytes v0.4.6 [INFO] [stderr] Checking net2 v0.2.32 [INFO] [stderr] Compiling syn v0.12.14 [INFO] [stderr] Checking crossbeam-deque v0.3.0 [INFO] [stderr] Checking time v0.1.39 [INFO] [stderr] Checking itoa v0.4.0 [INFO] [stderr] Checking mime v0.3.5 [INFO] [stderr] Checking mio v0.6.14 [INFO] [stderr] Checking percent-encoding v1.0.1 [INFO] [stderr] Checking dtoa v0.4.2 [INFO] [stderr] Checking num-traits v0.2.2 [INFO] [stderr] Checking serde v1.0.33 [INFO] [stderr] Checking rand v0.3.22 [INFO] [stderr] Checking tokio-executor v0.1.0 [INFO] [stderr] Checking tokio-io v0.1.6 [INFO] [stderr] Checking tokio-service v0.1.0 [INFO] [stderr] Checking relay v0.1.1 [INFO] [stderr] Checking futures-cpupool v0.1.8 [INFO] [stderr] Checking tokio-threadpool v0.1.0 [INFO] [stderr] Checking tokio-reactor v0.1.0 [INFO] [stderr] Checking tokio v0.1.3 [INFO] [stderr] Checking tokio-core v0.1.15 [INFO] [stderr] Compiling serde_derive_internals v0.21.0 [INFO] [stderr] Compiling serde_derive v1.0.33 [INFO] [stderr] Checking tokio-proto v0.1.1 [INFO] [stderr] Checking hyper v0.11.22 [INFO] [stderr] Checking serde_json v1.0.12 [INFO] [stderr] Checking price-rs v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: use of deprecated function `std::env::home_dir`: This function's behavior may be unexpected on Windows. Consider using a crate from crates.io instead. [INFO] [stdout] --> src/config.rs:40:30 [INFO] [stdout] | [INFO] [stdout] 40 | let dir = match env::home_dir() { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::env::home_dir`: This function's behavior may be unexpected on Windows. Consider using a crate from crates.io instead. [INFO] [stdout] --> src/config.rs:40:30 [INFO] [stdout] | [INFO] [stdout] 40 | let dir = match env::home_dir() { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Result` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/xchg.rs:147:11 [INFO] [stdout] | [INFO] [stdout] 130 | let mut core = Core::new().unwrap(); [INFO] [stdout] | -------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 131 | let client = Client::new(&core.handle()); [INFO] [stdout] | ------ these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 147 | match core.run(work) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `enable_tax` is never read [INFO] [stdout] --> src/config.rs:129:13 [INFO] [stdout] | [INFO] [stdout] 129 | let mut enable_tax = constants::APPLY_TAX; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/xchg.rs:38:10 [INFO] [stdout] | [INFO] [stdout] 38 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Xchg` is not local [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Xchg` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/xchg.rs:38:21 [INFO] [stdout] | [INFO] [stdout] 38 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | -^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Xchg` is not local [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Xchg` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/config.rs:28:10 [INFO] [stdout] | [INFO] [stdout] 28 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Config` is not local [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Config` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/config.rs:28:21 [INFO] [stdout] | [INFO] [stdout] 28 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | -^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Config` is not local [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Config` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error; 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `price-rs` (bin "price-rs" test) due to 2 previous errors; 6 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: this value of type `Result` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/xchg.rs:147:11 [INFO] [stdout] | [INFO] [stdout] 130 | let mut core = Core::new().unwrap(); [INFO] [stdout] | -------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 131 | let client = Client::new(&core.handle()); [INFO] [stdout] | ------ these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 147 | match core.run(work) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `enable_tax` is never read [INFO] [stdout] --> src/config.rs:129:13 [INFO] [stdout] | [INFO] [stdout] 129 | let mut enable_tax = constants::APPLY_TAX; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/xchg.rs:38:10 [INFO] [stdout] | [INFO] [stdout] 38 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Xchg` is not local [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Xchg` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/xchg.rs:38:21 [INFO] [stdout] | [INFO] [stdout] 38 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | -^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Xchg` is not local [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Xchg` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/config.rs:28:10 [INFO] [stdout] | [INFO] [stdout] 28 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Config` is not local [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Config` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/config.rs:28:21 [INFO] [stdout] | [INFO] [stdout] 28 | #[derive(Serialize, Deserialize, Debug)] [INFO] [stdout] | -^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `Config` is not local [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Config` [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error; 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `price-rs` (bin "price-rs") due to 2 previous errors; 6 warnings emitted [INFO] running `Command { std: "docker" "inspect" "1a0ea75a831c930e0b939ac7f55391a07f07d2ef42d186abd11fd7bd705e8d40", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1a0ea75a831c930e0b939ac7f55391a07f07d2ef42d186abd11fd7bd705e8d40", kill_on_drop: false }` [INFO] [stdout] 1a0ea75a831c930e0b939ac7f55391a07f07d2ef42d186abd11fd7bd705e8d40