[INFO] fetching crate wei-updater 0.1.1... [INFO] checking wei-updater-0.1.1 against master#385fa9d845dd326c6bbfd58c22244215e431948a for never-type-fallback-to-never [INFO] extracting crate wei-updater 0.1.1 into /workspace/builds/worker-4-tc1/source [INFO] validating manifest of crates.io crate wei-updater 0.1.1 on toolchain 385fa9d845dd326c6bbfd58c22244215e431948a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate wei-updater 0.1.1 [INFO] finished tweaking crates.io crate wei-updater 0.1.1 [INFO] tweaked toml for crates.io crate wei-updater 0.1.1 written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] crate crates.io crate wei-updater 0.1.1 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" "+385fa9d845dd326c6bbfd58c22244215e431948a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded xml-rs v0.8.16 [INFO] [stderr] Downloaded strum v0.22.0 [INFO] [stderr] Downloaded winrt-notification v0.5.1 [INFO] [stderr] Downloaded wei-env v0.2.10 [INFO] [stderr] Downloaded wei-run v0.1.10 [INFO] [stderr] Downloaded single-instance v0.3.3 [INFO] [stderr] Downloaded wei-log v0.2.4 [INFO] [stderr] Downloaded strum_macros v0.22.0 [INFO] [stderr] Downloaded wei-daemon v0.2.5 [INFO] [stderr] Downloaded openssl-sys v0.9.92 [INFO] [stderr] Downloaded rustix v0.38.9 [INFO] [stderr] Downloaded windows_i686_msvc v0.24.0 [INFO] [stderr] Downloaded windows_i686_gnu v0.24.0 [INFO] [stderr] Downloaded windows_x86_64_gnu v0.24.0 [INFO] [stderr] Downloaded windows_x86_64_msvc v0.24.0 [INFO] [stderr] Downloaded ntapi v0.4.1 [INFO] [stderr] Downloaded sysinfo v0.29.9 [INFO] [stderr] Downloaded chrono v0.4.28 [INFO] [stderr] Downloaded windows v0.24.0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a4613564a82c011e5fa48d174147b5603e8e80b9da50d2bcdb105a07078ac150 [INFO] running `Command { std: "docker" "start" "-a" "a4613564a82c011e5fa48d174147b5603e8e80b9da50d2bcdb105a07078ac150", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a4613564a82c011e5fa48d174147b5603e8e80b9da50d2bcdb105a07078ac150", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a4613564a82c011e5fa48d174147b5603e8e80b9da50d2bcdb105a07078ac150", kill_on_drop: false }` [INFO] [stdout] a4613564a82c011e5fa48d174147b5603e8e80b9da50d2bcdb105a07078ac150 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+385fa9d845dd326c6bbfd58c22244215e431948a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ae383ae992b02cad6d7275de279b84f1f553d9b786e5fa5c5c05ea28dfd665ff [INFO] running `Command { std: "docker" "start" "-a" "ae383ae992b02cad6d7275de279b84f1f553d9b786e5fa5c5c05ea28dfd665ff", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.147 [INFO] [stderr] Checking smallvec v1.11.0 [INFO] [stderr] Compiling syn v2.0.29 [INFO] [stderr] Compiling futures-task v0.3.28 [INFO] [stderr] Compiling typenum v1.16.0 [INFO] [stderr] Compiling openssl v0.10.57 [INFO] [stderr] Compiling futures-util v0.3.28 [INFO] [stderr] Checking tracing v0.1.37 [INFO] [stderr] Compiling num-traits v0.2.16 [INFO] [stderr] Checking bitflags v2.4.0 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling rayon-core v1.11.0 [INFO] [stderr] Checking hashbrown v0.14.0 [INFO] [stderr] Checking option-ext v0.2.0 [INFO] [stderr] Checking unsafe-libyaml v0.2.9 [INFO] [stderr] Compiling winapi v0.3.9 [INFO] [stderr] Checking indexmap v2.0.0 [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stderr] Compiling thiserror v1.0.47 [INFO] [stderr] Checking http-body v0.4.5 [INFO] [stderr] Checking num_cpus v1.16.0 [INFO] [stderr] Checking parking_lot_core v0.9.8 [INFO] [stderr] Checking signal-hook-registry v1.4.1 [INFO] [stderr] Checking mio v0.8.8 [INFO] [stderr] Checking parking_lot v0.12.1 [INFO] [stderr] Checking socket2 v0.5.3 [INFO] [stderr] Checking generic-array v0.14.7 [INFO] [stderr] Checking dirs-sys v0.4.1 [INFO] [stderr] Checking dirs v5.0.1 [INFO] [stderr] Checking time v0.1.45 [INFO] [stderr] Checking socket2 v0.4.9 [INFO] [stderr] Compiling serde_json v1.0.105 [INFO] [stderr] Compiling openssl-sys v0.9.92 [INFO] [stderr] Checking nix v0.23.2 [INFO] [stderr] Checking chrono v0.4.28 [INFO] [stderr] Checking crypto-common v0.1.6 [INFO] [stderr] Checking block-buffer v0.10.4 [INFO] [stderr] Checking widestring v0.4.3 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Checking rayon v1.7.0 [INFO] [stderr] Checking xml-rs v0.8.16 [INFO] [stderr] Checking windows v0.24.0 [INFO] [stderr] Compiling native-tls v0.2.11 [INFO] [stderr] Checking cpufeatures v0.2.9 [INFO] [stderr] Checking base64 v0.21.3 [INFO] [stderr] Checking wei-log v0.2.4 [INFO] [stderr] Checking sha2 v0.10.7 [INFO] [stderr] Compiling strum_macros v0.22.0 [INFO] [stderr] Compiling serde_derive v1.0.188 [INFO] [stderr] Compiling tokio-macros v2.1.0 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling thiserror-impl v1.0.47 [INFO] [stderr] Checking sysinfo v0.29.9 [INFO] [stderr] Checking tokio v1.32.0 [INFO] [stderr] Checking strum v0.22.0 [INFO] [stderr] Checking single-instance v0.3.3 [INFO] [stderr] Checking serde v1.0.188 [INFO] [stderr] Checking winrt-notification v0.5.1 [INFO] [stderr] Checking tokio-util v0.7.8 [INFO] [stderr] Checking tokio-native-tls v0.3.1 [INFO] [stderr] Checking h2 v0.3.21 [INFO] [stderr] Checking serde_yaml v0.9.25 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking wei-env v0.2.10 [INFO] [stderr] Checking wei-run v0.1.10 [INFO] [stderr] Checking wei-daemon v0.2.5 [INFO] [stderr] Checking hyper v0.14.27 [INFO] [stderr] Checking hyper-tls v0.5.0 [INFO] [stderr] Checking reqwest v0.11.20 [INFO] [stderr] Checking wei-updater v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:219:59 [INFO] [stdout] | [INFO] [stdout] 219 | let dest_dir = format!("../wei-release/{}/{}/data", os.clone(), version.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: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:219:76 [INFO] [stdout] | [INFO] [stdout] 219 | let dest_dir = format!("../wei-release/{}/{}/data", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:220:72 [INFO] [stdout] | [INFO] [stdout] 220 | let dest_file = format!("../wei-release/{}/{}/data/version.dat", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:220:89 [INFO] [stdout] | [INFO] [stdout] 220 | let dest_file = format!("../wei-release/{}/{}/data/version.dat", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:219:59 [INFO] [stdout] | [INFO] [stdout] 219 | let dest_dir = format!("../wei-release/{}/{}/data", os.clone(), version.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: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:251:78 [INFO] [stdout] | [INFO] [stdout] 251 | let src = format!("../{}/target/release/{}{}", name, name, suffix.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:219:76 [INFO] [stdout] | [INFO] [stdout] 219 | let dest_dir = format!("../wei-release/{}/{}/data", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:252:67 [INFO] [stdout] | [INFO] [stdout] 252 | let dest_file = format!("../wei-release/{}/{}{}{}", os.clone(), version.clone(), v.as_str().unwrap(), suffix); [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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:220:72 [INFO] [stdout] | [INFO] [stdout] 220 | let dest_file = format!("../wei-release/{}/{}/data/version.dat", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:220:89 [INFO] [stdout] | [INFO] [stdout] 220 | let dest_file = format!("../wei-release/{}/{}/data/version.dat", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:251:78 [INFO] [stdout] | [INFO] [stdout] 251 | let src = format!("../{}/target/release/{}{}", name, name, suffix.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:252:67 [INFO] [stdout] | [INFO] [stdout] 252 | let dest_file = format!("../wei-release/{}/{}{}{}", os.clone(), version.clone(), v.as_str().unwrap(), suffix); [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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:252:84 [INFO] [stdout] | [INFO] [stdout] 252 | let dest_file = format!("../wei-release/{}/{}{}{}", os.clone(), version.clone(), v.as_str().unwrap(), suffix); [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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:258:83 [INFO] [stdout] | [INFO] [stdout] 258 | let checksum_dir = std::path::PathBuf::from(format!("../wei-release/{}/{}", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:258:100 [INFO] [stdout] | [INFO] [stdout] 258 | let checksum_dir = std::path::PathBuf::from(format!("../wei-release/{}/{}", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:259:94 [INFO] [stdout] | [INFO] [stdout] 259 | let mut checksum_file = File::create(format!("../wei-release/{}/{}/data/checksum.dat", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:259:111 [INFO] [stdout] | [INFO] [stdout] 259 | let mut checksum_file = File::create(format!("../wei-release/{}/{}/data/checksum.dat", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:260:59 [INFO] [stdout] | [INFO] [stdout] 260 | let from = format!("../wei-release/{}/qbittorrent", os.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:261:65 [INFO] [stdout] | [INFO] [stdout] 261 | let to = format!("../wei-release/{}/{}/data/qbittorrent", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:261:82 [INFO] [stdout] | [INFO] [stdout] 261 | let to = format!("../wei-release/{}/{}/data/qbittorrent", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:265:50 [INFO] [stdout] | [INFO] [stdout] 265 | let from = format!("../wei-release/{}/{}", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:265:67 [INFO] [stdout] | [INFO] [stdout] 265 | let from = format!("../wei-release/{}/{}", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:266:52 [INFO] [stdout] | [INFO] [stdout] 266 | let to = format!("../wei-release/{}/latest", os.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] [INFO] [stdout] [INFO] [stdout] warning: 17 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:252:84 [INFO] [stdout] | [INFO] [stdout] 252 | let dest_file = format!("../wei-release/{}/{}{}{}", os.clone(), version.clone(), v.as_str().unwrap(), suffix); [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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:258:83 [INFO] [stdout] | [INFO] [stdout] 258 | let checksum_dir = std::path::PathBuf::from(format!("../wei-release/{}/{}", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:258:100 [INFO] [stdout] | [INFO] [stdout] 258 | let checksum_dir = std::path::PathBuf::from(format!("../wei-release/{}/{}", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:259:94 [INFO] [stdout] | [INFO] [stdout] 259 | let mut checksum_file = File::create(format!("../wei-release/{}/{}/data/checksum.dat", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:259:111 [INFO] [stdout] | [INFO] [stdout] 259 | let mut checksum_file = File::create(format!("../wei-release/{}/{}/data/checksum.dat", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:260:59 [INFO] [stdout] | [INFO] [stdout] 260 | let from = format!("../wei-release/{}/qbittorrent", os.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:261:65 [INFO] [stdout] | [INFO] [stdout] 261 | let to = format!("../wei-release/{}/{}/data/qbittorrent", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:261:82 [INFO] [stdout] | [INFO] [stdout] 261 | let to = format!("../wei-release/{}/{}/data/qbittorrent", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:265:50 [INFO] [stdout] | [INFO] [stdout] 265 | let from = format!("../wei-release/{}/{}", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:265:67 [INFO] [stdout] | [INFO] [stdout] 265 | let from = format!("../wei-release/{}/{}", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:266:52 [INFO] [stdout] | [INFO] [stdout] 266 | let to = format!("../wei-release/{}/latest", os.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] [INFO] [stdout] [INFO] [stdout] warning: 17 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 59.64s [INFO] running `Command { std: "docker" "inspect" "ae383ae992b02cad6d7275de279b84f1f553d9b786e5fa5c5c05ea28dfd665ff", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ae383ae992b02cad6d7275de279b84f1f553d9b786e5fa5c5c05ea28dfd665ff", kill_on_drop: false }` [INFO] [stdout] ae383ae992b02cad6d7275de279b84f1f553d9b786e5fa5c5c05ea28dfd665ff [INFO] checking wei-updater-0.1.1 against try#2d84f2737f3bd9ebfcb07f75aa198d6cf7c715d2 for never-type-fallback-to-never [INFO] extracting crate wei-updater 0.1.1 into /workspace/builds/worker-4-tc2/source [INFO] validating manifest of crates.io crate wei-updater 0.1.1 on toolchain 2d84f2737f3bd9ebfcb07f75aa198d6cf7c715d2 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2d84f2737f3bd9ebfcb07f75aa198d6cf7c715d2" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate wei-updater 0.1.1 [INFO] finished tweaking crates.io crate wei-updater 0.1.1 [INFO] tweaked toml for crates.io crate wei-updater 0.1.1 written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] crate crates.io crate wei-updater 0.1.1 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" "+2d84f2737f3bd9ebfcb07f75aa198d6cf7c715d2" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+2d84f2737f3bd9ebfcb07f75aa198d6cf7c715d2" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 9fe521ae483ad17e4d8b1d30b2c148527f925b69be92c196e6ba1b6006bcfc00 [INFO] running `Command { std: "docker" "start" "-a" "9fe521ae483ad17e4d8b1d30b2c148527f925b69be92c196e6ba1b6006bcfc00", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "9fe521ae483ad17e4d8b1d30b2c148527f925b69be92c196e6ba1b6006bcfc00", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9fe521ae483ad17e4d8b1d30b2c148527f925b69be92c196e6ba1b6006bcfc00", kill_on_drop: false }` [INFO] [stdout] 9fe521ae483ad17e4d8b1d30b2c148527f925b69be92c196e6ba1b6006bcfc00 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+2d84f2737f3bd9ebfcb07f75aa198d6cf7c715d2" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c05a1d456cdc874bef03ac632c114712d088a439d264b5a9e8fcaa4c0740dc0d [INFO] running `Command { std: "docker" "start" "-a" "c05a1d456cdc874bef03ac632c114712d088a439d264b5a9e8fcaa4c0740dc0d", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.147 [INFO] [stderr] Checking smallvec v1.11.0 [INFO] [stderr] Compiling syn v2.0.29 [INFO] [stderr] Compiling futures-task v0.3.28 [INFO] [stderr] Compiling typenum v1.16.0 [INFO] [stderr] Compiling futures-util v0.3.28 [INFO] [stderr] Compiling openssl v0.10.57 [INFO] [stderr] Checking tracing v0.1.37 [INFO] [stderr] Compiling num-traits v0.2.16 [INFO] [stderr] Checking hashbrown v0.14.0 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling rayon-core v1.11.0 [INFO] [stderr] Checking bitflags v2.4.0 [INFO] [stderr] Checking option-ext v0.2.0 [INFO] [stderr] Compiling winapi v0.3.9 [INFO] [stderr] Compiling thiserror v1.0.47 [INFO] [stderr] Checking indexmap v2.0.0 [INFO] [stderr] Compiling cc v1.0.83 [INFO] [stderr] Checking unsafe-libyaml v0.2.9 [INFO] [stderr] Checking generic-array v0.14.7 [INFO] [stderr] Checking num_cpus v1.16.0 [INFO] [stderr] Checking parking_lot_core v0.9.8 [INFO] [stderr] Checking mio v0.8.8 [INFO] [stderr] Checking parking_lot v0.12.1 [INFO] [stderr] Checking signal-hook-registry v1.4.1 [INFO] [stderr] Checking socket2 v0.5.3 [INFO] [stderr] Checking dirs-sys v0.4.1 [INFO] [stderr] Checking time v0.1.45 [INFO] [stderr] Checking dirs v5.0.1 [INFO] [stderr] Checking socket2 v0.4.9 [INFO] [stderr] Checking http-body v0.4.5 [INFO] [stderr] Compiling serde_json v1.0.105 [INFO] [stderr] Checking nix v0.23.2 [INFO] [stderr] Checking chrono v0.4.28 [INFO] [stderr] Compiling openssl-sys v0.9.92 [INFO] [stderr] Checking crypto-common v0.1.6 [INFO] [stderr] Checking block-buffer v0.10.4 [INFO] [stderr] Checking widestring v0.4.3 [INFO] [stderr] Checking base64 v0.21.3 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Checking rayon v1.7.0 [INFO] [stderr] Checking cpufeatures v0.2.9 [INFO] [stderr] Checking windows v0.24.0 [INFO] [stderr] Checking xml-rs v0.8.16 [INFO] [stderr] Compiling native-tls v0.2.11 [INFO] [stderr] Checking sha2 v0.10.7 [INFO] [stderr] Checking wei-log v0.2.4 [INFO] [stderr] Compiling serde_derive v1.0.188 [INFO] [stderr] Compiling tokio-macros v2.1.0 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling thiserror-impl v1.0.47 [INFO] [stderr] Compiling strum_macros v0.22.0 [INFO] [stderr] Checking sysinfo v0.29.9 [INFO] [stderr] Checking tokio v1.32.0 [INFO] [stderr] Checking single-instance v0.3.3 [INFO] [stderr] Checking strum v0.22.0 [INFO] [stderr] Checking serde v1.0.188 [INFO] [stderr] Checking winrt-notification v0.5.1 [INFO] [stderr] Checking tokio-util v0.7.8 [INFO] [stderr] Checking tokio-native-tls v0.3.1 [INFO] [stderr] Checking h2 v0.3.21 [INFO] [stderr] Checking serde_yaml v0.9.25 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking wei-env v0.2.10 [INFO] [stderr] Checking wei-run v0.1.10 [INFO] [stderr] Checking wei-daemon v0.2.5 [INFO] [stderr] Checking hyper v0.14.27 [INFO] [stderr] Checking hyper-tls v0.5.0 [INFO] [stderr] Checking reqwest v0.11.20 [INFO] [stderr] Checking wei-updater v0.1.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:219:59 [INFO] [stdout] | [INFO] [stdout] 219 | let dest_dir = format!("../wei-release/{}/{}/data", os.clone(), version.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: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:219:76 [INFO] [stdout] | [INFO] [stdout] 219 | let dest_dir = format!("../wei-release/{}/{}/data", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:220:72 [INFO] [stdout] | [INFO] [stdout] 220 | let dest_file = format!("../wei-release/{}/{}/data/version.dat", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:220:89 [INFO] [stdout] | [INFO] [stdout] 220 | let dest_file = format!("../wei-release/{}/{}/data/version.dat", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:251:78 [INFO] [stdout] | [INFO] [stdout] 251 | let src = format!("../{}/target/release/{}{}", name, name, suffix.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:252:67 [INFO] [stdout] | [INFO] [stdout] 252 | let dest_file = format!("../wei-release/{}/{}{}{}", os.clone(), version.clone(), v.as_str().unwrap(), suffix); [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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:252:84 [INFO] [stdout] | [INFO] [stdout] 252 | let dest_file = format!("../wei-release/{}/{}{}{}", os.clone(), version.clone(), v.as_str().unwrap(), suffix); [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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:258:83 [INFO] [stdout] | [INFO] [stdout] 258 | let checksum_dir = std::path::PathBuf::from(format!("../wei-release/{}/{}", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:258:100 [INFO] [stdout] | [INFO] [stdout] 258 | let checksum_dir = std::path::PathBuf::from(format!("../wei-release/{}/{}", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:259:94 [INFO] [stdout] | [INFO] [stdout] 259 | let mut checksum_file = File::create(format!("../wei-release/{}/{}/data/checksum.dat", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:259:111 [INFO] [stdout] | [INFO] [stdout] 259 | let mut checksum_file = File::create(format!("../wei-release/{}/{}/data/checksum.dat", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:260:59 [INFO] [stdout] | [INFO] [stdout] 260 | let from = format!("../wei-release/{}/qbittorrent", os.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:261:65 [INFO] [stdout] | [INFO] [stdout] 261 | let to = format!("../wei-release/{}/{}/data/qbittorrent", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:261:82 [INFO] [stdout] | [INFO] [stdout] 261 | let to = format!("../wei-release/{}/{}/data/qbittorrent", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:265:50 [INFO] [stdout] | [INFO] [stdout] 265 | let from = format!("../wei-release/{}/{}", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:265:67 [INFO] [stdout] | [INFO] [stdout] 265 | let from = format!("../wei-release/{}/{}", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:266:52 [INFO] [stdout] | [INFO] [stdout] 266 | let to = format!("../wei-release/{}/latest", os.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] [INFO] [stdout] [INFO] [stdout] warning: 17 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:219:59 [INFO] [stdout] | [INFO] [stdout] 219 | let dest_dir = format!("../wei-release/{}/{}/data", os.clone(), version.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: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:219:76 [INFO] [stdout] | [INFO] [stdout] 219 | let dest_dir = format!("../wei-release/{}/{}/data", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:220:72 [INFO] [stdout] | [INFO] [stdout] 220 | let dest_file = format!("../wei-release/{}/{}/data/version.dat", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:220:89 [INFO] [stdout] | [INFO] [stdout] 220 | let dest_file = format!("../wei-release/{}/{}/data/version.dat", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:251:78 [INFO] [stdout] | [INFO] [stdout] 251 | let src = format!("../{}/target/release/{}{}", name, name, suffix.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:252:67 [INFO] [stdout] | [INFO] [stdout] 252 | let dest_file = format!("../wei-release/{}/{}{}{}", os.clone(), version.clone(), v.as_str().unwrap(), suffix); [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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:252:84 [INFO] [stdout] | [INFO] [stdout] 252 | let dest_file = format!("../wei-release/{}/{}{}{}", os.clone(), version.clone(), v.as_str().unwrap(), suffix); [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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:258:83 [INFO] [stdout] | [INFO] [stdout] 258 | let checksum_dir = std::path::PathBuf::from(format!("../wei-release/{}/{}", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:258:100 [INFO] [stdout] | [INFO] [stdout] 258 | let checksum_dir = std::path::PathBuf::from(format!("../wei-release/{}/{}", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:259:94 [INFO] [stdout] | [INFO] [stdout] 259 | let mut checksum_file = File::create(format!("../wei-release/{}/{}/data/checksum.dat", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:259:111 [INFO] [stdout] | [INFO] [stdout] 259 | let mut checksum_file = File::create(format!("../wei-release/{}/{}/data/checksum.dat", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:260:59 [INFO] [stdout] | [INFO] [stdout] 260 | let from = format!("../wei-release/{}/qbittorrent", os.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:261:65 [INFO] [stdout] | [INFO] [stdout] 261 | let to = format!("../wei-release/{}/{}/data/qbittorrent", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:261:82 [INFO] [stdout] | [INFO] [stdout] 261 | let to = format!("../wei-release/{}/{}/data/qbittorrent", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:265:50 [INFO] [stdout] | [INFO] [stdout] 265 | let from = format!("../wei-release/{}/{}", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:265:67 [INFO] [stdout] | [INFO] [stdout] 265 | let from = format!("../wei-release/{}/{}", os.clone(), version.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] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> src/main.rs:266:52 [INFO] [stdout] | [INFO] [stdout] 266 | let to = format!("../wei-release/{}/latest", os.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] [INFO] [stdout] [INFO] [stdout] warning: 17 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 01s [INFO] running `Command { std: "docker" "inspect" "c05a1d456cdc874bef03ac632c114712d088a439d264b5a9e8fcaa4c0740dc0d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c05a1d456cdc874bef03ac632c114712d088a439d264b5a9e8fcaa4c0740dc0d", kill_on_drop: false }` [INFO] [stdout] c05a1d456cdc874bef03ac632c114712d088a439d264b5a9e8fcaa4c0740dc0d