[INFO] cloning repository https://github.com/bnewbold/geniza [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/bnewbold/geniza" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbnewbold%2Fgeniza", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbnewbold%2Fgeniza'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 58bb8ba7e9f87e533efd3940c9fbc30815f93a55 [INFO] checking bnewbold/geniza against master#b359ccf1b0b7b2d2c1c4932344b806e68bd053a9 for pr-105483 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbnewbold%2Fgeniza" "/workspace/builds/worker-4/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/bnewbold/geniza on toolchain b359ccf1b0b7b2d2c1c4932344b806e68bd053a9 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+b359ccf1b0b7b2d2c1c4932344b806e68bd053a9" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/bnewbold/geniza [INFO] finished tweaking git repo https://github.com/bnewbold/geniza [INFO] tweaked toml for git repo https://github.com/bnewbold/geniza written to /workspace/builds/worker-4/source/Cargo.toml [INFO] crate git repo https://github.com/bnewbold/geniza already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+b359ccf1b0b7b2d2c1c4932344b806e68bd053a9" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded tempdir v0.3.7 [INFO] [stderr] Downloaded serde v1.0.144 [INFO] [stderr] Downloaded syn v1.0.99 [INFO] [stderr] Downloaded libsodium-sys v0.0.16 [INFO] [stderr] Downloaded serde_derive v1.0.144 [INFO] [stderr] Downloaded pkg-config v0.3.25 [INFO] [stderr] Downloaded integer-encoding v1.1.7 [INFO] [stderr] Downloaded unicode-normalization v0.1.21 [INFO] [stderr] Downloaded itoa v1.0.3 [INFO] [stderr] Downloaded colored v1.9.3 [INFO] [stderr] Downloaded redox_syscall v0.2.16 [INFO] [stderr] Downloaded protobuf v1.7.5 [INFO] [stderr] Downloaded error-chain v0.12.4 [INFO] [stderr] Downloaded proc-macro2 v1.0.43 [INFO] [stderr] Downloaded bit-vec v0.4.4 [INFO] [stderr] Downloaded camino v1.1.1 [INFO] [stderr] Downloaded cargo-platform v0.1.2 [INFO] [stderr] Downloaded chan v0.1.23 [INFO] [stderr] Downloaded error-chain v0.11.0 [INFO] [stderr] Downloaded bytecount v0.6.3 [INFO] [stderr] Downloaded serde_json v1.0.85 [INFO] [stderr] Downloaded difference v1.0.0 [INFO] [stderr] Downloaded environment v0.1.1 [INFO] [stderr] Downloaded chan-signal v0.3.3 [INFO] [stderr] Downloaded regex-syntax v0.3.9 [INFO] [stderr] Downloaded regex v0.1.80 [INFO] [stderr] Downloaded rustc-serialize v0.3.24 [INFO] [stderr] Downloaded semver v1.0.13 [INFO] [stderr] Downloaded gimli v0.26.2 [INFO] [stderr] Downloaded object v0.29.0 [INFO] [stderr] Downloaded rust-crypto v0.2.36 [INFO] [stderr] Downloaded bit_field v0.9.0 [INFO] [stderr] Downloaded unicode-ident v1.0.3 [INFO] [stderr] Downloaded sodiumoxide v0.0.16 [INFO] [stderr] Downloaded miniz_oxide v0.5.4 [INFO] [stderr] Downloaded backtrace v0.3.66 [INFO] [stderr] Downloaded bit-set v0.4.0 [INFO] [stderr] Downloaded rustc-demangle v0.1.21 [INFO] [stderr] Downloaded error-chain v0.7.2 [INFO] [stderr] Downloaded addr2line v0.17.0 [INFO] [stderr] Downloaded resolve v0.2.0 [INFO] [stderr] Downloaded libc v0.2.132 [INFO] [stderr] Downloaded cargo_metadata v0.14.2 [INFO] [stderr] Downloaded pulldown-cmark v0.9.2 [INFO] [stderr] Downloaded skeptic v0.13.7 [INFO] [stderr] Downloaded assert_cli v0.5.4 [INFO] [stderr] Downloaded data-encoding v2.3.2 [INFO] [stderr] Downloaded env_logger v0.3.5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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:bb5b0feb4f87116a4ea905b7ff5bf5b85913db05e9f0fbc1abdd3168928d9075" "/opt/rustwide/cargo-home/bin/cargo" "+b359ccf1b0b7b2d2c1c4932344b806e68bd053a9" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 8c55d4e96546d4f2104ccf4c9854ded5306f5ff811f50672cdb00c5d4d75c901 [INFO] running `Command { std: "docker" "start" "-a" "8c55d4e96546d4f2104ccf4c9854ded5306f5ff811f50672cdb00c5d4d75c901", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8c55d4e96546d4f2104ccf4c9854ded5306f5ff811f50672cdb00c5d4d75c901", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8c55d4e96546d4f2104ccf4c9854ded5306f5ff811f50672cdb00c5d4d75c901", kill_on_drop: false }` [INFO] [stdout] 8c55d4e96546d4f2104ccf4c9854ded5306f5ff811f50672cdb00c5d4d75c901 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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:bb5b0feb4f87116a4ea905b7ff5bf5b85913db05e9f0fbc1abdd3168928d9075" "/opt/rustwide/cargo-home/bin/cargo" "+b359ccf1b0b7b2d2c1c4932344b806e68bd053a9" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] dbff3c0736444399bcecdffd1ef877737207b4a61907709d58ad1a1bc4d9f972 [INFO] running `Command { std: "docker" "start" "-a" "dbff3c0736444399bcecdffd1ef877737207b4a61907709d58ad1a1bc4d9f972", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.132 [INFO] [stderr] Compiling proc-macro2 v1.0.43 [INFO] [stderr] Compiling quote v1.0.21 [INFO] [stderr] Compiling unicode-ident v1.0.3 [INFO] [stderr] Compiling syn v1.0.99 [INFO] [stderr] Compiling serde_derive v1.0.144 [INFO] [stderr] Compiling serde v1.0.144 [INFO] [stderr] Compiling memchr v2.5.0 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Compiling winapi-build v0.1.1 [INFO] [stderr] Compiling version_check v0.9.4 [INFO] [stderr] Compiling cc v1.0.73 [INFO] [stderr] Checking winapi v0.2.8 [INFO] [stderr] Checking gimli v0.26.2 [INFO] [stderr] Checking adler v1.0.2 [INFO] [stderr] Compiling log v0.4.17 [INFO] [stderr] Checking tinyvec_macros v0.1.0 [INFO] [stderr] Compiling pkg-config v0.3.25 [INFO] [stderr] Checking miniz_oxide v0.5.4 [INFO] [stderr] Checking rustc-demangle v0.1.21 [INFO] [stderr] Checking tinyvec v1.6.0 [INFO] [stderr] Compiling kernel32-sys v0.2.2 [INFO] [stderr] Compiling serde_json v1.0.85 [INFO] [stderr] Compiling gcc v0.3.55 [INFO] [stderr] Checking utf8-ranges v0.1.3 [INFO] [stderr] Checking unicode-bidi v0.3.8 [INFO] [stderr] Checking unicode-width v0.1.9 [INFO] [stderr] Checking matches v0.1.9 [INFO] [stderr] Compiling camino v1.1.1 [INFO] [stderr] Checking log v0.3.9 [INFO] [stderr] Compiling semver v1.0.13 [INFO] [stderr] Checking regex-syntax v0.3.9 [INFO] [stderr] Compiling unicase v2.6.0 [INFO] [stderr] Checking bit-vec v0.4.4 [INFO] [stderr] Compiling protobuf v1.7.5 [INFO] [stderr] Compiling error-chain v0.12.4 [INFO] [stderr] Checking bit-set v0.4.0 [INFO] [stderr] Checking object v0.29.0 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Compiling pulldown-cmark v0.9.2 [INFO] [stderr] Checking lazy_static v0.2.11 [INFO] [stderr] Checking rustc-serialize v0.3.24 [INFO] [stderr] Checking bitflags v1.3.2 [INFO] [stderr] Compiling itoa v1.0.3 [INFO] [stderr] Checking unicode-normalization v0.1.21 [INFO] [stderr] Checking rand v0.4.6 [INFO] [stderr] Checking memchr v0.1.11 [INFO] [stderr] Checking thread-id v2.0.0 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Checking thread_local v0.2.7 [INFO] [stderr] Checking aho-corasick v0.5.3 [INFO] [stderr] Checking time v0.1.44 [INFO] [stderr] Checking ansi_term v0.12.1 [INFO] [stderr] Compiling libsodium-sys v0.0.16 [INFO] [stderr] Checking vec_map v0.8.2 [INFO] [stderr] Checking strsim v0.8.0 [INFO] [stderr] Checking regex v0.1.80 [INFO] [stderr] Compiling ryu v1.0.11 [INFO] [stderr] Checking clap v2.34.0 [INFO] [stderr] Checking idna v0.1.5 [INFO] [stderr] Checking rand v0.3.23 [INFO] [stderr] Checking chan v0.1.23 [INFO] [stderr] Compiling fastrand v1.8.0 [INFO] [stderr] Compiling rust-crypto v0.2.36 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Checking resolve v0.2.0 [INFO] [stderr] Checking chan-signal v0.3.3 [INFO] [stderr] Checking bit_field v0.9.0 [INFO] [stderr] Checking integer-encoding v1.1.7 [INFO] [stderr] Checking data-encoding v2.3.2 [INFO] [stderr] Compiling remove_dir_all v0.5.3 [INFO] [stderr] Compiling walkdir v2.3.2 [INFO] [stderr] Compiling glob v0.3.0 [INFO] [stderr] Compiling backtrace v0.3.66 [INFO] [stderr] Checking env_logger v0.3.5 [INFO] [stderr] Compiling bytecount v0.6.3 [INFO] [stderr] Compiling tempfile v3.3.0 [INFO] [stderr] Checking addr2line v0.17.0 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Checking environment v0.1.1 [INFO] [stderr] Checking difference v1.0.0 [INFO] [stderr] Checking colored v1.9.3 [INFO] [stderr] Checking tempdir v0.3.7 [INFO] [stderr] Checking error-chain v0.7.2 [INFO] [stderr] Checking error-chain v0.11.0 [INFO] [stderr] Checking sodiumoxide v0.0.16 [INFO] [stderr] Compiling cargo-platform v0.1.2 [INFO] [stderr] Checking geniza v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/peer.rs:168:59 [INFO] [stdout] | [INFO] [stdout] 168 | let discovery_key = make_discovery_key(key_bytes);; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/lib.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | / error_chain! { [INFO] [stdout] 41 | | foreign_links { Fmt(::std::fmt::Error); [INFO] [stdout] 42 | | Io(::std::io::Error) #[cfg(unix)]; [INFO] [stdout] 43 | | AddrParseError(::std::net::AddrParseError); [INFO] [stdout] 44 | | Protobuf(::protobuf::ProtobufError); } [INFO] [stdout] 45 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::cause`: replaced by Error::source, which can support downcasting [INFO] [stdout] --> src/lib.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | / error_chain! { [INFO] [stdout] 41 | | foreign_links { Fmt(::std::fmt::Error); [INFO] [stdout] 42 | | Io(::std::io::Error) #[cfg(unix)]; [INFO] [stdout] 43 | | AddrParseError(::std::net::AddrParseError); [INFO] [stdout] 44 | | Protobuf(::protobuf::ProtobufError); } [INFO] [stdout] 45 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (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] --> src/sleep_register.rs:90:19 [INFO] [stdout] | [INFO] [stdout] 90 | for ri in HyperRegister::tree_root_nodes(entry_index + 1) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 90 | for ri in ::tree_root_nodes(entry_index + 1) { [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:398:22 [INFO] [stdout] | [INFO] [stdout] 398 | let offset = HyperRegister::get_data_offset(self, index)?; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 398 | let offset = ::get_data_offset(self, index)?; [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:437:25 [INFO] [stdout] | [INFO] [stdout] 437 | let leaf_hash = HyperRegister::hash_leaf(data); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 437 | let leaf_hash = ::hash_leaf(data); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:448:26 [INFO] [stdout] | [INFO] [stdout] 448 | let mut parent = HyperRegister::tree_parent_index(index * 2); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 448 | let mut parent = ::tree_parent_index(index * 2); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:450:33 [INFO] [stdout] | [INFO] [stdout] 450 | let (left, right) = HyperRegister::tree_child_indices(parent)?; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 450 | let (left, right) = ::tree_child_indices(parent)?; [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:452:31 [INFO] [stdout] | [INFO] [stdout] 452 | let parent_hash = HyperRegister::hash_parent(&left[0..40], &right[0..40]); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 452 | let parent_hash = ::hash_parent(&left[0..40], &right[0..40]); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:454:22 [INFO] [stdout] | [INFO] [stdout] 454 | parent = HyperRegister::tree_parent_index(parent); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 454 | parent = ::tree_parent_index(parent); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:458:25 [INFO] [stdout] | [INFO] [stdout] 458 | let root_hash = HyperRegister::hash_roots(self, index)?; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 458 | let root_hash = ::hash_roots(self, index)?; [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:495:35 [INFO] [stdout] | [INFO] [stdout] 495 | let leaf_recalc = HyperRegister::hash_leaf(&data_chunk); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 495 | let leaf_recalc = ::hash_leaf(&data_chunk); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:507:26 [INFO] [stdout] | [INFO] [stdout] 507 | let rehash = HyperRegister::hash_roots(self, i)?; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 507 | let rehash = ::hash_roots(self, i)?; [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `inner` is never read [INFO] [stdout] --> src/bitfield.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Bitfield { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 8 | inner: Vec, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `bitfield_sleep` is never read [INFO] [stdout] --> src/sleep_register.rs:226:5 [INFO] [stdout] | [INFO] [stdout] 223 | pub struct SleepDirRegister { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 226 | bitfield_sleep: SleepFile, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SleepDirRegister` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id`, `register`, `inflight`, and `wanted` are never read [INFO] [stdout] --> src/synchronizer.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct RegisterStatus { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 29 | id: u8, [INFO] [stdout] | ^^ [INFO] [stdout] 30 | register: SleepDirRegister, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 31 | inflight: Vec, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 32 | wanted: BitVec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/protocol.rs:400:9 [INFO] [stdout] | [INFO] [stdout] 400 | self.tcp.shutdown(Shutdown::Both); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 17 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling cargo_metadata v0.14.2 [INFO] [stderr] Compiling skeptic v0.13.7 [INFO] [stderr] Compiling assert_cli v0.5.4 [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> src/peer.rs:168:59 [INFO] [stdout] | [INFO] [stdout] 168 | let discovery_key = make_discovery_key(key_bytes);; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/lib.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | / error_chain! { [INFO] [stdout] 41 | | foreign_links { Fmt(::std::fmt::Error); [INFO] [stdout] 42 | | Io(::std::io::Error) #[cfg(unix)]; [INFO] [stdout] 43 | | AddrParseError(::std::net::AddrParseError); [INFO] [stdout] 44 | | Protobuf(::protobuf::ProtobufError); } [INFO] [stdout] 45 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::cause`: replaced by Error::source, which can support downcasting [INFO] [stdout] --> src/lib.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | / error_chain! { [INFO] [stdout] 41 | | foreign_links { Fmt(::std::fmt::Error); [INFO] [stdout] 42 | | Io(::std::io::Error) #[cfg(unix)]; [INFO] [stdout] 43 | | AddrParseError(::std::net::AddrParseError); [INFO] [stdout] 44 | | Protobuf(::protobuf::ProtobufError); } [INFO] [stdout] 45 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `error_chain_processed` which comes from the expansion of the macro `error_chain` (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] --> src/sleep_register.rs:90:19 [INFO] [stdout] | [INFO] [stdout] 90 | for ri in HyperRegister::tree_root_nodes(entry_index + 1) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 90 | for ri in ::tree_root_nodes(entry_index + 1) { [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:179:16 [INFO] [stdout] | [INFO] [stdout] 179 | assert_eq!(HyperRegister::tree_root_nodes(0), vec![]); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 179 | assert_eq!(::tree_root_nodes(0), vec![]); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:180:16 [INFO] [stdout] | [INFO] [stdout] 180 | assert_eq!(HyperRegister::tree_root_nodes(1), vec![0]); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 180 | assert_eq!(::tree_root_nodes(1), vec![0]); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:181:16 [INFO] [stdout] | [INFO] [stdout] 181 | assert_eq!(HyperRegister::tree_root_nodes(2), vec![1]); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 181 | assert_eq!(::tree_root_nodes(2), vec![1]); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:182:16 [INFO] [stdout] | [INFO] [stdout] 182 | assert_eq!(HyperRegister::tree_root_nodes(3), vec![1, 4]); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 182 | assert_eq!(::tree_root_nodes(3), vec![1, 4]); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:183:16 [INFO] [stdout] | [INFO] [stdout] 183 | assert_eq!(HyperRegister::tree_root_nodes(4), vec![3]); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 183 | assert_eq!(::tree_root_nodes(4), vec![3]); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:184:16 [INFO] [stdout] | [INFO] [stdout] 184 | assert_eq!(HyperRegister::tree_root_nodes(5), vec![3, 8]); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 184 | assert_eq!(::tree_root_nodes(5), vec![3, 8]); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:185:16 [INFO] [stdout] | [INFO] [stdout] 185 | assert_eq!(HyperRegister::tree_root_nodes(6), vec![3, 9]); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 185 | assert_eq!(::tree_root_nodes(6), vec![3, 9]); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:186:16 [INFO] [stdout] | [INFO] [stdout] 186 | assert_eq!(HyperRegister::tree_root_nodes(7), vec![3, 9, 12]); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 186 | assert_eq!(::tree_root_nodes(7), vec![3, 9, 12]); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:187:16 [INFO] [stdout] | [INFO] [stdout] 187 | assert_eq!(HyperRegister::tree_root_nodes(8), vec![7]); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 187 | assert_eq!(::tree_root_nodes(8), vec![7]); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:192:16 [INFO] [stdout] | [INFO] [stdout] 192 | assert_eq!(HyperRegister::tree_parent_index(0), 1); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 192 | assert_eq!(::tree_parent_index(0), 1); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:193:16 [INFO] [stdout] | [INFO] [stdout] 193 | assert_eq!(HyperRegister::tree_parent_index(1), 3); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 193 | assert_eq!(::tree_parent_index(1), 3); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:194:16 [INFO] [stdout] | [INFO] [stdout] 194 | assert_eq!(HyperRegister::tree_parent_index(2), 1); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 194 | assert_eq!(::tree_parent_index(2), 1); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:195:16 [INFO] [stdout] | [INFO] [stdout] 195 | assert_eq!(HyperRegister::tree_parent_index(3), 7); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 195 | assert_eq!(::tree_parent_index(3), 7); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:196:16 [INFO] [stdout] | [INFO] [stdout] 196 | assert_eq!(HyperRegister::tree_parent_index(4), 5); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 196 | assert_eq!(::tree_parent_index(4), 5); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:197:16 [INFO] [stdout] | [INFO] [stdout] 197 | assert_eq!(HyperRegister::tree_parent_index(5), 3); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 197 | assert_eq!(::tree_parent_index(5), 3); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:198:16 [INFO] [stdout] | [INFO] [stdout] 198 | assert_eq!(HyperRegister::tree_parent_index(6), 5); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 198 | assert_eq!(::tree_parent_index(6), 5); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:199:16 [INFO] [stdout] | [INFO] [stdout] 199 | assert_eq!(HyperRegister::tree_parent_index(7), 15); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 199 | assert_eq!(::tree_parent_index(7), 15); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:200:16 [INFO] [stdout] | [INFO] [stdout] 200 | assert_eq!(HyperRegister::tree_parent_index(8), 9); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 200 | assert_eq!(::tree_parent_index(8), 9); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:201:16 [INFO] [stdout] | [INFO] [stdout] 201 | assert_eq!(HyperRegister::tree_parent_index(9), 11); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 201 | assert_eq!(::tree_parent_index(9), 11); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:202:16 [INFO] [stdout] | [INFO] [stdout] 202 | assert_eq!(HyperRegister::tree_parent_index(21), 19); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 202 | assert_eq!(::tree_parent_index(21), 19); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:203:16 [INFO] [stdout] | [INFO] [stdout] 203 | assert_eq!(HyperRegister::tree_parent_index(22), 21); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 203 | assert_eq!(::tree_parent_index(22), 21); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:208:13 [INFO] [stdout] | [INFO] [stdout] 208 | assert!(HyperRegister::tree_child_indices(0).is_err()); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 208 | assert!(::tree_child_indices(0).is_err()); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:209:13 [INFO] [stdout] | [INFO] [stdout] 209 | assert!(HyperRegister::tree_child_indices(1024).is_err()); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 209 | assert!(::tree_child_indices(1024).is_err()); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:210:16 [INFO] [stdout] | [INFO] [stdout] 210 | assert_eq!(HyperRegister::tree_child_indices(1).unwrap(), (0, 2)); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 210 | assert_eq!(::tree_child_indices(1).unwrap(), (0, 2)); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:211:16 [INFO] [stdout] | [INFO] [stdout] 211 | assert_eq!(HyperRegister::tree_child_indices(3).unwrap(), (1, 5)); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 211 | assert_eq!(::tree_child_indices(3).unwrap(), (1, 5)); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:212:16 [INFO] [stdout] | [INFO] [stdout] 212 | assert_eq!(HyperRegister::tree_child_indices(5).unwrap(), (4, 6)); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 212 | assert_eq!(::tree_child_indices(5).unwrap(), (4, 6)); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:213:16 [INFO] [stdout] | [INFO] [stdout] 213 | assert_eq!(HyperRegister::tree_child_indices(7).unwrap(), (3, 11)); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 213 | assert_eq!(::tree_child_indices(7).unwrap(), (3, 11)); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:214:16 [INFO] [stdout] | [INFO] [stdout] 214 | assert_eq!(HyperRegister::tree_child_indices(9).unwrap(), (8, 10)); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 214 | assert_eq!(::tree_child_indices(9).unwrap(), (8, 10)); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:215:16 [INFO] [stdout] | [INFO] [stdout] 215 | assert_eq!(HyperRegister::tree_child_indices(11).unwrap(), (9, 13)); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 215 | assert_eq!(::tree_child_indices(11).unwrap(), (9, 13)); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:216:16 [INFO] [stdout] | [INFO] [stdout] 216 | assert_eq!(HyperRegister::tree_child_indices(13).unwrap(), (12, 14)); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 216 | assert_eq!(::tree_child_indices(13).unwrap(), (12, 14)); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:217:16 [INFO] [stdout] | [INFO] [stdout] 217 | assert_eq!(HyperRegister::tree_child_indices(15).unwrap(), (7, 23)); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 217 | assert_eq!(::tree_child_indices(15).unwrap(), (7, 23)); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:218:16 [INFO] [stdout] | [INFO] [stdout] 218 | assert_eq!(HyperRegister::tree_child_indices(19).unwrap(), (17, 21)); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 218 | assert_eq!(::tree_child_indices(19).unwrap(), (17, 21)); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:398:22 [INFO] [stdout] | [INFO] [stdout] 398 | let offset = HyperRegister::get_data_offset(self, index)?; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 398 | let offset = ::get_data_offset(self, index)?; [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:437:25 [INFO] [stdout] | [INFO] [stdout] 437 | let leaf_hash = HyperRegister::hash_leaf(data); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 437 | let leaf_hash = ::hash_leaf(data); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:448:26 [INFO] [stdout] | [INFO] [stdout] 448 | let mut parent = HyperRegister::tree_parent_index(index * 2); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 448 | let mut parent = ::tree_parent_index(index * 2); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:450:33 [INFO] [stdout] | [INFO] [stdout] 450 | let (left, right) = HyperRegister::tree_child_indices(parent)?; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 450 | let (left, right) = ::tree_child_indices(parent)?; [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:452:31 [INFO] [stdout] | [INFO] [stdout] 452 | let parent_hash = HyperRegister::hash_parent(&left[0..40], &right[0..40]); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 452 | let parent_hash = ::hash_parent(&left[0..40], &right[0..40]); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:454:22 [INFO] [stdout] | [INFO] [stdout] 454 | parent = HyperRegister::tree_parent_index(parent); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 454 | parent = ::tree_parent_index(parent); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:458:25 [INFO] [stdout] | [INFO] [stdout] 458 | let root_hash = HyperRegister::hash_roots(self, index)?; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 458 | let root_hash = ::hash_roots(self, index)?; [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:495:35 [INFO] [stdout] | [INFO] [stdout] 495 | let leaf_recalc = HyperRegister::hash_leaf(&data_chunk); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 495 | let leaf_recalc = ::hash_leaf(&data_chunk); [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/sleep_register.rs:507:26 [INFO] [stdout] | [INFO] [stdout] 507 | let rehash = HyperRegister::hash_roots(self, i)?; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `dyn` [INFO] [stdout] | [INFO] [stdout] 507 | let rehash = ::hash_roots(self, i)?; [INFO] [stdout] | ++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `inner` is never read [INFO] [stdout] --> src/bitfield.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct Bitfield { [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 8 | inner: Vec, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `bitfield_sleep` is never read [INFO] [stdout] --> src/sleep_register.rs:226:5 [INFO] [stdout] | [INFO] [stdout] 223 | pub struct SleepDirRegister { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 226 | bitfield_sleep: SleepFile, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `SleepDirRegister` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `id`, `register`, `inflight`, and `wanted` are never read [INFO] [stdout] --> src/synchronizer.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 28 | pub struct RegisterStatus { [INFO] [stdout] | -------------- fields in this struct [INFO] [stdout] 29 | id: u8, [INFO] [stdout] | ^^ [INFO] [stdout] 30 | register: SleepDirRegister, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 31 | inflight: Vec, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 32 | wanted: BitVec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/protocol.rs:400:9 [INFO] [stdout] | [INFO] [stdout] 400 | self.tcp.shutdown(Shutdown::Both); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 49 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 16.38s [INFO] running `Command { std: "docker" "inspect" "dbff3c0736444399bcecdffd1ef877737207b4a61907709d58ad1a1bc4d9f972", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "dbff3c0736444399bcecdffd1ef877737207b4a61907709d58ad1a1bc4d9f972", kill_on_drop: false }` [INFO] [stdout] dbff3c0736444399bcecdffd1ef877737207b4a61907709d58ad1a1bc4d9f972