[INFO] fetching crate libaster 1.2.1... [INFO] testing libaster-1.2.1 against master#cdb45c87e2cd43495379f7e867e3cc15dcee9f93 for pr-145838-1 [INFO] extracting crate libaster 1.2.1 into /workspace/builds/worker-5-tc1/source [INFO] started tweaking crates.io crate libaster 1.2.1 [INFO] finished tweaking crates.io crate libaster 1.2.1 [INFO] tweaked toml for crates.io crate libaster 1.2.1 written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate libaster 1.2.1 on toolchain cdb45c87e2cd43495379f7e867e3cc15dcee9f93 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 304 packages to latest compatible versions [INFO] [stderr] Adding actix-rt v0.2.6 (available: v2.11.0) [INFO] [stderr] Adding actix-web v1.0.9 (available: v4.11.0) [INFO] [stderr] Adding aho-corasick v0.7.20 (available: v1.1.3) [INFO] [stderr] Adding assert2 v0.1.2 (available: v0.3.16) [INFO] [stderr] Adding bitflags v1.3.2 (available: v2.9.3) [INFO] [stderr] Adding btoi v0.4.3 (available: v0.5.0) [INFO] [stderr] Adding bytes v0.4.12 (available: v1.10.1) [INFO] [stderr] Adding clap v2.34.0 (available: v4.5.46) [INFO] [stderr] Adding criterion v0.2.11 (available: v0.7.0) [INFO] [stderr] Adding env_logger v0.6.2 (available: v0.11.8) [INFO] [stderr] Adding futures v0.1.31 (available: v0.3.31) [INFO] [stderr] Adding hashbrown v0.3.1 (available: v0.16.0) [INFO] [stderr] Adding inotify v0.8.3 (available: v0.11.0) [INFO] [stderr] Adding itoa v0.4.8 (available: v1.0.15) [INFO] [stderr] Adding md5 v0.6.1 (available: v0.8.0) [INFO] [stderr] Adding prometheus v0.7.0 (available: v0.14.0) [INFO] [stderr] Adding rand v0.7.3 (available: v0.9.2) [INFO] [stderr] Adding sysinfo v0.9.6 (available: v0.37.0) [INFO] [stderr] Adding tokio v0.1.22 (available: v1.47.1) [INFO] [stderr] Adding toml v0.4.10 (available: v0.9.5) [INFO] [stderr] Adding wasi v0.10.0+wasi-snapshot-preview1 (available: v0.10.2+wasi-snapshot-preview1) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded hashbrown v0.3.1 [INFO] [stderr] Downloaded assert2 v0.1.2 [INFO] [stderr] Downloaded awc v0.2.8 [INFO] [stderr] Downloaded assert2-macros v0.1.0 [INFO] [stderr] Downloaded prometheus v0.7.0 [INFO] [stderr] Downloaded tokio-signal v0.2.9 [INFO] [stderr] Downloaded actix-testing v0.1.0 [INFO] [stderr] Downloaded actix-server v0.6.1 [INFO] [stderr] Downloaded actix-web-codegen v0.1.3 [INFO] [stderr] Downloaded actix-rt v0.2.6 [INFO] [stderr] Downloaded actix-web v1.0.9 [INFO] [stderr] Downloaded actix-utils v0.4.7 [INFO] [stderr] Downloaded actix-http v0.2.11 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 664c5a8950c713df2bfa48a41b2ccb021a81d9a4e28c37370fd29f179db5fad7 [INFO] running `Command { std: "docker" "start" "-a" "664c5a8950c713df2bfa48a41b2ccb021a81d9a4e28c37370fd29f179db5fad7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "664c5a8950c713df2bfa48a41b2ccb021a81d9a4e28c37370fd29f179db5fad7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "664c5a8950c713df2bfa48a41b2ccb021a81d9a4e28c37370fd29f179db5fad7", kill_on_drop: false }` [INFO] [stdout] 664c5a8950c713df2bfa48a41b2ccb021a81d9a4e28c37370fd29f179db5fad7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 34f55524dbf79a181376f229f4192405a3919e812e23168b1c132ea782034823 [INFO] running `Command { std: "docker" "start" "-a" "34f55524dbf79a181376f229f4192405a3919e812e23168b1c132ea782034823", kill_on_drop: false }` [INFO] [stderr] Compiling futures v0.1.31 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling crossbeam-utils v0.7.2 [INFO] [stderr] Compiling memoffset v0.5.6 [INFO] [stderr] Compiling lock_api v0.3.4 [INFO] [stderr] Compiling crossbeam-epoch v0.8.2 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling iovec v0.1.4 [INFO] [stderr] Compiling net2 v0.2.39 [INFO] [stderr] Compiling smallvec v0.6.14 [INFO] [stderr] Compiling regex-automata v0.4.10 [INFO] [stderr] Compiling backtrace v0.3.75 [INFO] [stderr] Compiling c_linked_list v1.1.1 [INFO] [stderr] Compiling yaml-rust v0.3.5 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling btoi v0.4.3 [INFO] [stderr] Compiling bytes v0.4.12 [INFO] [stderr] Compiling get_if_addrs v0.5.3 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling toml v0.4.10 [INFO] [stderr] Compiling mio v0.6.23 [INFO] [stderr] Compiling aho-corasick v0.7.20 [INFO] [stderr] Compiling hashbrown v0.3.1 [INFO] [stderr] Compiling itoa v0.4.8 [INFO] [stderr] Compiling md5 v0.6.1 [INFO] [stderr] Compiling clap v2.34.0 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling parking_lot_core v0.6.3 [INFO] [stderr] Compiling parking_lot v0.9.0 [INFO] [stderr] Compiling crossbeam-queue v0.2.3 [INFO] [stderr] Compiling crossbeam-deque v0.7.4 [INFO] [stderr] Compiling mio-uds v0.6.8 [INFO] [stderr] Compiling tokio-executor v0.1.10 [INFO] [stderr] Compiling tokio-io v0.1.13 [INFO] [stderr] Compiling tokio-sync v0.1.8 [INFO] [stderr] Compiling tokio v0.2.25 [INFO] [stderr] Compiling tokio-codec v0.1.2 [INFO] [stderr] Compiling tokio-reactor v0.1.12 [INFO] [stderr] Compiling tokio-threadpool v0.1.18 [INFO] [stderr] Compiling tokio-current-thread v0.1.7 [INFO] [stderr] Compiling tokio-timer v0.2.13 [INFO] [stderr] Compiling inotify v0.8.3 [INFO] [stderr] Compiling tokio-tcp v0.1.4 [INFO] [stderr] Compiling tokio-uds v0.2.7 [INFO] [stderr] Compiling tokio-udp v0.1.6 [INFO] [stderr] Compiling regex v1.11.2 [INFO] [stderr] Compiling tokio-fs v0.1.7 [INFO] [stderr] Compiling tokio v0.1.22 [INFO] [stderr] Compiling env_logger v0.6.2 [INFO] [stderr] Compiling synstructure v0.12.6 [INFO] [stderr] Compiling failure_derive v0.1.8 [INFO] [stderr] Compiling failure v0.1.8 [INFO] [stderr] Compiling libaster v1.2.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unexpected `cfg` condition name: `linux` [INFO] [stdout] --> src/com.rs:291:11 [INFO] [stdout] | [INFO] [stdout] 291 | #[cfg(not(linux))] [INFO] [stdout] | ^^^^^ help: found config with similar value: `target_os = "linux"` [INFO] [stdout] | [INFO] [stdout] = help: expected names are: `docsrs`, `feature`, and `test` and 31 more [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(linux)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(linux)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `linux` [INFO] [stdout] --> src/com.rs:301:7 [INFO] [stdout] | [INFO] [stdout] 301 | #[cfg(linux)] [INFO] [stdout] | ^^^^^ help: found config with similar value: `target_os = "linux"` [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(linux)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(linux)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around block return value [INFO] [stdout] --> src/protocol/redis/resp.rs:509:38 [INFO] [stdout] | [INFO] [stdout] 509 | static ref FINDER: AhoCorasick = { AhoCorasick::new(PATTERNS) }; [INFO] [stdout] | ^^ ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_braces)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 509 - static ref FINDER: AhoCorasick = { AhoCorasick::new(PATTERNS) }; [INFO] [stdout] 509 + static ref FINDER: AhoCorasick = AhoCorasick::new(PATTERNS); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/lib.rs:35:28 [INFO] [stdout] | [INFO] [stdout] 35 | let watch_file = config.clone(); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/com.rs:19:17 [INFO] [stdout] | [INFO] [stdout] 19 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_AsError` [INFO] [stdout] 20 | pub enum AsError { [INFO] [stdout] | ------- `AsError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/com.rs:19:17 [INFO] [stdout] | [INFO] [stdout] 19 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_AsError` [INFO] [stdout] 20 | pub enum AsError { [INFO] [stdout] | ------- `AsError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/protocol/redis.rs:157:19 [INFO] [stdout] | [INFO] [stdout] 157 | pub fn borrow(&self) -> Ref { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 157 | pub fn borrow(&self) -> Ref<'_, Command> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/protocol/redis.rs:161:23 [INFO] [stdout] | [INFO] [stdout] 161 | pub fn borrow_mut(&self) -> RefMut { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 161 | pub fn borrow_mut(&self) -> RefMut<'_, Command> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/protocol/redis/resp.rs:486:17 [INFO] [stdout] | [INFO] [stdout] 486 | pub fn iter(&self) -> MessageIter { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 486 | pub fn iter(&self) -> MessageIter<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> src/proxy/cluster/init.rs:99:21 [INFO] [stdout] | [INFO] [stdout] 99 | std::mem::drop(sender); // must drop when the while state is done; [INFO] [stdout] | ^^^^^^^^^^^^^^^------^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&mut futures::unsync::mpsc::Sender` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dropping_references)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 99 - std::mem::drop(sender); // must drop when the while state is done; [INFO] [stdout] 99 + let _ = sender; // must drop when the while state is done; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 25.98s [INFO] running `Command { std: "docker" "inspect" "34f55524dbf79a181376f229f4192405a3919e812e23168b1c132ea782034823", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "34f55524dbf79a181376f229f4192405a3919e812e23168b1c132ea782034823", kill_on_drop: false }` [INFO] [stdout] 34f55524dbf79a181376f229f4192405a3919e812e23168b1c132ea782034823 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 36a18046e34175c22c325f52a75ffd9efaee2015dc6df6b6bc651432e9f2f479 [INFO] running `Command { std: "docker" "start" "-a" "36a18046e34175c22c325f52a75ffd9efaee2015dc6df6b6bc651432e9f2f479", kill_on_drop: false }` [INFO] [stderr] Compiling cast v0.2.7 [INFO] [stderr] Compiling assert2-macros v0.1.0 [INFO] [stderr] Compiling rand_core v0.3.1 [INFO] [stderr] Compiling csv-core v0.1.12 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling yansi v0.5.1 [INFO] [stdout] warning: unexpected `cfg` condition name: `linux` [INFO] [stdout] --> src/com.rs:291:11 [INFO] [stdout] | [INFO] [stdout] 291 | #[cfg(not(linux))] [INFO] [stdout] | ^^^^^ help: found config with similar value: `target_os = "linux"` [INFO] [stdout] | [INFO] [stdout] = help: expected names are: `docsrs`, `feature`, and `test` and 31 more [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(linux)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(linux)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `linux` [INFO] [stdout] --> src/com.rs:301:7 [INFO] [stdout] | [INFO] [stdout] 301 | #[cfg(linux)] [INFO] [stdout] | ^^^^^ help: found config with similar value: `target_os = "linux"` [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(linux)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(linux)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around block return value [INFO] [stdout] --> src/protocol/redis/resp.rs:509:38 [INFO] [stdout] | [INFO] [stdout] 509 | static ref FINDER: AhoCorasick = { AhoCorasick::new(PATTERNS) }; [INFO] [stdout] | ^^ ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_braces)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 509 - static ref FINDER: AhoCorasick = { AhoCorasick::new(PATTERNS) }; [INFO] [stdout] 509 + static ref FINDER: AhoCorasick = AhoCorasick::new(PATTERNS); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/lib.rs:35:28 [INFO] [stdout] | [INFO] [stdout] 35 | let watch_file = config.clone(); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/com.rs:19:17 [INFO] [stdout] | [INFO] [stdout] 19 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_AsError` [INFO] [stdout] 20 | pub enum AsError { [INFO] [stdout] | ------- `AsError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/com.rs:19:17 [INFO] [stdout] | [INFO] [stdout] 19 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_AsError` [INFO] [stdout] 20 | pub enum AsError { [INFO] [stdout] | ------- `AsError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/protocol/redis.rs:157:19 [INFO] [stdout] | [INFO] [stdout] 157 | pub fn borrow(&self) -> Ref { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 157 | pub fn borrow(&self) -> Ref<'_, Command> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/protocol/redis.rs:161:23 [INFO] [stdout] | [INFO] [stdout] 161 | pub fn borrow_mut(&self) -> RefMut { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 161 | pub fn borrow_mut(&self) -> RefMut<'_, Command> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/protocol/redis/resp.rs:486:17 [INFO] [stdout] | [INFO] [stdout] 486 | pub fn iter(&self) -> MessageIter { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 486 | pub fn iter(&self) -> MessageIter<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> src/proxy/cluster/init.rs:99:21 [INFO] [stdout] | [INFO] [stdout] 99 | std::mem::drop(sender); // must drop when the while state is done; [INFO] [stdout] | ^^^^^^^^^^^^^^^------^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&mut futures::unsync::mpsc::Sender` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dropping_references)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 99 - std::mem::drop(sender); // must drop when the while state is done; [INFO] [stdout] 99 + let _ = sender; // must drop when the while state is done; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling rand_xoshiro v0.1.0 [INFO] [stderr] Compiling csv v1.3.1 [INFO] [stderr] Compiling criterion-plot v0.3.1 [INFO] [stderr] Compiling criterion v0.2.11 [INFO] [stderr] Compiling assert2 v0.1.2 [INFO] [stderr] Compiling libaster v1.2.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unexpected `cfg` condition name: `linux` [INFO] [stdout] --> src/com.rs:291:11 [INFO] [stdout] | [INFO] [stdout] 291 | #[cfg(not(linux))] [INFO] [stdout] | ^^^^^ help: found config with similar value: `target_os = "linux"` [INFO] [stdout] | [INFO] [stdout] = help: expected names are: `docsrs`, `feature`, and `test` and 31 more [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(linux)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(linux)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unexpected `cfg` condition name: `linux` [INFO] [stdout] --> src/com.rs:301:7 [INFO] [stdout] | [INFO] [stdout] 301 | #[cfg(linux)] [INFO] [stdout] | ^^^^^ help: found config with similar value: `target_os = "linux"` [INFO] [stdout] | [INFO] [stdout] = help: consider using a Cargo feature instead [INFO] [stdout] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stdout] [lints.rust] [INFO] [stdout] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(linux)'] } [INFO] [stdout] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(linux)");` to the top of the `build.rs` [INFO] [stdout] = note: see for more information about checking conditional configuration [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary braces around block return value [INFO] [stdout] --> src/protocol/redis/resp.rs:509:38 [INFO] [stdout] | [INFO] [stdout] 509 | static ref FINDER: AhoCorasick = { AhoCorasick::new(PATTERNS) }; [INFO] [stdout] | ^^ ^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_braces)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] help: remove these braces [INFO] [stdout] | [INFO] [stdout] 509 - static ref FINDER: AhoCorasick = { AhoCorasick::new(PATTERNS) }; [INFO] [stdout] 509 + static ref FINDER: AhoCorasick = AhoCorasick::new(PATTERNS); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/lib.rs:35:28 [INFO] [stdout] | [INFO] [stdout] 35 | let watch_file = config.clone(); [INFO] [stdout] | ^^^^^^^^ help: remove this redundant call [INFO] [stdout] | [INFO] [stdout] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stdout] = note: `#[warn(noop_method_call)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/com.rs:19:17 [INFO] [stdout] | [INFO] [stdout] 19 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Fail` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_AsError` [INFO] [stdout] 20 | pub enum AsError { [INFO] [stdout] | ------- `AsError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/com.rs:19:17 [INFO] [stdout] | [INFO] [stdout] 19 | #[derive(Debug, Fail)] [INFO] [stdout] | ^--- [INFO] [stdout] | | [INFO] [stdout] | `Display` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_AsError` [INFO] [stdout] 20 | pub enum AsError { [INFO] [stdout] | ------- `AsError` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/protocol/redis.rs:157:19 [INFO] [stdout] | [INFO] [stdout] 157 | pub fn borrow(&self) -> Ref { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 157 | pub fn borrow(&self) -> Ref<'_, Command> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/protocol/redis.rs:161:23 [INFO] [stdout] | [INFO] [stdout] 161 | pub fn borrow_mut(&self) -> RefMut { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 161 | pub fn borrow_mut(&self) -> RefMut<'_, Command> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/protocol/redis/resp.rs:486:17 [INFO] [stdout] | [INFO] [stdout] 486 | pub fn iter(&self) -> MessageIter { [INFO] [stdout] | ^^^^^ ^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 486 | pub fn iter(&self) -> MessageIter<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stdout] --> src/proxy/cluster/init.rs:99:21 [INFO] [stdout] | [INFO] [stdout] 99 | std::mem::drop(sender); // must drop when the while state is done; [INFO] [stdout] | ^^^^^^^^^^^^^^^------^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `&mut futures::unsync::mpsc::Sender` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dropping_references)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 99 - std::mem::drop(sender); // must drop when the while state is done; [INFO] [stdout] 99 + let _ = sender; // must drop when the while state is done; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 9.19s [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" "36a18046e34175c22c325f52a75ffd9efaee2015dc6df6b6bc651432e9f2f479", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "36a18046e34175c22c325f52a75ffd9efaee2015dc6df6b6bc651432e9f2f479", kill_on_drop: false }` [INFO] [stdout] 36a18046e34175c22c325f52a75ffd9efaee2015dc6df6b6bc651432e9f2f479 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+cdb45c87e2cd43495379f7e867e3cc15dcee9f93" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 4c7d6e5b1d2a7ee8a05acf634a701b5703479a87b2f16558f8b43759b0ff0d13 [INFO] running `Command { std: "docker" "start" "-a" "4c7d6e5b1d2a7ee8a05acf634a701b5703479a87b2f16558f8b43759b0ff0d13", kill_on_drop: false }` [INFO] [stderr] warning: unexpected `cfg` condition name: `linux` [INFO] [stderr] --> src/com.rs:291:11 [INFO] [stderr] | [INFO] [stderr] 291 | #[cfg(not(linux))] [INFO] [stderr] | ^^^^^ help: found config with similar value: `target_os = "linux"` [INFO] [stderr] | [INFO] [stderr] = help: expected names are: `docsrs`, `feature`, and `test` and 31 more [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(linux)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(linux)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] = note: `#[warn(unexpected_cfgs)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unexpected `cfg` condition name: `linux` [INFO] [stderr] --> src/com.rs:301:7 [INFO] [stderr] | [INFO] [stderr] 301 | #[cfg(linux)] [INFO] [stderr] | ^^^^^ help: found config with similar value: `target_os = "linux"` [INFO] [stderr] | [INFO] [stderr] = help: consider using a Cargo feature instead [INFO] [stderr] = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint: [INFO] [stderr] [lints.rust] [INFO] [stderr] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(linux)'] } [INFO] [stderr] = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(linux)");` to the top of the `build.rs` [INFO] [stderr] = note: see for more information about checking conditional configuration [INFO] [stderr] [INFO] [stderr] warning: unnecessary braces around block return value [INFO] [stderr] --> src/protocol/redis/resp.rs:509:38 [INFO] [stderr] | [INFO] [stderr] 509 | static ref FINDER: AhoCorasick = { AhoCorasick::new(PATTERNS) }; [INFO] [stderr] | ^^ ^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_braces)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these braces [INFO] [stderr] | [INFO] [stderr] 509 - static ref FINDER: AhoCorasick = { AhoCorasick::new(PATTERNS) }; [INFO] [stderr] 509 + static ref FINDER: AhoCorasick = AhoCorasick::new(PATTERNS); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stderr] --> src/lib.rs:35:28 [INFO] [stderr] | [INFO] [stderr] 35 | let watch_file = config.clone(); [INFO] [stderr] | ^^^^^^^^ help: remove this redundant call [INFO] [stderr] | [INFO] [stderr] = note: the type `str` does not implement `Clone`, so calling `clone` on `&str` copies the reference, which does not do anything and can be removed [INFO] [stderr] = note: `#[warn(noop_method_call)]` on by default [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/com.rs:19:17 [INFO] [stderr] | [INFO] [stderr] 19 | #[derive(Debug, Fail)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Fail` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_Fail_FOR_AsError` [INFO] [stderr] 20 | pub enum AsError { [INFO] [stderr] | ------- `AsError` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stderr] --> src/com.rs:19:17 [INFO] [stderr] | [INFO] [stderr] 19 | #[derive(Debug, Fail)] [INFO] [stderr] | ^--- [INFO] [stderr] | | [INFO] [stderr] | `Display` is not local [INFO] [stderr] | move the `impl` block outside of this constant `_DERIVE_failure_core_fmt_Display_FOR_AsError` [INFO] [stderr] 20 | pub enum AsError { [INFO] [stderr] | ------- `AsError` is not local [INFO] [stderr] | [INFO] [stderr] = note: the derive macro `Fail` defines the non-local `impl`, and may need to be changed [INFO] [stderr] = note: the derive macro `Fail` may come from an old version of the `failure_derive` crate, try updating your dependency with `cargo update -p failure_derive` [INFO] [stderr] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stderr] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stderr] = note: this warning originates in the derive macro `Fail` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/protocol/redis.rs:157:19 [INFO] [stderr] | [INFO] [stderr] 157 | pub fn borrow(&self) -> Ref { [INFO] [stderr] | ^^^^^ ^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 157 | pub fn borrow(&self) -> Ref<'_, Command> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/protocol/redis.rs:161:23 [INFO] [stderr] | [INFO] [stderr] 161 | pub fn borrow_mut(&self) -> RefMut { [INFO] [stderr] | ^^^^^ ^^^^^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 161 | pub fn borrow_mut(&self) -> RefMut<'_, Command> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stderr] --> src/protocol/redis/resp.rs:486:17 [INFO] [stderr] | [INFO] [stderr] 486 | pub fn iter(&self) -> MessageIter { [INFO] [stderr] | ^^^^^ ^^^^^^^^^^^ the same lifetime is hidden here [INFO] [stderr] | | [INFO] [stderr] | the lifetime is elided here [INFO] [stderr] | [INFO] [stderr] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stderr] help: use `'_` for type paths [INFO] [stderr] | [INFO] [stderr] 486 | pub fn iter(&self) -> MessageIter<'_> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: calls to `std::mem::drop` with a reference instead of an owned value does nothing [INFO] [stderr] --> src/proxy/cluster/init.rs:99:21 [INFO] [stderr] | [INFO] [stderr] 99 | std::mem::drop(sender); // must drop when the while state is done; [INFO] [stderr] | ^^^^^^^^^^^^^^^------^ [INFO] [stderr] | | [INFO] [stderr] | argument has type `&mut futures::unsync::mpsc::Sender` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dropping_references)]` on by default [INFO] [stderr] help: use `let _ = ...` to ignore the expression or result [INFO] [stderr] | [INFO] [stderr] 99 - std::mem::drop(sender); // must drop when the while state is done; [INFO] [stderr] 99 + let _ = sender; // must drop when the while state is done; [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `libaster` (lib) generated 10 warnings (run `cargo fix --lib -p libaster` to apply 5 suggestions) [INFO] [stderr] warning: `libaster` (lib test) generated 10 warnings (10 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.27s [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/libaster-df1abe8ece0ff7b4) [INFO] [stdout] [INFO] [stdout] running 21 tests [INFO] [stdout] test protocol::mc::msg::test::test_parse_bin ... ok [INFO] [stdout] test protocol::mc::msg::test::test_parser_error ... ok [INFO] [stdout] test protocol::mc::msg::test::test_parse_twice ... ok [INFO] [stdout] test protocol::mc::msg::test::test_parse_text_all_ok ... ok [INFO] [stdout] test protocol::mc::test_mc_parse_wrong_case ... ok [INFO] [stdout] test protocol::redis::resp::test::test_handle_empy_query ... ok [INFO] [stdout] test protocol::redis::resp::test::test_iter_bulk ... ok [INFO] [stdout] test protocol::redis::resp::test::test_iter_plain ... ok [INFO] [stdout] test protocol::redis::resp::test::test_negative_multibulk_length ... ok [INFO] [stdout] test protocol::redis::resp::test::test_negative_mutiblk_payload_length ... ok [INFO] [stdout] test protocol::redis::resp::test::test_non_number_multibulk_payload_length ... ok [INFO] [stdout] test protocol::redis::resp::test::test_parse_cluster_slots ... ok [INFO] [stdout] test protocol::redis::resp::test::test_parse_inline ... ok [INFO] [stdout] test protocol::redis::resp::test::test_wrong_mutlti_bulk_payload_header ... ok [INFO] [stdout] test protocol::redis::resp::test_parse ... ok [INFO] [stdout] test protocol::redis::test_redis_parse_wrong_case ... ok [INFO] [stdout] test proxy::standalone::fnv::test_fnv1a::fnv1a_hash ... ok [INFO] [stdout] test utils::test_itoa_ok ... ok [INFO] [stdout] test protocol::redis::resp::test::test_iter ... ok [INFO] [stdout] test utils::crc::test_crc16 ... ok [INFO] [stdout] test proxy::standalone::ketama::test_ketama::ketama_dist ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 21 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] Doc-tests libaster [INFO] [stderr] warning: unnecessary braces around block return value [INFO] [stderr] --> src/protocol/redis/resp.rs:509:38 [INFO] [stderr] | [INFO] [stderr] 509 | static ref FINDER: AhoCorasick = { AhoCorasick::new(PATTERNS) }; [INFO] [stderr] | ^^ ^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_braces)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] help: remove these braces [INFO] [stderr] | [INFO] [stderr] 509 - static ref FINDER: AhoCorasick = { AhoCorasick::new(PATTERNS) }; [INFO] [stderr] 509 + static ref FINDER: AhoCorasick = AhoCorasick::new(PATTERNS); [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: 1 warning 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" "4c7d6e5b1d2a7ee8a05acf634a701b5703479a87b2f16558f8b43759b0ff0d13", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4c7d6e5b1d2a7ee8a05acf634a701b5703479a87b2f16558f8b43759b0ff0d13", kill_on_drop: false }` [INFO] [stdout] 4c7d6e5b1d2a7ee8a05acf634a701b5703479a87b2f16558f8b43759b0ff0d13