[INFO] cloning repository https://github.com/fakeNetflix/twitter-repo-rpc-perf [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/fakeNetflix/twitter-repo-rpc-perf" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FfakeNetflix%2Ftwitter-repo-rpc-perf", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FfakeNetflix%2Ftwitter-repo-rpc-perf'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 2de82b3705322f470fba44cd31135ad91e694d88 [INFO] testing fakeNetflix/twitter-repo-rpc-perf against try#2440211fe03bc45c89b6dc1a3df18382ce91e32b for pr-146098-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FfakeNetflix%2Ftwitter-repo-rpc-perf" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/fakeNetflix/twitter-repo-rpc-perf [INFO] finished tweaking git repo https://github.com/fakeNetflix/twitter-repo-rpc-perf [INFO] tweaked toml for git repo https://github.com/fakeNetflix/twitter-repo-rpc-perf written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/fakeNetflix/twitter-repo-rpc-perf on toolchain 2440211fe03bc45c89b6dc1a3df18382ce91e32b [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2440211fe03bc45c89b6dc1a3df18382ce91e32b" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/fakeNetflix/twitter-repo-rpc-perf 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" "+2440211fe03bc45c89b6dc1a3df18382ce91e32b" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+2440211fe03bc45c89b6dc1a3df18382ce91e32b" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 3a498765b871d0248671f2893a3412870141e8467b1445ff5b8a517537dc76e0 [INFO] running `Command { std: "docker" "start" "-a" "3a498765b871d0248671f2893a3412870141e8467b1445ff5b8a517537dc76e0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3a498765b871d0248671f2893a3412870141e8467b1445ff5b8a517537dc76e0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3a498765b871d0248671f2893a3412870141e8467b1445ff5b8a517537dc76e0", kill_on_drop: false }` [INFO] [stdout] 3a498765b871d0248671f2893a3412870141e8467b1445ff5b8a517537dc76e0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+2440211fe03bc45c89b6dc1a3df18382ce91e32b" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9ce98ea69df4e7c2c24200e2233951b1fad4c8788f4622f8a442deef61008ad5 [INFO] running `Command { std: "docker" "start" "-a" "9ce98ea69df4e7c2c24200e2233951b1fad4c8788f4622f8a442deef61008ad5", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v0.1.5 [INFO] [stderr] Compiling libc v0.2.60 [INFO] [stderr] Compiling cfg-if v0.1.9 [INFO] [stderr] Compiling rand_core v0.4.0 [INFO] [stderr] Compiling smallvec v0.6.10 [INFO] [stderr] Compiling log v0.4.8 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling byteorder v1.3.2 [INFO] [stderr] Compiling serde v1.0.98 [INFO] [stderr] Compiling stable_deref_trait v1.1.1 [INFO] [stderr] Compiling scopeguard v0.3.3 [INFO] [stderr] Compiling proc-macro2 v0.4.30 [INFO] [stderr] Compiling bitflags v1.1.0 [INFO] [stderr] Compiling arrayvec v0.4.11 [INFO] [stderr] Compiling matches v0.1.8 [INFO] [stderr] Compiling ppv-lite86 v0.2.5 [INFO] [stderr] Compiling build_const v0.2.1 [INFO] [stderr] Compiling lazy_static v1.3.0 [INFO] [stderr] Compiling owning_ref v0.4.0 [INFO] [stderr] Compiling adler32 v1.0.3 [INFO] [stderr] Compiling rand_core v0.3.1 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling rand_xorshift v0.1.1 [INFO] [stderr] Compiling rand_hc v0.1.0 [INFO] [stderr] Compiling rand_isaac v0.1.1 [INFO] [stderr] Compiling rand_jitter v0.1.4 [INFO] [stderr] Compiling lock_api v0.1.5 [INFO] [stderr] Compiling crc v1.8.1 [INFO] [stderr] Compiling unicode-normalization v0.1.8 [INFO] [stderr] Compiling unicode-bidi v0.3.4 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling syn v0.15.42 [INFO] [stderr] Compiling hashbrown v0.3.1 [INFO] [stderr] Compiling nodrop v0.1.13 [INFO] [stderr] Compiling num-traits v0.2.8 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling num-integer v0.1.41 [INFO] [stderr] Compiling num-iter v0.1.39 [INFO] [stderr] Compiling c2-chacha v0.2.2 [INFO] [stderr] Compiling parking_lot_core v0.4.0 [INFO] [stderr] Compiling time v0.1.42 [INFO] [stderr] Compiling rand_os v0.1.3 [INFO] [stderr] Compiling iovec v0.1.2 [INFO] [stderr] Compiling getrandom v0.1.7 [INFO] [stderr] Compiling quote v0.6.13 [INFO] [stderr] Compiling logger v0.1.0 (/opt/rustwide/workdir/logger) [INFO] [stderr] Compiling bytes v0.4.12 [INFO] [stderr] Compiling rand_core v0.5.0 [INFO] [stderr] Compiling deflate v0.7.20 [INFO] [stderr] Compiling evmap v4.2.3 [INFO] [stderr] Compiling stb_truetype v0.2.6 [INFO] [stderr] Compiling inflate v0.4.5 [INFO] [stderr] Compiling percent-encoding v1.0.1 [INFO] [stderr] Compiling unicode-width v0.1.5 [INFO] [stderr] Compiling rand_chacha v0.2.1 [INFO] [stderr] Compiling rand v0.7.0 [INFO] [stderr] Compiling textwrap v0.11.0 [INFO] [stderr] Compiling atty v0.2.13 [INFO] [stderr] Compiling net2 v0.2.33 [INFO] [stderr] Compiling hsl v0.1.1 [INFO] [stderr] Compiling chunked_transfer v0.3.1 [INFO] [stderr] Compiling ansi_term v0.11.0 [INFO] [stderr] Compiling dejavu v2.37.0 [INFO] [stderr] Compiling ascii v0.8.7 [INFO] [stderr] Compiling vec_map v0.8.1 [INFO] [stderr] Compiling slab v0.4.2 [INFO] [stderr] Compiling strsim v0.8.0 [INFO] [stderr] Compiling mio v0.6.19 [INFO] [stderr] Compiling buffer v0.1.0 (/opt/rustwide/workdir/buffer) [INFO] [stderr] Compiling timer v0.1.2 (/opt/rustwide/workdir/timer) [INFO] [stderr] Compiling clap v2.33.0 [INFO] [stderr] Compiling idna v0.1.5 [INFO] [stderr] Compiling ordered-float v1.0.2 [INFO] [stderr] Compiling approx v0.3.2 [INFO] [stderr] Compiling chrono v0.4.7 [INFO] [stderr] Compiling png v0.14.1 [INFO] [stderr] Compiling rusttype v0.7.7 [INFO] [stderr] Compiling url v1.7.2 [INFO] [stderr] Compiling tiny_http v0.6.2 [INFO] [stderr] Compiling parking_lot v0.7.1 [INFO] [stderr] Compiling serde_derive v1.0.98 [INFO] [stderr] Compiling atomics v0.2.0 (/opt/rustwide/workdir/atomics) [INFO] [stderr] Compiling toml v0.5.1 [INFO] [stdout] warning: unused import: `self::atomic_i16::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:18:9 [INFO] [stdout] | [INFO] [stdout] 18 | pub use self::atomic_i16::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_i32::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | pub use self::atomic_i32::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_i64::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub use self::atomic_i64::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_i8::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 21 | pub use self::atomic_i8::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_isize::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | pub use self::atomic_isize::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_u16::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub use self::atomic_u16::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_u32::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | pub use self::atomic_u32::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_u64::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | pub use self::atomic_u64::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_u8::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub use self::atomic_u8::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_usize::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | pub use self::atomic_usize::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicBool::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_bool.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicI16::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_i16.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicI32::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_i32.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicI64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_i64.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicI8::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_i8.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicIsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_isize.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicPtr::::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_ptr.rs:47:20 [INFO] [stdout] | [INFO] [stdout] 47 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU16::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_u16.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU32::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_u32.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_u64.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU8::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_u8.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_usize.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_usize.rs:166:12 [INFO] [stdout] | [INFO] [stdout] 166 | if let Ok(value) = usize::try_from(value) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling datastructures v0.4.0 (/opt/rustwide/workdir/datastructures) [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> datastructures/src/lib.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub use crate::heatmap::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ the name `Iter` in the type namespace is first re-exported here [INFO] [stdout] 15 | pub use crate::histogram::*; [INFO] [stdout] | ------------------- but the name `Iter` in the type namespace is also re-exported here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ambiguous_glob_reexports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling metrics v0.4.0 (/opt/rustwide/workdir/metrics) [INFO] [stderr] Compiling ratelimiter v0.3.1 (/opt/rustwide/workdir/ratelimiter) [INFO] [stderr] Compiling waterfall v0.4.0 (/opt/rustwide/workdir/waterfall) [INFO] [stdout] warning: unnecessary parentheses around index expression [INFO] [stdout] --> waterfall/src/lib.rs:282:43 [INFO] [stdout] | [INFO] [stdout] 282 | self.buffer[(sy + y)][(sx + x)] = other.buffer[sy][sx]; [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 282 - self.buffer[(sy + y)][(sx + x)] = other.buffer[sy][sx]; [INFO] [stdout] 282 + self.buffer[(sy + y)][sx + x] = other.buffer[sy][sx]; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around index expression [INFO] [stdout] --> waterfall/src/lib.rs:282:33 [INFO] [stdout] | [INFO] [stdout] 282 | self.buffer[(sy + y)][(sx + x)] = other.buffer[sy][sx]; [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 282 - self.buffer[(sy + y)][(sx + x)] = other.buffer[sy][sx]; [INFO] [stdout] 282 + self.buffer[sy + y][(sx + x)] = other.buffer[sy][sx]; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition value: `waterfall` [INFO] [stdout] --> metrics/src/recorder.rs:150:11 [INFO] [stdout] | [INFO] [stdout] 150 | #[cfg(feature = "waterfall")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `waterfall` as a feature in `Cargo.toml` [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] [stderr] Compiling codec v0.2.0 (/opt/rustwide/workdir/codec) [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> codec/src/echo/mod.rs:56:43 [INFO] [stdout] | [INFO] [stdout] 56 | let crc_bytes: [u8; 4] = unsafe { transmute(crc_calc.to_be()) }; [INFO] [stdout] | ---------^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `u32::to_ne_bytes` [INFO] [stdout] | [INFO] [stdout] = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order [INFO] [stdout] = note: `#[warn(unnecessary_transmutes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling rpc-perf v3.1.0-pre (/opt/rustwide/workdir/rpc-perf) [INFO] [stdout] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> rpc-perf/src/config/general.rs:17:24 [INFO] [stdout] | [INFO] [stdout] 17 | #[derive(Clone, Debug, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: 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: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [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: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> rpc-perf/src/config/general.rs:265:23 [INFO] [stdout] | [INFO] [stdout] 265 | #[derive(Copy, Clone, Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: 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: see for more information about checking conditional configuration [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: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> rpc-perf/src/config/general.rs:281:17 [INFO] [stdout] | [INFO] [stdout] 281 | #[derive(Clone, Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: 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: see for more information about checking conditional configuration [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: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> rpc-perf/src/config/mod.rs:36:24 [INFO] [stdout] | [INFO] [stdout] 36 | #[derive(Clone, Debug, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: 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: see for more information about checking conditional configuration [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: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> rpc-perf/src/config/mod.rs:75:23 [INFO] [stdout] | [INFO] [stdout] 75 | #[derive(Copy, Clone, Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: 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: see for more information about checking conditional configuration [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: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> rpc-perf/src/config/mod.rs:83:24 [INFO] [stdout] | [INFO] [stdout] 83 | #[derive(Clone, Debug, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: 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: see for more information about checking conditional configuration [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: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> rpc-perf/src/config/mod.rs:192:24 [INFO] [stdout] | [INFO] [stdout] 192 | #[derive(Clone, Debug, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: 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: see for more information about checking conditional configuration [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: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> rpc-perf/src/config/mod.rs:214:24 [INFO] [stdout] | [INFO] [stdout] 214 | #[derive(Clone, Debug, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: 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: see for more information about checking conditional configuration [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: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> rpc-perf/src/client/common.rs:39:16 [INFO] [stdout] | [INFO] [stdout] 39 | codec: Box, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 39 | codec: Box, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> rpc-perf/src/client/plain_client.rs:64:41 [INFO] [stdout] | [INFO] [stdout] 64 | fn session(&self, token: Token) -> &Session { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 64 | fn session(&self, token: Token) -> &dyn Session { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> rpc-perf/src/client/mod.rs:90:41 [INFO] [stdout] | [INFO] [stdout] 90 | fn session(&self, token: Token) -> &Session; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 90 | fn session(&self, token: Token) -> &dyn Session; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> rpc-perf/src/client/plain_client.rs:68:53 [INFO] [stdout] | [INFO] [stdout] 68 | fn session_mut(&mut self, token: Token) -> &mut Session { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 68 | fn session_mut(&mut self, token: Token) -> &mut dyn Session { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> rpc-perf/src/client/mod.rs:91:53 [INFO] [stdout] | [INFO] [stdout] 91 | fn session_mut(&mut self, token: Token) -> &mut Session; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 91 | fn session_mut(&mut self, token: Token) -> &mut dyn Session; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> rpc-perf/src/main.rs:153:38 [INFO] [stdout] | [INFO] [stdout] 153 | fn make_client(id: usize, codec: Box, _config: &Config) -> Box { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 153 | fn make_client(id: usize, codec: Box, _config: &Config) -> Box { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> rpc-perf/src/main.rs:153:71 [INFO] [stdout] | [INFO] [stdout] 153 | fn make_client(id: usize, codec: Box, _config: &Config) -> Box { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 153 | fn make_client(id: usize, codec: Box, _config: &Config) -> Box { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> rpc-perf/src/client/common.rs:51:38 [INFO] [stdout] | [INFO] [stdout] 51 | pub fn new(id: usize, codec: Box) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 51 | pub fn new(id: usize, codec: Box) -> Self { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> rpc-perf/src/client/plain_client.rs:36:38 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn new(id: usize, codec: Box) -> PlainClient { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 36 | pub fn new(id: usize, codec: Box) -> PlainClient { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> rpc-perf/src/main.rs:189:28 [INFO] [stdout] | [INFO] [stdout] 189 | let mut codec: Box = match config.protocol() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 189 | let mut codec: Box = match config.protocol() { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `hitrate` is never read [INFO] [stdout] --> rpc-perf/src/config/mod.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 85 | pub struct Keyspace { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 89 | hitrate: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Keyspace` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `tls_key`, `tls_cert`, and `tls_ca` are never read [INFO] [stdout] --> rpc-perf/src/config/general.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct General { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 38 | tls_key: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 39 | tls_cert: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 40 | tls_ca: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `General` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [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] --> rpc-perf/src/config/mod.rs:36:24 [INFO] [stdout] | [INFO] [stdout] 36 | #[derive(Clone, Debug, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Config` [INFO] [stdout] 37 | #[serde(deny_unknown_fields)] [INFO] [stdout] 38 | pub struct Config { [INFO] [stdout] | ------ `Config` is not local [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: `#[warn(non_local_definitions)]` on by default [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] --> rpc-perf/src/config/mod.rs:75:23 [INFO] [stdout] | [INFO] [stdout] 75 | #[derive(Copy, Clone, Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Action` [INFO] [stdout] ... [INFO] [stdout] 78 | pub enum Action { [INFO] [stdout] | ------ `Action` is not local [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 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] --> rpc-perf/src/config/mod.rs:83:24 [INFO] [stdout] | [INFO] [stdout] 83 | #[derive(Clone, Debug, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Keyspace` [INFO] [stdout] 84 | #[serde(deny_unknown_fields)] [INFO] [stdout] 85 | pub struct Keyspace { [INFO] [stdout] | -------- `Keyspace` is not local [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 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] --> rpc-perf/src/config/mod.rs:192:24 [INFO] [stdout] | [INFO] [stdout] 192 | #[derive(Clone, Debug, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Command` [INFO] [stdout] 193 | #[serde(deny_unknown_fields)] [INFO] [stdout] 194 | pub struct Command { [INFO] [stdout] | ------- `Command` is not local [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 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] --> rpc-perf/src/config/mod.rs:214:24 [INFO] [stdout] | [INFO] [stdout] 214 | #[derive(Clone, Debug, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Value` [INFO] [stdout] 215 | #[serde(deny_unknown_fields)] [INFO] [stdout] 216 | struct Value { [INFO] [stdout] | ----- `Value` is not local [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 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] --> rpc-perf/src/config/general.rs:17:24 [INFO] [stdout] | [INFO] [stdout] 17 | #[derive(Clone, Debug, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_General` [INFO] [stdout] 18 | #[serde(deny_unknown_fields)] [INFO] [stdout] 19 | pub struct General { [INFO] [stdout] | ------- `General` is not local [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 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] --> rpc-perf/src/config/general.rs:265:23 [INFO] [stdout] | [INFO] [stdout] 265 | #[derive(Copy, Clone, Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Protocol` [INFO] [stdout] ... [INFO] [stdout] 268 | pub enum Protocol { [INFO] [stdout] | -------- `Protocol` is not local [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 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] --> rpc-perf/src/config/general.rs:281:17 [INFO] [stdout] | [INFO] [stdout] 281 | #[derive(Clone, Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_LevelDef` [INFO] [stdout] ... [INFO] [stdout] 285 | enum LevelDef { [INFO] [stdout] | -------- `LevelDef` is not local [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 warning originates in the derive macro `Deserialize` (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 28.19s [INFO] running `Command { std: "docker" "inspect" "9ce98ea69df4e7c2c24200e2233951b1fad4c8788f4622f8a442deef61008ad5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9ce98ea69df4e7c2c24200e2233951b1fad4c8788f4622f8a442deef61008ad5", kill_on_drop: false }` [INFO] [stdout] 9ce98ea69df4e7c2c24200e2233951b1fad4c8788f4622f8a442deef61008ad5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+2440211fe03bc45c89b6dc1a3df18382ce91e32b" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2d41d36ba53a8b45a3721e7f6975f0c9f738c1cb0fc9ac29ef26c8f668a5217d [INFO] running `Command { std: "docker" "start" "-a" "2d41d36ba53a8b45a3721e7f6975f0c9f738c1cb0fc9ac29ef26c8f668a5217d", kill_on_drop: false }` [INFO] [stderr] warning: output filename collision. [INFO] [stderr] The example target `benchmarks` in package `metrics v0.4.0 (/opt/rustwide/workdir/metrics)` has the same output filename as the example target `benchmarks` in package `datastructures v0.4.0 (/opt/rustwide/workdir/datastructures)`. [INFO] [stderr] Colliding filename is: /opt/rustwide/target/debug/examples/benchmarks [INFO] [stderr] The targets should have unique names. [INFO] [stderr] Consider changing their names to be unique or compiling them separately. [INFO] [stderr] This may become a hard error in the future; see . [INFO] [stderr] warning: output filename collision. [INFO] [stderr] The example target `benchmarks` in package `metrics v0.4.0 (/opt/rustwide/workdir/metrics)` has the same output filename as the example target `benchmarks` in package `datastructures v0.4.0 (/opt/rustwide/workdir/datastructures)`. [INFO] [stderr] Colliding filename is: /opt/rustwide/target/debug/examples/benchmarks.dwp [INFO] [stderr] The targets should have unique names. [INFO] [stderr] Consider changing their names to be unique or compiling them separately. [INFO] [stderr] This may become a hard error in the future; see . [INFO] [stdout] warning: unused import: `self::atomic_i16::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:18:9 [INFO] [stdout] | [INFO] [stdout] 18 | pub use self::atomic_i16::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_i32::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | pub use self::atomic_i32::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_i64::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub use self::atomic_i64::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_i8::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 21 | pub use self::atomic_i8::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_isize::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | pub use self::atomic_isize::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_u16::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub use self::atomic_u16::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_u32::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | pub use self::atomic_u32::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_u64::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | pub use self::atomic_u64::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling memoffset v0.5.1 [INFO] [stdout] warning: unused import: `self::atomic_u8::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub use self::atomic_u8::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling crossbeam-utils v0.6.6 [INFO] [stdout] warning: unused import: `self::atomic_usize::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | pub use self::atomic_usize::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling ryu v1.0.0 [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicBool::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_bool.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicI16::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_i16.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicI32::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_i32.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicI64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_i64.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicI8::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_i8.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicIsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_isize.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicPtr::::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_ptr.rs:47:20 [INFO] [stdout] | [INFO] [stdout] 47 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU16::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_u16.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU32::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_u32.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_u64.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU8::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_u8.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_usize.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_usize.rs:166:12 [INFO] [stdout] | [INFO] [stdout] 166 | if let Ok(value) = usize::try_from(value) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling memchr v2.2.1 [INFO] [stderr] Compiling scopeguard v1.0.0 [INFO] [stderr] Compiling either v1.5.2 [INFO] [stderr] Compiling itoa v0.4.4 [INFO] [stderr] Compiling rayon-core v1.5.0 [INFO] [stderr] Compiling regex-automata v0.1.8 [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> datastructures/src/lib.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub use crate::heatmap::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ the name `Iter` in the type namespace is first re-exported here [INFO] [stdout] 15 | pub use crate::histogram::*; [INFO] [stdout] | ------------------- but the name `Iter` in the type namespace is also re-exported here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ambiguous_glob_reexports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling num_cpus v1.10.1 [INFO] [stdout] warning: unexpected `cfg` condition value: `waterfall` [INFO] [stdout] --> metrics/src/recorder.rs:150:11 [INFO] [stdout] | [INFO] [stdout] 150 | #[cfg(feature = "waterfall")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `waterfall` as a feature in `Cargo.toml` [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] [stderr] Compiling same-file v1.0.5 [INFO] [stderr] Compiling cast v0.2.2 [INFO] [stderr] Compiling rand_distr v0.2.1 [INFO] [stderr] Compiling rand_xoshiro v0.1.0 [INFO] [stderr] Compiling rpc-perf v3.1.0-pre (/opt/rustwide/workdir/rpc-perf) [INFO] [stderr] Compiling ratelimiter v0.3.1 (/opt/rustwide/workdir/ratelimiter) [INFO] [stdout] warning: unnecessary parentheses around index expression [INFO] [stdout] --> waterfall/src/lib.rs:282:43 [INFO] [stdout] | [INFO] [stdout] 282 | self.buffer[(sy + y)][(sx + x)] = other.buffer[sy][sx]; [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 282 - self.buffer[(sy + y)][(sx + x)] = other.buffer[sy][sx]; [INFO] [stdout] 282 + self.buffer[(sy + y)][sx + x] = other.buffer[sy][sx]; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around index expression [INFO] [stdout] --> waterfall/src/lib.rs:282:33 [INFO] [stdout] | [INFO] [stdout] 282 | self.buffer[(sy + y)][(sx + x)] = other.buffer[sy][sx]; [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 282 - self.buffer[(sy + y)][(sx + x)] = other.buffer[sy][sx]; [INFO] [stdout] 282 + self.buffer[sy + y][(sx + x)] = other.buffer[sy][sx]; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> codec/src/echo/mod.rs:56:43 [INFO] [stdout] | [INFO] [stdout] 56 | let crc_bytes: [u8; 4] = unsafe { transmute(crc_calc.to_be()) }; [INFO] [stdout] | ---------^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `u32::to_ne_bytes` [INFO] [stdout] | [INFO] [stdout] = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order [INFO] [stdout] = note: `#[warn(unnecessary_transmutes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling metrics v0.4.0 (/opt/rustwide/workdir/metrics) [INFO] [stdout] warning: unexpected `cfg` condition value: `waterfall` [INFO] [stdout] --> metrics/src/recorder.rs:150:11 [INFO] [stdout] | [INFO] [stdout] 150 | #[cfg(feature = "waterfall")] [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stdout] | [INFO] [stdout] = note: no expected values for `feature` [INFO] [stdout] = help: consider adding `waterfall` as a feature in `Cargo.toml` [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 value: `cargo-clippy` [INFO] [stdout] --> rpc-perf/src/config/general.rs:17:24 [INFO] [stdout] | [INFO] [stdout] 17 | #[derive(Clone, Debug, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: 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: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [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: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> rpc-perf/src/config/general.rs:265:23 [INFO] [stdout] | [INFO] [stdout] 265 | #[derive(Copy, Clone, Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: 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: see for more information about checking conditional configuration [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: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> rpc-perf/src/config/general.rs:281:17 [INFO] [stdout] | [INFO] [stdout] 281 | #[derive(Clone, Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: 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: see for more information about checking conditional configuration [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: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> rpc-perf/src/config/mod.rs:36:24 [INFO] [stdout] | [INFO] [stdout] 36 | #[derive(Clone, Debug, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: 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: see for more information about checking conditional configuration [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: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> rpc-perf/src/config/mod.rs:75:23 [INFO] [stdout] | [INFO] [stdout] 75 | #[derive(Copy, Clone, Deserialize, Debug)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: 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: see for more information about checking conditional configuration [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: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> rpc-perf/src/config/mod.rs:83:24 [INFO] [stdout] | [INFO] [stdout] 83 | #[derive(Clone, Debug, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: 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: see for more information about checking conditional configuration [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: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> rpc-perf/src/config/mod.rs:192:24 [INFO] [stdout] | [INFO] [stdout] 192 | #[derive(Clone, Debug, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: 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: see for more information about checking conditional configuration [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: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stdout] --> rpc-perf/src/config/mod.rs:214:24 [INFO] [stdout] | [INFO] [stdout] 214 | #[derive(Clone, Debug, Deserialize)] [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stdout] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stdout] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stdout] = help: 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: see for more information about checking conditional configuration [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] [stderr] Compiling itertools v0.8.0 [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> rpc-perf/src/client/common.rs:39:16 [INFO] [stdout] | [INFO] [stdout] 39 | codec: Box, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 39 | codec: Box, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling walkdir v2.2.9 [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> rpc-perf/src/client/plain_client.rs:64:41 [INFO] [stdout] | [INFO] [stdout] 64 | fn session(&self, token: Token) -> &Session { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 64 | fn session(&self, token: Token) -> &dyn Session { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> rpc-perf/src/client/mod.rs:90:41 [INFO] [stdout] | [INFO] [stdout] 90 | fn session(&self, token: Token) -> &Session; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 90 | fn session(&self, token: Token) -> &dyn Session; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling datastructures v0.4.0 (/opt/rustwide/workdir/datastructures) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> rpc-perf/src/client/plain_client.rs:68:53 [INFO] [stdout] | [INFO] [stdout] 68 | fn session_mut(&mut self, token: Token) -> &mut Session { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 68 | fn session_mut(&mut self, token: Token) -> &mut dyn Session { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> rpc-perf/src/client/mod.rs:91:53 [INFO] [stdout] | [INFO] [stdout] 91 | fn session_mut(&mut self, token: Token) -> &mut Session; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 91 | fn session_mut(&mut self, token: Token) -> &mut dyn Session; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: ambiguous glob re-exports [INFO] [stdout] --> datastructures/src/lib.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 14 | pub use crate::heatmap::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ the name `Iter` in the type namespace is first re-exported here [INFO] [stdout] 15 | pub use crate::histogram::*; [INFO] [stdout] | ------------------- but the name `Iter` in the type namespace is also re-exported here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(ambiguous_glob_reexports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling crossbeam-queue v0.1.2 [INFO] [stderr] Compiling crossbeam-epoch v0.7.2 [INFO] [stderr] Compiling serde_json v1.0.40 [INFO] [stderr] Compiling waterfall v0.4.0 (/opt/rustwide/workdir/waterfall) [INFO] [stderr] Compiling buffer v0.1.0 (/opt/rustwide/workdir/buffer) [INFO] [stderr] Compiling logger v0.1.0 (/opt/rustwide/workdir/logger) [INFO] [stdout] warning: unnecessary parentheses around index expression [INFO] [stdout] --> waterfall/src/lib.rs:282:43 [INFO] [stdout] | [INFO] [stdout] 282 | self.buffer[(sy + y)][(sx + x)] = other.buffer[sy][sx]; [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 282 - self.buffer[(sy + y)][(sx + x)] = other.buffer[sy][sx]; [INFO] [stdout] 282 + self.buffer[(sy + y)][sx + x] = other.buffer[sy][sx]; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around index expression [INFO] [stdout] --> waterfall/src/lib.rs:282:33 [INFO] [stdout] | [INFO] [stdout] 282 | self.buffer[(sy + y)][(sx + x)] = other.buffer[sy][sx]; [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 282 - self.buffer[(sy + y)][(sx + x)] = other.buffer[sy][sx]; [INFO] [stdout] 282 + self.buffer[sy + y][(sx + x)] = other.buffer[sy][sx]; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> rpc-perf/src/main.rs:153:38 [INFO] [stdout] | [INFO] [stdout] 153 | fn make_client(id: usize, codec: Box, _config: &Config) -> Box { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 153 | fn make_client(id: usize, codec: Box, _config: &Config) -> Box { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> rpc-perf/src/main.rs:153:71 [INFO] [stdout] | [INFO] [stdout] 153 | fn make_client(id: usize, codec: Box, _config: &Config) -> Box { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 153 | fn make_client(id: usize, codec: Box, _config: &Config) -> Box { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> rpc-perf/src/client/common.rs:51:38 [INFO] [stdout] | [INFO] [stdout] 51 | pub fn new(id: usize, codec: Box) -> Self { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 51 | pub fn new(id: usize, codec: Box) -> Self { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> rpc-perf/src/client/plain_client.rs:36:38 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn new(id: usize, codec: Box) -> PlainClient { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 36 | pub fn new(id: usize, codec: Box) -> PlainClient { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `.clone()` on a double reference, which returns `&[u8]` instead of cloning the inner type [INFO] [stdout] --> buffer/src/lib.rs:225:32 [INFO] [stdout] | [INFO] [stdout] 225 | let check = message.clone(); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling csv-core v0.1.6 [INFO] [stderr] Compiling bstr v0.2.6 [INFO] [stderr] Compiling timer v0.1.2 (/opt/rustwide/workdir/timer) [INFO] [stderr] Compiling atomics v0.2.0 (/opt/rustwide/workdir/atomics) [INFO] [stdout] warning: unused import: `self::atomic_i16::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:18:9 [INFO] [stdout] | [INFO] [stdout] 18 | pub use self::atomic_i16::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_i32::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:19:9 [INFO] [stdout] | [INFO] [stdout] 19 | pub use self::atomic_i32::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_i64::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub use self::atomic_i64::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_i8::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:21:9 [INFO] [stdout] | [INFO] [stdout] 21 | pub use self::atomic_i8::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_isize::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:22:9 [INFO] [stdout] | [INFO] [stdout] 22 | pub use self::atomic_isize::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_u16::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:23:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub use self::atomic_u16::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_u32::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 24 | pub use self::atomic_u32::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_u64::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | pub use self::atomic_u64::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_u8::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:26:9 [INFO] [stdout] | [INFO] [stdout] 26 | pub use self::atomic_u8::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::atomic_usize::*` [INFO] [stdout] --> atomics/src/atomic_counter/mod.rs:27:9 [INFO] [stdout] | [INFO] [stdout] 27 | pub use self::atomic_usize::*; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicBool::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_bool.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicI16::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_i16.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicI32::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_i32.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicI64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_i64.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicI8::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_i8.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicIsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_isize.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicPtr::::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_ptr.rs:47:20 [INFO] [stdout] | [INFO] [stdout] 47 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU16::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_u16.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU32::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_u32.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_u64.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicU8::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_u8.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_usize.rs:50:20 [INFO] [stdout] | [INFO] [stdout] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> rpc-perf/src/main.rs:189:28 [INFO] [stdout] | [INFO] [stdout] 189 | let mut codec: Box = match config.protocol() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 189 | let mut codec: Box = match config.protocol() { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: irrefutable `if let` pattern [INFO] [stdout] --> atomics/src/atomic_primitive/atomic_usize.rs:166:12 [INFO] [stdout] | [INFO] [stdout] 166 | if let Ok(value) = usize::try_from(value) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this pattern will always match, so the `if let` is useless [INFO] [stdout] = help: consider replacing the `if let` with a `let` [INFO] [stdout] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling crossbeam-deque v0.6.3 [INFO] [stderr] Compiling csv v1.1.1 [INFO] [stdout] warning: field `hitrate` is never read [INFO] [stdout] --> rpc-perf/src/config/mod.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 85 | pub struct Keyspace { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 89 | hitrate: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Keyspace` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `tls_key`, `tls_cert`, and `tls_ca` are never read [INFO] [stdout] --> rpc-perf/src/config/general.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct General { [INFO] [stdout] | ------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 38 | tls_key: Option, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] 39 | tls_cert: Option, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 40 | tls_ca: Option, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `General` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [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] --> rpc-perf/src/config/mod.rs:36:24 [INFO] [stdout] | [INFO] [stdout] 36 | #[derive(Clone, Debug, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Config` [INFO] [stdout] 37 | #[serde(deny_unknown_fields)] [INFO] [stdout] 38 | pub struct Config { [INFO] [stdout] | ------ `Config` is not local [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: `#[warn(non_local_definitions)]` on by default [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] --> rpc-perf/src/config/mod.rs:75:23 [INFO] [stdout] | [INFO] [stdout] 75 | #[derive(Copy, Clone, Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Action` [INFO] [stdout] ... [INFO] [stdout] 78 | pub enum Action { [INFO] [stdout] | ------ `Action` is not local [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 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] --> rpc-perf/src/config/mod.rs:83:24 [INFO] [stdout] | [INFO] [stdout] 83 | #[derive(Clone, Debug, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Keyspace` [INFO] [stdout] 84 | #[serde(deny_unknown_fields)] [INFO] [stdout] 85 | pub struct Keyspace { [INFO] [stdout] | -------- `Keyspace` is not local [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 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] --> rpc-perf/src/config/mod.rs:192:24 [INFO] [stdout] | [INFO] [stdout] 192 | #[derive(Clone, Debug, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Command` [INFO] [stdout] 193 | #[serde(deny_unknown_fields)] [INFO] [stdout] 194 | pub struct Command { [INFO] [stdout] | ------- `Command` is not local [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 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] --> rpc-perf/src/config/mod.rs:214:24 [INFO] [stdout] | [INFO] [stdout] 214 | #[derive(Clone, Debug, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Value` [INFO] [stdout] 215 | #[serde(deny_unknown_fields)] [INFO] [stdout] 216 | struct Value { [INFO] [stdout] | ----- `Value` is not local [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 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] --> rpc-perf/src/config/general.rs:17:24 [INFO] [stdout] | [INFO] [stdout] 17 | #[derive(Clone, Debug, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_General` [INFO] [stdout] 18 | #[serde(deny_unknown_fields)] [INFO] [stdout] 19 | pub struct General { [INFO] [stdout] | ------- `General` is not local [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 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] --> rpc-perf/src/config/general.rs:265:23 [INFO] [stdout] | [INFO] [stdout] 265 | #[derive(Copy, Clone, Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Protocol` [INFO] [stdout] ... [INFO] [stdout] 268 | pub enum Protocol { [INFO] [stdout] | -------- `Protocol` is not local [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 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] --> rpc-perf/src/config/general.rs:281:17 [INFO] [stdout] | [INFO] [stdout] 281 | #[derive(Clone, Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_LevelDef` [INFO] [stdout] ... [INFO] [stdout] 285 | enum LevelDef { [INFO] [stdout] | -------- `LevelDef` is not local [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 warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling criterion-plot v0.3.1 [INFO] [stderr] Compiling rayon v1.1.0 [INFO] [stderr] Compiling tinytemplate v1.0.2 [INFO] [stderr] Compiling criterion v0.2.11 [INFO] [stderr] Compiling codec v0.2.0 (/opt/rustwide/workdir/codec) [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> codec/src/echo/mod.rs:56:43 [INFO] [stdout] | [INFO] [stdout] 56 | let crc_bytes: [u8; 4] = unsafe { transmute(crc_calc.to_be()) }; [INFO] [stdout] | ---------^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `u32::to_ne_bytes` [INFO] [stdout] | [INFO] [stdout] = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order [INFO] [stdout] = note: `#[warn(unnecessary_transmutes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 14.32s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: criterion v0.2.11 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2` [INFO] running `Command { std: "docker" "inspect" "2d41d36ba53a8b45a3721e7f6975f0c9f738c1cb0fc9ac29ef26c8f668a5217d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2d41d36ba53a8b45a3721e7f6975f0c9f738c1cb0fc9ac29ef26c8f668a5217d", kill_on_drop: false }` [INFO] [stdout] 2d41d36ba53a8b45a3721e7f6975f0c9f738c1cb0fc9ac29ef26c8f668a5217d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+2440211fe03bc45c89b6dc1a3df18382ce91e32b" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] e49a7b25fdc12c44085da7b684aa6e33d781f796e4b1defbf4fdbe3d98e4ceee [INFO] running `Command { std: "docker" "start" "-a" "e49a7b25fdc12c44085da7b684aa6e33d781f796e4b1defbf4fdbe3d98e4ceee", kill_on_drop: false }` [INFO] [stderr] warning: output filename collision. [INFO] [stderr] The example target `benchmarks` in package `metrics v0.4.0 (/opt/rustwide/workdir/metrics)` has the same output filename as the example target `benchmarks` in package `datastructures v0.4.0 (/opt/rustwide/workdir/datastructures)`. [INFO] [stderr] Colliding filename is: /opt/rustwide/target/debug/examples/benchmarks [INFO] [stderr] The targets should have unique names. [INFO] [stderr] Consider changing their names to be unique or compiling them separately. [INFO] [stderr] This may become a hard error in the future; see . [INFO] [stderr] warning: output filename collision. [INFO] [stderr] The example target `benchmarks` in package `metrics v0.4.0 (/opt/rustwide/workdir/metrics)` has the same output filename as the example target `benchmarks` in package `datastructures v0.4.0 (/opt/rustwide/workdir/datastructures)`. [INFO] [stderr] Colliding filename is: /opt/rustwide/target/debug/examples/benchmarks.dwp [INFO] [stderr] The targets should have unique names. [INFO] [stderr] Consider changing their names to be unique or compiling them separately. [INFO] [stderr] This may become a hard error in the future; see . [INFO] [stderr] warning: unused import: `self::atomic_i16::*` [INFO] [stderr] --> atomics/src/atomic_counter/mod.rs:18:9 [INFO] [stderr] | [INFO] [stderr] 18 | pub use self::atomic_i16::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::atomic_i32::*` [INFO] [stderr] --> atomics/src/atomic_counter/mod.rs:19:9 [INFO] [stderr] | [INFO] [stderr] 19 | pub use self::atomic_i32::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::atomic_i64::*` [INFO] [stderr] --> atomics/src/atomic_counter/mod.rs:20:9 [INFO] [stderr] | [INFO] [stderr] 20 | pub use self::atomic_i64::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::atomic_i8::*` [INFO] [stderr] --> atomics/src/atomic_counter/mod.rs:21:9 [INFO] [stderr] | [INFO] [stderr] 21 | pub use self::atomic_i8::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::atomic_isize::*` [INFO] [stderr] --> atomics/src/atomic_counter/mod.rs:22:9 [INFO] [stderr] | [INFO] [stderr] 22 | pub use self::atomic_isize::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::atomic_u16::*` [INFO] [stderr] --> atomics/src/atomic_counter/mod.rs:23:9 [INFO] [stderr] | [INFO] [stderr] 23 | pub use self::atomic_u16::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::atomic_u32::*` [INFO] [stderr] --> atomics/src/atomic_counter/mod.rs:24:9 [INFO] [stderr] | [INFO] [stderr] 24 | pub use self::atomic_u32::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::atomic_u64::*` [INFO] [stderr] --> atomics/src/atomic_counter/mod.rs:25:9 [INFO] [stderr] | [INFO] [stderr] 25 | pub use self::atomic_u64::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::atomic_u8::*` [INFO] [stderr] --> atomics/src/atomic_counter/mod.rs:26:9 [INFO] [stderr] | [INFO] [stderr] 26 | pub use self::atomic_u8::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::atomic_usize::*` [INFO] [stderr] --> atomics/src/atomic_counter/mod.rs:27:9 [INFO] [stderr] | [INFO] [stderr] 27 | pub use self::atomic_usize::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::sync::atomic::AtomicBool::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stderr] --> atomics/src/atomic_primitive/atomic_bool.rs:50:20 [INFO] [stderr] | [INFO] [stderr] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::sync::atomic::AtomicI16::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stderr] --> atomics/src/atomic_primitive/atomic_i16.rs:50:20 [INFO] [stderr] | [INFO] [stderr] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::sync::atomic::AtomicI32::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stderr] --> atomics/src/atomic_primitive/atomic_i32.rs:50:20 [INFO] [stderr] | [INFO] [stderr] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::sync::atomic::AtomicI64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stderr] --> atomics/src/atomic_primitive/atomic_i64.rs:50:20 [INFO] [stderr] | [INFO] [stderr] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::sync::atomic::AtomicI8::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stderr] --> atomics/src/atomic_primitive/atomic_i8.rs:50:20 [INFO] [stderr] | [INFO] [stderr] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::sync::atomic::AtomicIsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stderr] --> atomics/src/atomic_primitive/atomic_isize.rs:50:20 [INFO] [stderr] | [INFO] [stderr] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::sync::atomic::AtomicPtr::::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stderr] --> atomics/src/atomic_primitive/atomic_ptr.rs:47:20 [INFO] [stderr] | [INFO] [stderr] 47 | self.inner.compare_and_swap(current, new, order) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::sync::atomic::AtomicU16::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stderr] --> atomics/src/atomic_primitive/atomic_u16.rs:50:20 [INFO] [stderr] | [INFO] [stderr] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::sync::atomic::AtomicU32::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stderr] --> atomics/src/atomic_primitive/atomic_u32.rs:50:20 [INFO] [stderr] | [INFO] [stderr] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::sync::atomic::AtomicU64::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stderr] --> atomics/src/atomic_primitive/atomic_u64.rs:50:20 [INFO] [stderr] | [INFO] [stderr] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::sync::atomic::AtomicU8::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stderr] --> atomics/src/atomic_primitive/atomic_u8.rs:50:20 [INFO] [stderr] | [INFO] [stderr] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `std::sync::atomic::AtomicUsize::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stderr] --> atomics/src/atomic_primitive/atomic_usize.rs:50:20 [INFO] [stderr] | [INFO] [stderr] 50 | self.inner.compare_and_swap(current, new, order) [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: irrefutable `if let` pattern [INFO] [stderr] --> atomics/src/atomic_primitive/atomic_usize.rs:166:12 [INFO] [stderr] | [INFO] [stderr] 166 | if let Ok(value) = usize::try_from(value) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this pattern will always match, so the `if let` is useless [INFO] [stderr] = help: consider replacing the `if let` with a `let` [INFO] [stderr] = note: `#[warn(irrefutable_let_patterns)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `atomics` (lib) generated 23 warnings (run `cargo fix --lib -p atomics` to apply 10 suggestions) [INFO] [stderr] warning: ambiguous glob re-exports [INFO] [stderr] --> datastructures/src/lib.rs:14:9 [INFO] [stderr] | [INFO] [stderr] 14 | pub use crate::heatmap::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ the name `Iter` in the type namespace is first re-exported here [INFO] [stderr] 15 | pub use crate::histogram::*; [INFO] [stderr] | ------------------- but the name `Iter` in the type namespace is also re-exported here [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(ambiguous_glob_reexports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `datastructures` (lib) generated 1 warning [INFO] [stderr] warning: unexpected `cfg` condition value: `waterfall` [INFO] [stderr] --> metrics/src/recorder.rs:150:11 [INFO] [stderr] | [INFO] [stderr] 150 | #[cfg(feature = "waterfall")] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ help: remove the condition [INFO] [stderr] | [INFO] [stderr] = note: no expected values for `feature` [INFO] [stderr] = help: consider adding `waterfall` as a feature in `Cargo.toml` [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: unnecessary parentheses around index expression [INFO] [stderr] --> waterfall/src/lib.rs:282:43 [INFO] [stderr] | [INFO] [stderr] 282 | self.buffer[(sy + y)][(sx + x)] = other.buffer[sy][sx]; [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 282 - self.buffer[(sy + y)][(sx + x)] = other.buffer[sy][sx]; [INFO] [stderr] 282 + self.buffer[(sy + y)][sx + x] = other.buffer[sy][sx]; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around index expression [INFO] [stderr] --> waterfall/src/lib.rs:282:33 [INFO] [stderr] | [INFO] [stderr] 282 | self.buffer[(sy + y)][(sx + x)] = other.buffer[sy][sx]; [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 282 - self.buffer[(sy + y)][(sx + x)] = other.buffer[sy][sx]; [INFO] [stderr] 282 + self.buffer[sy + y][(sx + x)] = other.buffer[sy][sx]; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `metrics` (lib) generated 1 warning [INFO] [stderr] warning: `waterfall` (lib) generated 2 warnings (run `cargo fix --lib -p waterfall` to apply 2 suggestions) [INFO] [stderr] warning: unnecessary transmute [INFO] [stderr] --> codec/src/echo/mod.rs:56:43 [INFO] [stderr] | [INFO] [stderr] 56 | let crc_bytes: [u8; 4] = unsafe { transmute(crc_calc.to_be()) }; [INFO] [stderr] | ---------^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: replace this with: `u32::to_ne_bytes` [INFO] [stderr] | [INFO] [stderr] = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order [INFO] [stderr] = note: `#[warn(unnecessary_transmutes)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `codec` (lib) generated 1 warning (run `cargo fix --lib -p codec` to apply 1 suggestion) [INFO] [stderr] warning: `waterfall` (lib test) generated 2 warnings (2 duplicates) [INFO] [stderr] warning: using `.clone()` on a double reference, which returns `&[u8]` instead of cloning the inner type [INFO] [stderr] --> buffer/src/lib.rs:225:32 [INFO] [stderr] | [INFO] [stderr] 225 | let check = message.clone(); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(suspicious_double_ref_op)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `metrics` (lib test) generated 1 warning (1 duplicate) [INFO] [stderr] warning: `datastructures` (lib test) generated 1 warning (1 duplicate) [INFO] [stderr] warning: `buffer` (lib test) generated 1 warning [INFO] [stderr] warning: `atomics` (lib test) generated 23 warnings (23 duplicates) [INFO] [stderr] warning: `codec` (lib test) generated 1 warning (1 duplicate) [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> rpc-perf/src/config/general.rs:17:24 [INFO] [stderr] | [INFO] [stderr] 17 | #[derive(Clone, Debug, Deserialize)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stderr] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> rpc-perf/src/config/general.rs:265:23 [INFO] [stderr] | [INFO] [stderr] 265 | #[derive(Copy, Clone, Deserialize, Debug)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stderr] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> rpc-perf/src/config/general.rs:281:17 [INFO] [stderr] | [INFO] [stderr] 281 | #[derive(Clone, Deserialize, Debug)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stderr] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> rpc-perf/src/config/mod.rs:36:24 [INFO] [stderr] | [INFO] [stderr] 36 | #[derive(Clone, Debug, Deserialize)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stderr] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> rpc-perf/src/config/mod.rs:75:23 [INFO] [stderr] | [INFO] [stderr] 75 | #[derive(Copy, Clone, Deserialize, Debug)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stderr] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> rpc-perf/src/config/mod.rs:83:24 [INFO] [stderr] | [INFO] [stderr] 83 | #[derive(Clone, Debug, Deserialize)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stderr] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> rpc-perf/src/config/mod.rs:192:24 [INFO] [stderr] | [INFO] [stderr] 192 | #[derive(Clone, Debug, Deserialize)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stderr] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition value: `cargo-clippy` [INFO] [stderr] --> rpc-perf/src/config/mod.rs:214:24 [INFO] [stderr] | [INFO] [stderr] 214 | #[derive(Clone, Debug, Deserialize)] [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: expected values for `feature` are: `default`, `rustls`, `tls`, and `webpki` [INFO] [stderr] = note: using a cfg inside a derive macro will use the cfgs from the destination crate and not the ones from the defining crate [INFO] [stderr] = help: try referring to `Deserialize` crate for guidance on how handle this unexpected cfg [INFO] [stderr] = help: 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] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> rpc-perf/src/client/common.rs:39:16 [INFO] [stderr] | [INFO] [stderr] 39 | codec: Box, [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 39 | codec: Box, [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> rpc-perf/src/client/plain_client.rs:64:41 [INFO] [stderr] | [INFO] [stderr] 64 | fn session(&self, token: Token) -> &Session { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 64 | fn session(&self, token: Token) -> &dyn Session { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> rpc-perf/src/client/mod.rs:90:41 [INFO] [stderr] | [INFO] [stderr] 90 | fn session(&self, token: Token) -> &Session; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 90 | fn session(&self, token: Token) -> &dyn Session; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> rpc-perf/src/client/plain_client.rs:68:53 [INFO] [stderr] | [INFO] [stderr] 68 | fn session_mut(&mut self, token: Token) -> &mut Session { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 68 | fn session_mut(&mut self, token: Token) -> &mut dyn Session { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> rpc-perf/src/client/mod.rs:91:53 [INFO] [stderr] | [INFO] [stderr] 91 | fn session_mut(&mut self, token: Token) -> &mut Session; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 91 | fn session_mut(&mut self, token: Token) -> &mut dyn Session; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> rpc-perf/src/main.rs:153:38 [INFO] [stderr] | [INFO] [stderr] 153 | fn make_client(id: usize, codec: Box, _config: &Config) -> Box { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 153 | fn make_client(id: usize, codec: Box, _config: &Config) -> Box { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> rpc-perf/src/main.rs:153:71 [INFO] [stderr] | [INFO] [stderr] 153 | fn make_client(id: usize, codec: Box, _config: &Config) -> Box { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 153 | fn make_client(id: usize, codec: Box, _config: &Config) -> Box { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> rpc-perf/src/client/common.rs:51:38 [INFO] [stderr] | [INFO] [stderr] 51 | pub fn new(id: usize, codec: Box) -> Self { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 51 | pub fn new(id: usize, codec: Box) -> Self { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> rpc-perf/src/client/plain_client.rs:36:38 [INFO] [stderr] | [INFO] [stderr] 36 | pub fn new(id: usize, codec: Box) -> PlainClient { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 36 | pub fn new(id: usize, codec: Box) -> PlainClient { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stderr] --> rpc-perf/src/main.rs:189:28 [INFO] [stderr] | [INFO] [stderr] 189 | let mut codec: Box = match config.protocol() { [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stderr] = note: for more information, see [INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn` [INFO] [stderr] | [INFO] [stderr] 189 | let mut codec: Box = match config.protocol() { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: field `hitrate` is never read [INFO] [stderr] --> rpc-perf/src/config/mod.rs:89:5 [INFO] [stderr] | [INFO] [stderr] 85 | pub struct Keyspace { [INFO] [stderr] | -------- field in this struct [INFO] [stderr] ... [INFO] [stderr] 89 | hitrate: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `Keyspace` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: fields `tls_key`, `tls_cert`, and `tls_ca` are never read [INFO] [stderr] --> rpc-perf/src/config/general.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 19 | pub struct General { [INFO] [stderr] | ------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 38 | tls_key: Option, [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] 39 | tls_cert: Option, [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] 40 | tls_ca: Option, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `General` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> rpc-perf/src/config/mod.rs:36:24 [INFO] [stderr] | [INFO] [stderr] 36 | #[derive(Clone, Debug, Deserialize)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Config` [INFO] [stderr] 37 | #[serde(deny_unknown_fields)] [INFO] [stderr] 38 | pub struct Config { [INFO] [stderr] | ------ `Config` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [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 `Deserialize` (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] --> rpc-perf/src/config/mod.rs:75:23 [INFO] [stderr] | [INFO] [stderr] 75 | #[derive(Copy, Clone, Deserialize, Debug)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Action` [INFO] [stderr] ... [INFO] [stderr] 78 | pub enum Action { [INFO] [stderr] | ------ `Action` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [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 `Deserialize` (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] --> rpc-perf/src/config/mod.rs:83:24 [INFO] [stderr] | [INFO] [stderr] 83 | #[derive(Clone, Debug, Deserialize)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Keyspace` [INFO] [stderr] 84 | #[serde(deny_unknown_fields)] [INFO] [stderr] 85 | pub struct Keyspace { [INFO] [stderr] | -------- `Keyspace` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [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 `Deserialize` (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] --> rpc-perf/src/config/mod.rs:192:24 [INFO] [stderr] | [INFO] [stderr] 192 | #[derive(Clone, Debug, Deserialize)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Command` [INFO] [stderr] 193 | #[serde(deny_unknown_fields)] [INFO] [stderr] 194 | pub struct Command { [INFO] [stderr] | ------- `Command` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [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 `Deserialize` (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] --> rpc-perf/src/config/mod.rs:214:24 [INFO] [stderr] | [INFO] [stderr] 214 | #[derive(Clone, Debug, Deserialize)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Value` [INFO] [stderr] 215 | #[serde(deny_unknown_fields)] [INFO] [stderr] 216 | struct Value { [INFO] [stderr] | ----- `Value` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [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 `Deserialize` (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] --> rpc-perf/src/config/general.rs:17:24 [INFO] [stderr] | [INFO] [stderr] 17 | #[derive(Clone, Debug, Deserialize)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_General` [INFO] [stderr] 18 | #[serde(deny_unknown_fields)] [INFO] [stderr] 19 | pub struct General { [INFO] [stderr] | ------- `General` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [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 `Deserialize` (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] --> rpc-perf/src/config/general.rs:265:23 [INFO] [stderr] | [INFO] [stderr] 265 | #[derive(Copy, Clone, Deserialize, Debug)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | `Deserialize` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Protocol` [INFO] [stderr] ... [INFO] [stderr] 268 | pub enum Protocol { [INFO] [stderr] | -------- `Protocol` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [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 `Deserialize` (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] --> rpc-perf/src/config/general.rs:281:17 [INFO] [stderr] | [INFO] [stderr] 281 | #[derive(Clone, Deserialize, Debug)] [INFO] [stderr] | ^---------- [INFO] [stderr] | | [INFO] [stderr] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_LevelDef` [INFO] [stderr] ... [INFO] [stderr] 285 | enum LevelDef { [INFO] [stderr] | -------- `LevelDef` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = 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] [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 `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: `rpc-perf` (bin "rpc-perf" test) generated 28 warnings (run `cargo fix --bin "rpc-perf" --tests` to apply 10 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.31s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: criterion v0.2.11 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 2` [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/atomics-8bcb54d1c19d2873) [INFO] [stdout] [INFO] [stdout] running 61 tests [INFO] [stdout] test atomic_primitive::atomic_i16::tests::compare_and_swap ... ok [INFO] [stdout] test atomic_primitive::atomic_i16::tests::compare_exchange ... ok [INFO] [stdout] test atomic_primitive::atomic_i16::tests::load ... ok [INFO] [stdout] test atomic_primitive::atomic_i16::tests::swap ... ok [INFO] [stdout] test atomic_primitive::atomic_i32::tests::compare_and_swap ... ok [INFO] [stdout] test atomic_primitive::atomic_i64::tests::compare_and_swap ... ok [INFO] [stdout] test atomic_primitive::atomic_i32::tests::swap ... ok [INFO] [stdout] test atomic_primitive::atomic_i32::tests::store ... ok [INFO] [stdout] test atomic_primitive::atomic_i32::tests::load ... ok [INFO] [stdout] test atomic_primitive::atomic_i32::tests::compare_exchange_weak ... ok [INFO] [stdout] test atomic_primitive::atomic_i16::tests::store ... ok [INFO] [stdout] test atomic_primitive::atomic_i32::tests::compare_exchange ... ok [INFO] [stdout] test atomic_primitive::atomic_i16::tests::compare_exchange_weak ... ok [INFO] [stdout] test atomic_primitive::atomic_i64::tests::compare_exchange ... ok [INFO] [stdout] test atomic_primitive::atomic_i64::tests::load ... ok [INFO] [stdout] test atomic_primitive::atomic_i64::tests::compare_exchange_weak ... ok [INFO] [stdout] test atomic_primitive::atomic_i64::tests::store ... ok [INFO] [stdout] test atomic_primitive::atomic_i8::tests::compare_and_swap ... ok [INFO] [stdout] test atomic_primitive::atomic_i8::tests::compare_exchange_weak ... ok [INFO] [stdout] test atomic_primitive::atomic_i8::tests::load ... ok [INFO] [stdout] test atomic_primitive::atomic_i8::tests::store ... ok [INFO] [stdout] test atomic_primitive::atomic_isize::tests::compare_exchange_weak ... ok [INFO] [stdout] test atomic_primitive::atomic_isize::tests::load ... ok [INFO] [stdout] test atomic_primitive::atomic_isize::tests::store ... ok [INFO] [stdout] test atomic_primitive::atomic_isize::tests::swap ... ok [INFO] [stdout] test atomic_primitive::atomic_u16::tests::compare_exchange ... ok [INFO] [stdout] test atomic_primitive::atomic_u16::tests::compare_exchange_weak ... ok [INFO] [stdout] test atomic_primitive::atomic_u16::tests::load ... ok [INFO] [stdout] test atomic_primitive::atomic_u16::tests::store ... ok [INFO] [stdout] test atomic_primitive::atomic_u16::tests::swap ... ok [INFO] [stdout] test atomic_primitive::atomic_u32::tests::compare_and_swap ... ok [INFO] [stdout] test atomic_primitive::atomic_u32::tests::compare_exchange ... ok [INFO] [stdout] test atomic_primitive::atomic_u32::tests::compare_exchange_weak ... ok [INFO] [stdout] test atomic_primitive::atomic_u32::tests::load ... ok [INFO] [stdout] test atomic_primitive::atomic_u32::tests::store ... ok [INFO] [stdout] test atomic_primitive::atomic_u32::tests::swap ... ok [INFO] [stdout] test atomic_primitive::atomic_u64::tests::compare_and_swap ... ok [INFO] [stdout] test atomic_primitive::atomic_u64::tests::compare_exchange ... ok [INFO] [stdout] test atomic_primitive::atomic_u64::tests::compare_exchange_weak ... ok [INFO] [stdout] test atomic_primitive::atomic_u64::tests::store ... ok [INFO] [stdout] test atomic_primitive::atomic_u64::tests::load ... ok [INFO] [stdout] test atomic_primitive::atomic_u64::tests::swap ... ok [INFO] [stdout] test atomic_primitive::atomic_u8::tests::compare_exchange ... ok [INFO] [stdout] test atomic_primitive::atomic_u8::tests::load ... ok [INFO] [stdout] test atomic_primitive::atomic_u8::tests::swap ... ok [INFO] [stdout] test atomic_primitive::atomic_usize::tests::compare_exchange ... ok [INFO] [stdout] test atomic_primitive::atomic_u8::tests::store ... ok [INFO] [stdout] test atomic_primitive::atomic_usize::tests::compare_and_swap ... ok [INFO] [stdout] test atomic_primitive::atomic_i8::tests::swap ... ok [INFO] [stdout] test atomic_primitive::atomic_usize::tests::compare_exchange_weak ... ok [INFO] [stdout] test atomic_primitive::atomic_usize::tests::load ... ok [INFO] [stdout] test atomic_primitive::atomic_i64::tests::swap ... ok [INFO] [stdout] test atomic_primitive::atomic_i8::tests::compare_exchange ... ok [INFO] [stdout] test atomic_primitive::atomic_isize::tests::compare_exchange ... ok [INFO] [stdout] test atomic_primitive::atomic_u16::tests::compare_and_swap ... ok [INFO] [stdout] test atomic_primitive::atomic_isize::tests::compare_and_swap ... ok [INFO] [stdout] test atomic_primitive::atomic_usize::tests::swap ... ok [INFO] [stdout] test atomic_primitive::atomic_usize::tests::store ... ok [INFO] [stdout] test atomic_primitive::atomic_u8::tests::compare_and_swap ... ok [INFO] [stdout] test atomic_primitive::atomic_u8::tests::compare_exchange_weak ... ok [INFO] [stdout] test tests::usize ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 61 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/buffer-5654b48342109ca4) [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test test::partial_read ... ok [INFO] [stdout] test test::read_from_and_read ... ok [INFO] [stdout] test test::read_from_multiple ... ok [INFO] [stdout] test test::write_and_write_to ... ok [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/codec-71dfa646f3492a7e) [INFO] [stdout] test test::write_to_multiple ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 43 tests [INFO] [stdout] test echo::tests::decode_checksum_mismatch ... ok [INFO] [stdout] test echo::tests::decode_incomplete ... ok [INFO] [stdout] test echo::tests::encode_echo ... ok [INFO] [stdout] test memcache::tests::decode_error ... ok [INFO] [stdout] test memcache::tests::decode_client_error ... ok [INFO] [stdout] test memcache::tests::decode_hit ... ok [INFO] [stdout] test memcache::tests::decode_incomplete ... ok [INFO] [stdout] test memcache::tests::decode_miss ... ok [INFO] [stdout] test echo::tests::decode_ok ... ok [INFO] [stdout] test memcache::tests::decode_server_error ... ok [INFO] [stdout] test memcache::tests::decode_version ... ok [INFO] [stdout] test memcache::tests::decode_unknown ... ok [INFO] [stdout] test pelikan_rds::tests::encode_sarray_get ... ok [INFO] [stdout] test pelikan_rds::tests::decode_unknown ... ok [INFO] [stdout] test memcache::tests::encode_get ... ok [INFO] [stdout] test memcache::tests::encode_set ... ok [INFO] [stdout] test pelikan_rds::tests::encode_without_ttl ... ok [INFO] [stdout] test pelikan_rds::tests::encode_sarray_truncate ... ok [INFO] [stdout] test pelikan_rds::tests::encode_sarray_create ... ok [INFO] [stdout] test pelikan_rds::tests::decode_error ... ok [INFO] [stdout] test pelikan_rds::tests::encode_sarray_insert ... ok [INFO] [stdout] test ping::tests::decode_incomplete ... ok [INFO] [stdout] test pelikan_rds::tests::encode_ttl ... ok [INFO] [stdout] test pelikan_rds::tests::encode_sarray_remove ... ok [INFO] [stdout] test ping::tests::decode_ok ... ok [INFO] [stdout] test redis::tests::decode_hit ... ok [INFO] [stdout] test redis::tests::decode_ok ... ok [INFO] [stdout] test pelikan_rds::tests::decode_miss ... ok [INFO] [stdout] test redis::tests::encode_inline_without_ttl ... ok [INFO] [stdout] test redis::tests::decode_error ... ok [INFO] [stdout] test redis::tests::decode_unknown ... ok [INFO] [stdout] test redis::tests::encode_resp_without_ttl ... ok [INFO] [stdout] test memcache::tests::decode_ok ... ok [INFO] [stdout] test pelikan_rds::tests::decode_incomplete ... ok [INFO] [stdout] test ping::tests::encode_ping ... ok [INFO] [stdout] test pelikan_rds::tests::decode_ok ... ok [INFO] [stdout] test ping::tests::decode_unknown ... ok [INFO] [stdout] test pelikan_rds::tests::encode_sarray_delete ... ok [INFO] [stdout] test redis::tests::decode_incomplete ... ok [INFO] [stdout] test redis::tests::encode_ttl_inline ... ok [INFO] [stdout] test redis::tests::encode_ttl_resp ... ok [INFO] [stdout] test redis::tests::decode_miss ... ok [INFO] [stdout] test pelikan_rds::tests::decode_hit ... ok [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/datastructures-e95a15cf06767de8) [INFO] [stdout] [INFO] [stdout] test result: ok. 43 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 22 tests [INFO] [stdout] test buffer::tests::blocking ... ok [INFO] [stdout] test buffer::tests::basic ... ok [INFO] [stdout] test buffer::tests::chasing ... ok [INFO] [stdout] test buffer::tests::wrapping ... ok [INFO] [stdout] test counter::tests::compare_and_swap ... ok [INFO] [stdout] test counter::tests::add ... ok [INFO] [stdout] test counter::tests::fetch_add ... ok [INFO] [stdout] test counter::tests::fetch_sub ... ok [INFO] [stdout] test counter::tests::new ... ok [INFO] [stdout] test counter::tests::saturating_add ... ok [INFO] [stdout] test counter::tests::saturating_sub ... ok [INFO] [stdout] test counter::tests::store ... ok [INFO] [stdout] test counter::tests::sizes ... ok [INFO] [stdout] test counter::tests::sub ... ok [INFO] [stdout] test histogram::tests::basic_latched ... ok [INFO] [stdout] test histogram::tests::basic_moving_capacity ... ok [INFO] [stdout] test histogram::tests::size ... ok [INFO] [stdout] test heatmap::tests::out_of_bounds ... ok [INFO] [stdout] test histogram::tests::basic_moving ... ok [INFO] [stdout] test histogram::tests::basic_capacity ... ok [INFO] [stdout] test heatmap::tests::threaded_access ... ok [INFO] [stdout] test heatmap::tests::age_out ... ok [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/logger-e3cdd19546cb2a7e) [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/metrics-64473c4ffc83caaa) [INFO] [stdout] test result: ok. 22 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 5.01s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/ratelimiter-eb57834c97de20e5) [INFO] [stdout] [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/rpc_perf-a89ad5a889a9c332) [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/timer-d89e38254e8ce391) [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 6 tests [INFO] [stdout] test tests::counter_channel ... ok [INFO] [stdout] test tests::distribution_channel ... ok [INFO] [stdout] test tests::counter_data ... ok [INFO] [stdout] test tests::counter_wraparound ... ok [INFO] [stdout] test tests::gauge_channel ... ok [INFO] [stdout] test tests::time_interval_channel ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [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 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 6 tests [INFO] [stdout] test tests::cancel ... ok [INFO] [stdout] test tests::add ... ok [INFO] [stdout] test tests::new ... ok [INFO] [stdout] test tests::next_timeout ... ok [INFO] [stdout] test tests::tick ... ok [INFO] [stdout] test tests::wrap ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/waterfall-c72f366cc4298020) [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] [stderr] Doc-tests atomics [INFO] [stderr] Doc-tests buffer [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 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] [stderr] Doc-tests codec [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] [stderr] Doc-tests datastructures [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] [stderr] Doc-tests logger [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] [stderr] Doc-tests metrics [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] [stderr] Doc-tests ratelimiter [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] [stderr] Doc-tests timer [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] [stderr] Doc-tests waterfall [INFO] [stderr] warning: unnecessary parentheses around index expression [INFO] [stderr] --> waterfall/src/lib.rs:282:43 [INFO] [stderr] | [INFO] [stderr] 282 | self.buffer[(sy + y)][(sx + x)] = other.buffer[sy][sx]; [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 282 - self.buffer[(sy + y)][(sx + x)] = other.buffer[sy][sx]; [INFO] [stderr] 282 + self.buffer[(sy + y)][sx + x] = other.buffer[sy][sx]; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around index expression [INFO] [stderr] --> waterfall/src/lib.rs:282:33 [INFO] [stderr] | [INFO] [stderr] 282 | self.buffer[(sy + y)][(sx + x)] = other.buffer[sy][sx]; [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 282 - self.buffer[(sy + y)][(sx + x)] = other.buffer[sy][sx]; [INFO] [stderr] 282 + self.buffer[sy + y][(sx + x)] = other.buffer[sy][sx]; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: 2 warnings emitted [INFO] [stderr] [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" "e49a7b25fdc12c44085da7b684aa6e33d781f796e4b1defbf4fdbe3d98e4ceee", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e49a7b25fdc12c44085da7b684aa6e33d781f796e4b1defbf4fdbe3d98e4ceee", kill_on_drop: false }` [INFO] [stdout] e49a7b25fdc12c44085da7b684aa6e33d781f796e4b1defbf4fdbe3d98e4ceee