[INFO] cloning repository https://github.com/Evanjs/rrbg [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Evanjs/rrbg" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FEvanjs%2Frrbg", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FEvanjs%2Frrbg'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] bd50f859dbb737e3b373ba2459da0b6594e100d7 [INFO] checking Evanjs/rrbg/bd50f859dbb737e3b373ba2459da0b6594e100d7 against try#7014e13d5becc920d4bea3cd87942c8a13d359bf+rustflags=-Dtail_expr_drop_order for pr-129864 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FEvanjs%2Frrbg" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/Evanjs/rrbg on toolchain 7014e13d5becc920d4bea3cd87942c8a13d359bf [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/Evanjs/rrbg [INFO] finished tweaking git repo https://github.com/Evanjs/rrbg [INFO] tweaked toml for git repo https://github.com/Evanjs/rrbg written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/Evanjs/rrbg already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] c3f0fb5569017ab076ff46ab12bd25758842c68e30cfacc4e592033303cc9e6a [INFO] running `Command { std: "docker" "start" "-a" "c3f0fb5569017ab076ff46ab12bd25758842c68e30cfacc4e592033303cc9e6a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c3f0fb5569017ab076ff46ab12bd25758842c68e30cfacc4e592033303cc9e6a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c3f0fb5569017ab076ff46ab12bd25758842c68e30cfacc4e592033303cc9e6a", kill_on_drop: false }` [INFO] [stdout] c3f0fb5569017ab076ff46ab12bd25758842c68e30cfacc4e592033303cc9e6a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail_expr_drop_order" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 288968bbd6671d19e137e101d78fe3d7d216525f537f3d58d6bd7bede941f46b [INFO] running `Command { std: "docker" "start" "-a" "288968bbd6671d19e137e101d78fe3d7d216525f537f3d58d6bd7bede941f46b", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.68 [INFO] [stderr] Compiling autocfg v1.0.0 [INFO] [stderr] Compiling proc-macro2 v1.0.10 [INFO] [stderr] Compiling unicode-xid v0.2.0 [INFO] [stderr] Compiling syn v1.0.17 [INFO] [stderr] Compiling getrandom v0.1.14 [INFO] [stderr] Compiling cc v1.0.50 [INFO] [stderr] Compiling memchr v2.3.3 [INFO] [stderr] Compiling cfg-if v0.1.10 [INFO] [stderr] Compiling serde v1.0.106 [INFO] [stderr] Compiling sdl2-sys v0.33.0 [INFO] [stderr] Compiling crossbeam-utils v0.7.2 [INFO] [stderr] Compiling memoffset v0.5.4 [INFO] [stderr] Compiling crossbeam-epoch v0.8.2 [INFO] [stderr] Compiling rayon-core v1.7.0 [INFO] [stderr] Compiling ryu v1.0.3 [INFO] [stderr] Compiling log v0.4.11 [INFO] [stderr] Compiling failure_derive v0.1.7 [INFO] [stderr] Checking aho-corasick v0.7.10 [INFO] [stderr] Checking num_cpus v1.12.0 [INFO] [stderr] Checking dirs-sys v0.3.4 [INFO] [stderr] Compiling quote v1.0.3 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Compiling backtrace-sys v0.1.35 [INFO] [stderr] Checking thread_local v1.0.1 [INFO] [stderr] Compiling sdl2 v0.33.0 [INFO] [stderr] Checking crossbeam-queue v0.2.1 [INFO] [stderr] Checking rustc-demangle v0.1.16 [INFO] [stderr] Checking unicode-width v0.1.7 [INFO] [stderr] Checking ppv-lite86 v0.2.6 [INFO] [stderr] Compiling serde_json v1.0.64 [INFO] [stderr] Checking crossbeam-deque v0.7.3 [INFO] [stderr] Checking regex-syntax v0.6.17 [INFO] [stderr] Checking textwrap v0.11.0 [INFO] [stderr] Checking rand_chacha v0.2.2 [INFO] [stderr] Checking termcolor v1.1.0 [INFO] [stderr] Checking either v1.5.3 [INFO] [stderr] Checking strsim v0.8.0 [INFO] [stderr] Checking ansi_term v0.11.0 [INFO] [stderr] Checking yaml-rust v0.3.5 [INFO] [stderr] Checking vec_map v0.8.1 [INFO] [stderr] Checking itoa v0.4.5 [INFO] [stderr] Checking backtrace v0.3.46 [INFO] [stderr] Checking rayon v1.3.0 [INFO] [stderr] Checking rand v0.7.3 [INFO] [stderr] Checking dirs v2.0.2 [INFO] [stderr] Checking directories v2.0.2 [INFO] [stderr] Checking dotenv v0.15.0 [INFO] [stderr] Checking clap v2.33.3 [INFO] [stderr] Checking imagesize v0.8.1 [INFO] [stderr] Checking regex v1.3.6 [INFO] [stderr] Checking glob v0.3.0 [INFO] [stderr] Checking env_logger v0.8.3 [INFO] [stderr] Checking envy v0.4.1 [INFO] [stderr] Compiling synstructure v0.12.3 [INFO] [stderr] Compiling serde_derive v1.0.106 [INFO] [stderr] Checking failure v0.1.7 [INFO] [stderr] Checking rrbg v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `failure::*` [INFO] [stdout] --> src/lib.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use failure::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::error::Error` [INFO] [stdout] --> src/lib.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::error::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::*` [INFO] [stdout] --> src/lib.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::path::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::*` [INFO] [stdout] --> src/lib.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::path::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ptr` [INFO] [stdout] --> src/lib.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::ptr; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `failure::*` [INFO] [stdout] --> src/lib.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use failure::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dirs::*` [INFO] [stdout] --> src/lib.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use dirs::*; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Write` [INFO] [stdout] --> src/lib.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | use std::io::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::ser::Serialize` [INFO] [stdout] --> src/lib.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use serde::ser::Serialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::BufReader` [INFO] [stdout] --> src/lib.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | use std::io::BufReader; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `failure::*` [INFO] [stdout] --> src/lib.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use failure::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::error::Error` [INFO] [stdout] --> src/lib.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::error::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::*` [INFO] [stdout] --> src/lib.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use std::path::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::*` [INFO] [stdout] --> src/lib.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use std::path::*; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ptr` [INFO] [stdout] --> src/lib.rs:14:5 [INFO] [stdout] | [INFO] [stdout] 14 | use std::ptr; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `failure::*` [INFO] [stdout] --> src/lib.rs:15:5 [INFO] [stdout] | [INFO] [stdout] 15 | use failure::*; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `dirs::*` [INFO] [stdout] --> src/lib.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | use dirs::*; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Write` [INFO] [stdout] --> src/lib.rs:20:5 [INFO] [stdout] | [INFO] [stdout] 20 | use std::io::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `serde::ser::Serialize` [INFO] [stdout] --> src/lib.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use serde::ser::Serialize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::BufReader` [INFO] [stdout] --> src/lib.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | use std::io::BufReader; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:98:9 [INFO] [stdout] | [INFO] [stdout] 98 | let mut file = File::create(cache).expect("Failed to open cache file"); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/lib.rs:26:24 [INFO] [stdout] | [INFO] [stdout] 26 | #[derive(Debug, Clone, Serialize, Deserialize)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Wallpaper` [INFO] [stdout] 27 | /// A wallpaper entry [INFO] [stdout] 28 | pub struct Wallpaper { [INFO] [stdout] | --------- `Wallpaper` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/lib.rs:26:35 [INFO] [stdout] | [INFO] [stdout] 26 | #[derive(Debug, Clone, Serialize, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Wallpaper` [INFO] [stdout] 27 | /// A wallpaper entry [INFO] [stdout] 28 | pub struct Wallpaper { [INFO] [stdout] | --------- `Wallpaper` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/lib.rs:34:39 [INFO] [stdout] | [INFO] [stdout] 34 | #[derive(Debug, Eq, PartialEq, Clone, Serialize, Deserialize)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Resolution` [INFO] [stdout] 35 | /// The resolution of the image [INFO] [stdout] 36 | pub struct Resolution { [INFO] [stdout] | ---------- `Resolution` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/lib.rs:34:50 [INFO] [stdout] | [INFO] [stdout] 34 | #[derive(Debug, Eq, PartialEq, Clone, Serialize, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Resolution` [INFO] [stdout] 35 | /// The resolution of the image [INFO] [stdout] 36 | pub struct Resolution { [INFO] [stdout] | ---------- `Resolution` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/lib.rs:110:13 [INFO] [stdout] | [INFO] [stdout] 110 | &walls.append(&mut get_walls1(path)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 110 | let _ = &walls.append(&mut get_walls1(path)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/lib.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | &walls.append(&mut config); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 113 | let _ = &walls.append(&mut config); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/lib.rs:153:9 [INFO] [stdout] | [INFO] [stdout] 153 | / &resolutions.push(Resolution { [INFO] [stdout] 154 | | width: mode.w, [INFO] [stdout] 155 | | height: mode.h, [INFO] [stdout] 156 | | }); [INFO] [stdout] | |__________^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 153 | let _ = &resolutions.push(Resolution { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/config.rs:28:10 [INFO] [stdout] | [INFO] [stdout] 28 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Config` [INFO] [stdout] 29 | pub struct Config { [INFO] [stdout] | ------ `Config` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 19 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:98:9 [INFO] [stdout] | [INFO] [stdout] 98 | let mut file = File::create(cache).expect("Failed to open cache file"); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/lib.rs:26:24 [INFO] [stdout] | [INFO] [stdout] 26 | #[derive(Debug, Clone, Serialize, Deserialize)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Wallpaper` [INFO] [stdout] 27 | /// A wallpaper entry [INFO] [stdout] 28 | pub struct Wallpaper { [INFO] [stdout] | --------- `Wallpaper` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/lib.rs:26:35 [INFO] [stdout] | [INFO] [stdout] 26 | #[derive(Debug, Clone, Serialize, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Wallpaper` [INFO] [stdout] 27 | /// A wallpaper entry [INFO] [stdout] 28 | pub struct Wallpaper { [INFO] [stdout] | --------- `Wallpaper` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/lib.rs:34:39 [INFO] [stdout] | [INFO] [stdout] 34 | #[derive(Debug, Eq, PartialEq, Clone, Serialize, Deserialize)] [INFO] [stdout] | ^-------- [INFO] [stdout] | | [INFO] [stdout] | `Serialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_SERIALIZE_FOR_Resolution` [INFO] [stdout] 35 | /// The resolution of the image [INFO] [stdout] 36 | pub struct Resolution { [INFO] [stdout] | ---------- `Resolution` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Serialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Serialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Serialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/lib.rs:34:50 [INFO] [stdout] | [INFO] [stdout] 34 | #[derive(Debug, Eq, PartialEq, Clone, Serialize, Deserialize)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Resolution` [INFO] [stdout] 35 | /// The resolution of the image [INFO] [stdout] 36 | pub struct Resolution { [INFO] [stdout] | ---------- `Resolution` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/lib.rs:110:13 [INFO] [stdout] | [INFO] [stdout] 110 | &walls.append(&mut get_walls1(path)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 110 | let _ = &walls.append(&mut get_walls1(path)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/lib.rs:113:13 [INFO] [stdout] | [INFO] [stdout] 113 | &walls.append(&mut config); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 113 | let _ = &walls.append(&mut config); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/lib.rs:153:9 [INFO] [stdout] | [INFO] [stdout] 153 | / &resolutions.push(Resolution { [INFO] [stdout] 154 | | width: mode.w, [INFO] [stdout] 155 | | height: mode.h, [INFO] [stdout] 156 | | }); [INFO] [stdout] | |__________^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 153 | let _ = &resolutions.push(Resolution { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/config.rs:28:10 [INFO] [stdout] | [INFO] [stdout] 28 | #[derive(Deserialize, Debug)] [INFO] [stdout] | ^---------- [INFO] [stdout] | | [INFO] [stdout] | `Deserialize` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_DESERIALIZE_FOR_Config` [INFO] [stdout] 29 | pub struct Config { [INFO] [stdout] | ------ `Config` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `Deserialize` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `Deserialize` may come from an old version of the `serde_derive` crate, try updating your dependency with `cargo update -p serde_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: this warning originates in the derive macro `Deserialize` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 19 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::process` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::process; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `value_t` [INFO] [stdout] --> src/main.rs:9:23 [INFO] [stdout] | [INFO] [stdout] 9 | use clap::{load_yaml, value_t, App}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::process` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::process; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `value_t` [INFO] [stdout] --> src/main.rs:9:23 [INFO] [stdout] | [INFO] [stdout] 9 | use clap::{load_yaml, value_t, App}; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a value that implements `Copy` does nothing [INFO] [stdout] --> src/main.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | drop(env_logger::init()); [INFO] [stdout] | ^^^^^------------------^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `()` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dropping_copy_types)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 12 - drop(env_logger::init()); [INFO] [stdout] 12 + let _ = env_logger::init(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/main.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | &walls.push(choice.path.to_owned()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 49 | let _ = &walls.push(choice.path.to_owned()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a value that implements `Copy` does nothing [INFO] [stdout] --> src/main.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | drop(env_logger::init()); [INFO] [stdout] | ^^^^^------------------^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `()` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dropping_copy_types)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 12 - drop(env_logger::init()); [INFO] [stdout] 12 + let _ = env_logger::init(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/main.rs:49:9 [INFO] [stdout] | [INFO] [stdout] 49 | &walls.push(choice.path.to_owned()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 49 | let _ = &walls.push(choice.path.to_owned()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a value that implements `Copy` does nothing [INFO] [stdout] --> src/main.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | drop(rng); [INFO] [stdout] | ^^^^^---^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `ThreadRng` [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 50 - drop(rng); [INFO] [stdout] 50 + let _ = rng; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `std::mem::drop` with a value that implements `Copy` does nothing [INFO] [stdout] --> src/main.rs:50:9 [INFO] [stdout] | [INFO] [stdout] 50 | drop(rng); [INFO] [stdout] | ^^^^^---^ [INFO] [stdout] | | [INFO] [stdout] | argument has type `ThreadRng` [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the expression or result [INFO] [stdout] | [INFO] [stdout] 50 - drop(rng); [INFO] [stdout] 50 + let _ = rng; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 29.96s [INFO] running `Command { std: "docker" "inspect" "288968bbd6671d19e137e101d78fe3d7d216525f537f3d58d6bd7bede941f46b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "288968bbd6671d19e137e101d78fe3d7d216525f537f3d58d6bd7bede941f46b", kill_on_drop: false }` [INFO] [stdout] 288968bbd6671d19e137e101d78fe3d7d216525f537f3d58d6bd7bede941f46b