[INFO] fetching crate raft-consensus 0.4.0... [INFO] testing raft-consensus-0.4.0 against 1.90.0 for beta-1.91-3 [INFO] extracting crate raft-consensus 0.4.0 into /workspace/builds/worker-5-tc1/source [INFO] started tweaking crates.io crate raft-consensus 0.4.0 [INFO] finished tweaking crates.io crate raft-consensus 0.4.0 [INFO] tweaked toml for crates.io crate raft-consensus 0.4.0 written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate raft-consensus 0.4.0 on toolchain 1.90.0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 78 packages to latest compatible versions [INFO] [stderr] Adding capnp v0.9.5 (available: v0.21.5) [INFO] [stderr] Adding capnpc v0.9.5 (available: v0.21.4) [INFO] [stderr] Adding pretty_env_logger v0.2.5 (available: v0.5.0) [INFO] [stderr] Adding uuid v0.5.1 (available: v1.18.1) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded rand v0.3.23 [INFO] [stderr] Downloaded rand_core v0.3.1 [INFO] [stderr] Downloaded rdrand v0.4.0 [INFO] [stderr] Downloaded failure_derive v0.1.8 [INFO] [stderr] Downloaded fuchsia-cprng v0.1.1 [INFO] [stderr] Downloaded rand_core v0.4.2 [INFO] [stderr] Downloaded synstructure v0.12.6 [INFO] [stderr] Downloaded uuid v0.5.1 [INFO] [stderr] Downloaded capnpc v0.9.5 [INFO] [stderr] Downloaded capnp v0.9.5 [INFO] [stderr] Downloaded rand v0.4.6 [INFO] [stderr] Downloaded failure v0.1.8 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0ff0483f06ed7301e9d7baf8d7940dc7a3fd7e9a6433684f4060c35da6aafe9d [INFO] running `Command { std: "docker" "start" "-a" "0ff0483f06ed7301e9d7baf8d7940dc7a3fd7e9a6433684f4060c35da6aafe9d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0ff0483f06ed7301e9d7baf8d7940dc7a3fd7e9a6433684f4060c35da6aafe9d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0ff0483f06ed7301e9d7baf8d7940dc7a3fd7e9a6433684f4060c35da6aafe9d", kill_on_drop: false }` [INFO] [stdout] 0ff0483f06ed7301e9d7baf8d7940dc7a3fd7e9a6433684f4060c35da6aafe9d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 4dc43a20dc1511c1dd6b427753184cfe6c5baa958cc07cc40e54f95ff1892616 [INFO] running `Command { std: "docker" "start" "-a" "4dc43a20dc1511c1dd6b427753184cfe6c5baa958cc07cc40e54f95ff1892616", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling object v0.37.3 [INFO] [stderr] Compiling gimli v0.32.3 [INFO] [stderr] Compiling memchr v2.7.6 [INFO] [stderr] Compiling adler2 v2.0.1 [INFO] [stderr] Compiling unicode-xid v0.2.6 [INFO] [stderr] Compiling failure_derive v0.1.8 [INFO] [stderr] Compiling rustc-demangle v0.1.26 [INFO] [stderr] Compiling raft-consensus v0.4.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling log v0.4.28 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling rand v0.4.6 [INFO] [stderr] Compiling miniz_oxide v0.8.9 [INFO] [stderr] Compiling rand v0.3.23 [INFO] [stderr] Compiling uuid v0.5.1 [INFO] [stderr] Compiling synstructure v0.12.6 [INFO] [stderr] Compiling addr2line v0.25.1 [INFO] [stderr] Compiling backtrace v0.3.76 [INFO] [stderr] Compiling failure v0.1.8 [INFO] [stdout] warning: derive helper attribute is used before it is introduced [INFO] [stdout] --> src/error.rs:11:3 [INFO] [stdout] | [INFO] [stdout] 11 | #[fail(display = "Consensus error")] [INFO] [stdout] | ^^^^ [INFO] [stdout] 12 | #[derive(Fail, Debug)] [INFO] [stdout] | ---- the attribute is introduced here [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #79202 [INFO] [stdout] = note: `#[warn(legacy_derive_helpers)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/error.rs:39:23 [INFO] [stdout] | [INFO] [stdout] 39 | PersistentLog(Box), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 39 | PersistentLog(Box), [INFO] [stdout] | +++ [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/error.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Fail, Debug)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error` [INFO] [stdout] 13 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (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/error.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Fail, Debug)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error` [INFO] [stdout] 13 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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 warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.12s [INFO] running `Command { std: "docker" "inspect" "4dc43a20dc1511c1dd6b427753184cfe6c5baa958cc07cc40e54f95ff1892616", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4dc43a20dc1511c1dd6b427753184cfe6c5baa958cc07cc40e54f95ff1892616", kill_on_drop: false }` [INFO] [stdout] 4dc43a20dc1511c1dd6b427753184cfe6c5baa958cc07cc40e54f95ff1892616 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 7568f635c78d34c01c1027c06012c1f64c3cb50dcfc43ff4ca5dca96397916e7 [INFO] running `Command { std: "docker" "start" "-a" "7568f635c78d34c01c1027c06012c1f64c3cb50dcfc43ff4ca5dca96397916e7", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] Compiling regex-syntax v0.8.6 [INFO] [stderr] Compiling quick-error v1.2.3 [INFO] [stderr] Compiling aho-corasick v1.1.3 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling termcolor v1.4.1 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Compiling ansi_term v0.11.0 [INFO] [stdout] warning: derive helper attribute is used before it is introduced [INFO] [stdout] --> src/error.rs:11:3 [INFO] [stdout] | [INFO] [stdout] 11 | #[fail(display = "Consensus error")] [INFO] [stdout] | ^^^^ [INFO] [stdout] 12 | #[derive(Fail, Debug)] [INFO] [stdout] | ---- the attribute is introduced here [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #79202 [INFO] [stdout] = note: `#[warn(legacy_derive_helpers)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/error.rs:39:23 [INFO] [stdout] | [INFO] [stdout] 39 | PersistentLog(Box), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 39 | PersistentLog(Box), [INFO] [stdout] | +++ [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/error.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Fail, Debug)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error` [INFO] [stdout] 13 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (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/error.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Fail, Debug)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error` [INFO] [stdout] 13 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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 warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling humantime v1.3.0 [INFO] [stderr] Compiling regex-automata v0.4.11 [INFO] [stderr] Compiling regex v1.11.3 [INFO] [stderr] Compiling env_logger v0.5.13 [INFO] [stderr] Compiling pretty_env_logger v0.2.5 [INFO] [stderr] Compiling raft-consensus v0.4.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: derive helper attribute is used before it is introduced [INFO] [stdout] --> src/error.rs:11:3 [INFO] [stdout] | [INFO] [stdout] 11 | #[fail(display = "Consensus error")] [INFO] [stdout] | ^^^^ [INFO] [stdout] 12 | #[derive(Fail, Debug)] [INFO] [stdout] | ---- the attribute is introduced here [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #79202 [INFO] [stdout] = note: `#[warn(legacy_derive_helpers)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/error.rs:39:23 [INFO] [stdout] | [INFO] [stdout] 39 | PersistentLog(Box), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 39 | PersistentLog(Box), [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/consensus.rs:1112:24 [INFO] [stdout] | [INFO] [stdout] 1112 | for (peer, mut consensus) in self.peers.iter_mut() { [INFO] [stdout] | ----^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/consensus.rs:1119:21 [INFO] [stdout] | [INFO] [stdout] 1119 | let mut entry = timeouts.entry(peer.clone()).or_insert(HashSet::new()); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/consensus.rs:1132:21 [INFO] [stdout] | [INFO] [stdout] 1132 | let mut peer_consensus = self.peers.get_mut(&to).unwrap(); [INFO] [stdout] | ----^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/consensus.rs:1141:21 [INFO] [stdout] | [INFO] [stdout] 1141 | let mut entry = timeouts [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [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/error.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Fail, Debug)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error` [INFO] [stdout] 13 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (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/error.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | #[derive(Fail, Debug)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error` [INFO] [stdout] 13 | pub enum Error { [INFO] [stdout] | ----- `Error` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_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 warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 8.87s [INFO] running `Command { std: "docker" "inspect" "7568f635c78d34c01c1027c06012c1f64c3cb50dcfc43ff4ca5dca96397916e7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7568f635c78d34c01c1027c06012c1f64c3cb50dcfc43ff4ca5dca96397916e7", kill_on_drop: false }` [INFO] [stdout] 7568f635c78d34c01c1027c06012c1f64c3cb50dcfc43ff4ca5dca96397916e7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 26ce67cd652097149ec17309877d0b36adae7614b61c53ad3a39cc681264bba7 [INFO] running `Command { std: "docker" "start" "-a" "26ce67cd652097149ec17309877d0b36adae7614b61c53ad3a39cc681264bba7", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024 [INFO] [stderr] warning: derive helper attribute is used before it is introduced [INFO] [stderr] --> src/error.rs:11:3 [INFO] [stderr] | [INFO] [stderr] 11 | #[fail(display = "Consensus error")] [INFO] [stderr] | ^^^^ [INFO] [stderr] 12 | #[derive(Fail, Debug)] [INFO] [stderr] | ---- the attribute is introduced here [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #79202 [INFO] [stderr] = note: `#[warn(legacy_derive_helpers)]` on by default [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> src/error.rs:39:23 [INFO] [stderr] | [INFO] [stderr] 39 | PersistentLog(Box), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 39 | PersistentLog(Box), [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/error.rs:12:10 [INFO] [stderr] | [INFO] [stderr] 12 | #[derive(Fail, Debug)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Fail` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_Error` [INFO] [stderr] 13 | pub enum Error { [INFO] [stderr] | ----- `Error` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stderr] = 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] [stderr] = 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] [stderr] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/error.rs:12:10 [INFO] [stderr] | [INFO] [stderr] 12 | #[derive(Fail, Debug)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Display` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_Error` [INFO] [stderr] 13 | pub enum Error { [INFO] [stderr] | ----- `Error` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stderr] = 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] [stderr] = 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] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consensus.rs:1112:24 [INFO] [stderr] | [INFO] [stderr] 1112 | for (peer, mut consensus) in self.peers.iter_mut() { [INFO] [stderr] | ----^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consensus.rs:1119:21 [INFO] [stderr] | [INFO] [stderr] 1119 | let mut entry = timeouts.entry(peer.clone()).or_insert(HashSet::new()); [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consensus.rs:1132:21 [INFO] [stderr] | [INFO] [stderr] 1132 | let mut peer_consensus = self.peers.get_mut(&to).unwrap(); [INFO] [stderr] | ----^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/consensus.rs:1141:21 [INFO] [stderr] | [INFO] [stderr] 1141 | let mut entry = timeouts [INFO] [stderr] | ----^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: `raft-consensus` (lib) generated 4 warnings (run `cargo fix --lib -p raft-consensus` to apply 1 suggestion) [INFO] [stderr] warning: `raft-consensus` (lib test) generated 8 warnings (4 duplicates) (run `cargo fix --lib -p raft-consensus --tests` to apply 4 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.06s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/raft_consensus-f3648b6c79cd5246) [INFO] [stdout] [INFO] [stdout] running 15 tests [INFO] [stdout] test consensus::test::test_append_reorder ... ok [INFO] [stdout] test consensus::test::test_majority ... ok [INFO] [stdout] test consensus::test::test_heartbeat ... ok [INFO] [stdout] test consensus::test::test_slow_heartbeat ... ok [INFO] [stdout] test consensus::test::test_solitary_consensus_transition_to_leader ... ok [INFO] [stdout] test persistent_log::mem::test::test_append_entries ... ok [INFO] [stdout] test persistent_log::mem::test::test_voted_for ... ok [INFO] [stdout] test persistent_log::mem::test::test_current_term ... ok [INFO] [stdout] test state::tests::test_count_match_indexes ... ok [INFO] [stdout] test consensus::test::test_proposal ... ok [INFO] [stdout] test consensus::test::test_election ... ok [INFO] [stdout] test persistent_log::fs::test::test_append_entries ... ok [INFO] [stdout] test persistent_log::fs::test::test_current_term ... ok [INFO] [stdout] test persistent_log::fs::test::test_voted_for ... ok [INFO] [stdout] test persistent_log::fs::test::test_restore_log ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stderr] Doc-tests raft_consensus [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] running `Command { std: "docker" "inspect" "26ce67cd652097149ec17309877d0b36adae7614b61c53ad3a39cc681264bba7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "26ce67cd652097149ec17309877d0b36adae7614b61c53ad3a39cc681264bba7", kill_on_drop: false }` [INFO] [stdout] 26ce67cd652097149ec17309877d0b36adae7614b61c53ad3a39cc681264bba7