[INFO] cloning repository https://github.com/ethankhall/inc [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ethankhall/inc" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fethankhall%2Finc", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fethankhall%2Finc'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] f67949127dc5382c3862eae30b6615333474961a [INFO] checking ethankhall/inc against master#b389b0ab72cb0aa9acf4df0ae0c0e12090782da9 for pr-128351-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fethankhall%2Finc" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/ethankhall/inc on toolchain b389b0ab72cb0aa9acf4df0ae0c0e12090782da9 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b389b0ab72cb0aa9acf4df0ae0c0e12090782da9" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/ethankhall/inc [INFO] finished tweaking git repo https://github.com/ethankhall/inc [INFO] tweaked toml for git repo https://github.com/ethankhall/inc written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/ethankhall/inc 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" "+b389b0ab72cb0aa9acf4df0ae0c0e12090782da9" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: /workspace/builds/worker-5-tc1/source/inc-lib/Cargo.toml: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] warning: /workspace/builds/worker-5-tc1/source/inc/Cargo.toml: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] warning: /workspace/builds/worker-5-tc1/source/inc-commands/Cargo.toml: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 1 package to latest compatible version [INFO] [stderr] Updating inc v0.1.8 (/workspace/builds/worker-5-tc1/source/inc) -> v0.1.9 [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded signal-hook v0.1.5 [INFO] [stderr] Downloaded names v0.11.0 [INFO] [stderr] Downloaded url v1.7.1 [INFO] [stderr] Downloaded constant_time_eq v0.1.3 [INFO] [stderr] Downloaded environment v0.1.1 [INFO] [stderr] Downloaded cargo_metadata v0.5.8 [INFO] [stderr] Downloaded assert_cli v0.5.4 [INFO] [stderr] Downloaded colored v1.6.1 [INFO] [stderr] Downloaded bytecount v0.3.2 [INFO] [stderr] Downloaded toml v0.4.7 [INFO] [stderr] Downloaded serde_json v1.0.31 [INFO] [stderr] Downloaded failure v0.1.2 [INFO] [stderr] Downloaded serde_yaml v0.8.5 [INFO] [stderr] Downloaded pulldown-cmark v0.1.2 [INFO] [stderr] Downloaded difference v1.0.0 [INFO] [stderr] Downloaded regex v0.2.11 [INFO] [stderr] Downloaded error-chain v0.11.0 [INFO] [stderr] Downloaded regex-syntax v0.5.6 [INFO] [stderr] Downloaded glob v0.2.11 [INFO] [stderr] Downloaded skeptic v0.13.3 [INFO] [stderr] Downloaded argon2rs v0.2.5 [INFO] [stderr] Downloaded blake2-rfc v0.2.18 [INFO] [stderr] Downloaded redox_users v0.2.0 [INFO] [stderr] Downloaded fern v0.4.4 [INFO] [stderr] Downloaded bitflags v0.9.1 [INFO] [stderr] Downloaded synstructure v0.9.0 [INFO] [stderr] Downloaded dirs v1.0.4 [INFO] [stderr] Downloaded failure_derive v0.1.2 [INFO] [stderr] Downloaded rand v0.3.22 [INFO] [stderr] Downloaded arc-swap v0.3.0 [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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+b389b0ab72cb0aa9acf4df0ae0c0e12090782da9" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 0b581dd5a2a1effb6900ce27475e3a6c0926f78d0678c14ef93543dd1722005f [INFO] running `Command { std: "docker" "start" "-a" "0b581dd5a2a1effb6900ce27475e3a6c0926f78d0678c14ef93543dd1722005f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0b581dd5a2a1effb6900ce27475e3a6c0926f78d0678c14ef93543dd1722005f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0b581dd5a2a1effb6900ce27475e3a6c0926f78d0678c14ef93543dd1722005f", kill_on_drop: false }` [INFO] [stdout] 0b581dd5a2a1effb6900ce27475e3a6c0926f78d0678c14ef93543dd1722005f [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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+b389b0ab72cb0aa9acf4df0ae0c0e12090782da9" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2cbfdc190944bc1fd04881c6c609892970ca59d78b3ec21713e87854ca5ee4fe [INFO] running `Command { std: "docker" "start" "-a" "2cbfdc190944bc1fd04881c6c609892970ca59d78b3ec21713e87854ca5ee4fe", kill_on_drop: false }` [INFO] [stderr] warning: /opt/rustwide/workdir/inc/Cargo.toml: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] warning: /opt/rustwide/workdir/inc-lib/Cargo.toml: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] warning: /opt/rustwide/workdir/inc-commands/Cargo.toml: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] Checking libc v0.2.43 [INFO] [stderr] Compiling num-traits v0.2.6 [INFO] [stderr] Compiling cfg-if v0.1.5 [INFO] [stderr] Compiling rustc-demangle v0.1.9 [INFO] [stderr] Compiling num-integer v0.1.39 [INFO] [stderr] Compiling names v0.11.0 [INFO] [stderr] Compiling itoa v0.4.3 [INFO] [stderr] Compiling serde v1.0.79 [INFO] [stderr] Compiling ryu v0.2.6 [INFO] [stderr] Checking unicode-normalization v0.1.7 [INFO] [stderr] Compiling regex v0.2.11 [INFO] [stderr] Compiling pulldown-cmark v0.1.2 [INFO] [stderr] Checking regex-syntax v0.5.6 [INFO] [stderr] Compiling remove_dir_all v0.5.1 [INFO] [stderr] Checking arc-swap v0.3.0 [INFO] [stderr] Compiling same-file v1.0.3 [INFO] [stderr] Compiling bitflags v0.9.1 [INFO] [stderr] Checking serde_yaml v0.8.5 [INFO] [stderr] Checking fern v0.4.4 [INFO] [stderr] Compiling glob v0.2.11 [INFO] [stderr] Compiling walkdir v2.2.5 [INFO] [stderr] Compiling bytecount v0.3.2 [INFO] [stderr] Checking serde_json v1.0.31 [INFO] [stderr] Checking colored v1.6.1 [INFO] [stderr] Checking environment v0.1.1 [INFO] [stderr] Compiling backtrace-sys v0.1.24 [INFO] [stderr] Compiling rand v0.4.3 [INFO] [stderr] Checking difference v1.0.0 [INFO] [stderr] Compiling backtrace v0.3.9 [INFO] [stderr] Checking toml v0.4.7 [INFO] [stderr] Compiling error-chain v0.11.0 [INFO] [stderr] Checking memchr v2.1.0 [INFO] [stderr] Checking atty v0.2.11 [INFO] [stderr] Checking time v0.1.40 [INFO] [stderr] Checking signal-hook v0.1.5 [INFO] [stderr] Checking dirs v1.0.4 [INFO] [stderr] Checking clap v2.32.0 [INFO] [stderr] Compiling tempdir v0.3.7 [INFO] [stderr] Checking aho-corasick v0.6.8 [INFO] [stderr] Checking idna v0.1.5 [INFO] [stderr] Checking chrono v0.4.6 [INFO] [stderr] Checking rand v0.3.22 [INFO] [stderr] Checking url v1.7.1 [INFO] [stderr] Checking inc-lib v0.1.6 (/opt/rustwide/workdir/inc-lib) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> inc-lib/src/libs/scm/api.rs:26:46 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn build_scm_providers() -> Vec<&'static ScmProvier> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 26 | pub fn build_scm_providers() -> Vec<&'static dyn ScmProvier> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> inc-lib/src/libs/scm/api.rs:33:21 [INFO] [stdout] | [INFO] [stdout] 33 | providers: Vec<&ScmProvier>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 33 | providers: Vec<&dyn ScmProvier>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> inc-lib/src/libs/scm/services.rs:8:83 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn build_service_map(sub_commands: &AvaliableCommands) -> HashMap> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 8 | pub fn build_service_map(sub_commands: &AvaliableCommands) -> HashMap> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> inc-lib/src/libs/scm/services.rs:9:41 [INFO] [stdout] | [INFO] [stdout] 9 | let mut result: HashMap> = HashMap::new(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 9 | let mut result: HashMap> = HashMap::new(); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `Result`. This is more readably written as an `if let` statement [INFO] [stdout] --> inc-lib/src/core/command.rs:90:26 [INFO] [stdout] | [INFO] [stdout] 90 | for entry in fs::read_dir(split_path) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 90 | while let Ok(entry) = fs::read_dir(split_path) { [INFO] [stdout] | ~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 90 | if let Ok(entry) = fs::read_dir(split_path) { [INFO] [stdout] | ~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `Result`. This is more readably written as an `if let` statement [INFO] [stdout] --> inc-lib/src/core/command.rs:104:22 [INFO] [stdout] | [INFO] [stdout] 104 | for entry in path.read_dir() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 104 | while let Ok(entry) = path.read_dir() { [INFO] [stdout] | ~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 104 | if let Ok(entry) = path.read_dir() { [INFO] [stdout] | ~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> inc-lib/src/libs/scm/provider/git.rs:72:55 [INFO] [stdout] | [INFO] [stdout] 72 | let parsed_url = Url::parse(sanitized_url.as_str().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: 7 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking inc-commands v0.1.6 (/opt/rustwide/workdir/inc-commands) [INFO] [stderr] Checking inc v0.1.9 (/opt/rustwide/workdir/inc) [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling cargo_metadata v0.5.8 [INFO] [stderr] Compiling skeptic v0.13.3 [INFO] [stderr] Compiling assert_cli v0.5.4 [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> inc-lib/src/libs/scm/api.rs:26:46 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn build_scm_providers() -> Vec<&'static ScmProvier> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 26 | pub fn build_scm_providers() -> Vec<&'static dyn ScmProvier> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> inc-lib/src/libs/scm/api.rs:33:21 [INFO] [stdout] | [INFO] [stdout] 33 | providers: Vec<&ScmProvier>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 33 | providers: Vec<&dyn ScmProvier>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> inc-lib/src/libs/scm/services.rs:8:83 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn build_service_map(sub_commands: &AvaliableCommands) -> HashMap> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 8 | pub fn build_service_map(sub_commands: &AvaliableCommands) -> HashMap> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> inc-lib/src/libs/scm/services.rs:9:41 [INFO] [stdout] | [INFO] [stdout] 9 | let mut result: HashMap> = HashMap::new(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 9 | let mut result: HashMap> = HashMap::new(); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `Result`. This is more readably written as an `if let` statement [INFO] [stdout] --> inc-lib/src/core/command.rs:90:26 [INFO] [stdout] | [INFO] [stdout] 90 | for entry in fs::read_dir(split_path) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 90 | while let Ok(entry) = fs::read_dir(split_path) { [INFO] [stdout] | ~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 90 | if let Ok(entry) = fs::read_dir(split_path) { [INFO] [stdout] | ~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `Result`. This is more readably written as an `if let` statement [INFO] [stdout] --> inc-lib/src/core/command.rs:104:22 [INFO] [stdout] | [INFO] [stdout] 104 | for entry in path.read_dir() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 104 | while let Ok(entry) = path.read_dir() { [INFO] [stdout] | ~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 104 | if let Ok(entry) = path.read_dir() { [INFO] [stdout] | ~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> inc-lib/src/libs/scm/provider/git.rs:72:55 [INFO] [stdout] | [INFO] [stdout] 72 | let parsed_url = Url::parse(sanitized_url.as_str().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: 7 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 12.81s [INFO] running `Command { std: "docker" "inspect" "2cbfdc190944bc1fd04881c6c609892970ca59d78b3ec21713e87854ca5ee4fe", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2cbfdc190944bc1fd04881c6c609892970ca59d78b3ec21713e87854ca5ee4fe", kill_on_drop: false }` [INFO] [stdout] 2cbfdc190944bc1fd04881c6c609892970ca59d78b3ec21713e87854ca5ee4fe [INFO] checking ethankhall/inc against try#16d823b1c168ce52c66ccc00dfd686f775a45c65 for pr-128351-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fethankhall%2Finc" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/ethankhall/inc on toolchain 16d823b1c168ce52c66ccc00dfd686f775a45c65 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+16d823b1c168ce52c66ccc00dfd686f775a45c65" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/ethankhall/inc [INFO] finished tweaking git repo https://github.com/ethankhall/inc [INFO] tweaked toml for git repo https://github.com/ethankhall/inc written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/ethankhall/inc 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" "+16d823b1c168ce52c66ccc00dfd686f775a45c65" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: /workspace/builds/worker-5-tc2/source/inc-lib/Cargo.toml: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] warning: /workspace/builds/worker-5-tc2/source/inc-commands/Cargo.toml: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] warning: /workspace/builds/worker-5-tc2/source/inc/Cargo.toml: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] Locking 1 package to latest compatible version [INFO] [stderr] Updating inc v0.1.8 (/workspace/builds/worker-5-tc2/source/inc) -> v0.1.9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+16d823b1c168ce52c66ccc00dfd686f775a45c65" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 3852104c5d19877169011301b00ec147f495fde8e66dc7ab8a7f231096492c32 [INFO] running `Command { std: "docker" "start" "-a" "3852104c5d19877169011301b00ec147f495fde8e66dc7ab8a7f231096492c32", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "3852104c5d19877169011301b00ec147f495fde8e66dc7ab8a7f231096492c32", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3852104c5d19877169011301b00ec147f495fde8e66dc7ab8a7f231096492c32", kill_on_drop: false }` [INFO] [stdout] 3852104c5d19877169011301b00ec147f495fde8e66dc7ab8a7f231096492c32 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+16d823b1c168ce52c66ccc00dfd686f775a45c65" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3f97e375f43f76d6c5d6f3720347fa54d50d483c1a98c66b0887cdd4c45d49b8 [INFO] running `Command { std: "docker" "start" "-a" "3f97e375f43f76d6c5d6f3720347fa54d50d483c1a98c66b0887cdd4c45d49b8", kill_on_drop: false }` [INFO] [stderr] warning: /opt/rustwide/workdir/inc-lib/Cargo.toml: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] warning: /opt/rustwide/workdir/inc/Cargo.toml: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] warning: /opt/rustwide/workdir/inc-commands/Cargo.toml: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] Checking libc v0.2.43 [INFO] [stderr] Compiling num-traits v0.2.6 [INFO] [stderr] Compiling cfg-if v0.1.5 [INFO] [stderr] Compiling rustc-demangle v0.1.9 [INFO] [stderr] Compiling num-integer v0.1.39 [INFO] [stderr] Compiling regex v0.2.11 [INFO] [stderr] Compiling pulldown-cmark v0.1.2 [INFO] [stderr] Compiling serde v1.0.79 [INFO] [stderr] Compiling ryu v0.2.6 [INFO] [stderr] Compiling itoa v0.4.3 [INFO] [stderr] Compiling names v0.11.0 [INFO] [stderr] Checking unicode-normalization v0.1.7 [INFO] [stderr] Checking regex-syntax v0.5.6 [INFO] [stderr] Compiling same-file v1.0.3 [INFO] [stderr] Checking arc-swap v0.3.0 [INFO] [stderr] Compiling bitflags v0.9.1 [INFO] [stderr] Compiling remove_dir_all v0.5.1 [INFO] [stderr] Compiling walkdir v2.2.5 [INFO] [stderr] Checking serde_yaml v0.8.5 [INFO] [stderr] Checking fern v0.4.4 [INFO] [stderr] Compiling glob v0.2.11 [INFO] [stderr] Compiling bytecount v0.3.2 [INFO] [stderr] Checking serde_json v1.0.31 [INFO] [stderr] Compiling backtrace-sys v0.1.24 [INFO] [stderr] Checking rand v0.4.3 [INFO] [stderr] Checking memchr v2.1.0 [INFO] [stderr] Checking atty v0.2.11 [INFO] [stderr] Compiling backtrace v0.3.9 [INFO] [stderr] Checking time v0.1.40 [INFO] [stderr] Checking dirs v1.0.4 [INFO] [stderr] Checking clap v2.32.0 [INFO] [stderr] Checking aho-corasick v0.6.8 [INFO] [stderr] Checking signal-hook v0.1.5 [INFO] [stderr] Checking colored v1.6.1 [INFO] [stderr] Compiling error-chain v0.11.0 [INFO] [stderr] Checking environment v0.1.1 [INFO] [stderr] Checking difference v1.0.0 [INFO] [stderr] Checking rand v0.3.22 [INFO] [stderr] Compiling tempdir v0.3.7 [INFO] [stderr] Checking toml v0.4.7 [INFO] [stderr] Checking idna v0.1.5 [INFO] [stderr] Checking chrono v0.4.6 [INFO] [stderr] Checking url v1.7.1 [INFO] [stderr] Checking inc-lib v0.1.6 (/opt/rustwide/workdir/inc-lib) [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> inc-lib/src/libs/scm/api.rs:26:46 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn build_scm_providers() -> Vec<&'static ScmProvier> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 26 | pub fn build_scm_providers() -> Vec<&'static dyn ScmProvier> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> inc-lib/src/libs/scm/api.rs:33:21 [INFO] [stdout] | [INFO] [stdout] 33 | providers: Vec<&ScmProvier>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 33 | providers: Vec<&dyn ScmProvier>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> inc-lib/src/libs/scm/services.rs:8:83 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn build_service_map(sub_commands: &AvaliableCommands) -> HashMap> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 8 | pub fn build_service_map(sub_commands: &AvaliableCommands) -> HashMap> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> inc-lib/src/libs/scm/services.rs:9:41 [INFO] [stdout] | [INFO] [stdout] 9 | let mut result: HashMap> = HashMap::new(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 9 | let mut result: HashMap> = HashMap::new(); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `Result`. This is more readably written as an `if let` statement [INFO] [stdout] --> inc-lib/src/core/command.rs:90:26 [INFO] [stdout] | [INFO] [stdout] 90 | for entry in fs::read_dir(split_path) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 90 | while let Ok(entry) = fs::read_dir(split_path) { [INFO] [stdout] | ~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 90 | if let Ok(entry) = fs::read_dir(split_path) { [INFO] [stdout] | ~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `Result`. This is more readably written as an `if let` statement [INFO] [stdout] --> inc-lib/src/core/command.rs:104:22 [INFO] [stdout] | [INFO] [stdout] 104 | for entry in path.read_dir() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 104 | while let Ok(entry) = path.read_dir() { [INFO] [stdout] | ~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 104 | if let Ok(entry) = path.read_dir() { [INFO] [stdout] | ~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> inc-lib/src/libs/scm/provider/git.rs:72:55 [INFO] [stdout] | [INFO] [stdout] 72 | let parsed_url = Url::parse(sanitized_url.as_str().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: 7 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking inc-commands v0.1.6 (/opt/rustwide/workdir/inc-commands) [INFO] [stderr] Checking inc v0.1.9 (/opt/rustwide/workdir/inc) [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling cargo_metadata v0.5.8 [INFO] [stderr] Compiling skeptic v0.13.3 [INFO] [stderr] Compiling assert_cli v0.5.4 [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> inc-lib/src/libs/scm/api.rs:26:46 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn build_scm_providers() -> Vec<&'static ScmProvier> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 26 | pub fn build_scm_providers() -> Vec<&'static dyn ScmProvier> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> inc-lib/src/libs/scm/api.rs:33:21 [INFO] [stdout] | [INFO] [stdout] 33 | providers: Vec<&ScmProvier>, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 33 | providers: Vec<&dyn ScmProvier>, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> inc-lib/src/libs/scm/services.rs:8:83 [INFO] [stdout] | [INFO] [stdout] 8 | pub fn build_service_map(sub_commands: &AvaliableCommands) -> HashMap> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 8 | pub fn build_service_map(sub_commands: &AvaliableCommands) -> HashMap> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> inc-lib/src/libs/scm/services.rs:9:41 [INFO] [stdout] | [INFO] [stdout] 9 | let mut result: HashMap> = HashMap::new(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: if this is an object-safe trait, use `dyn` [INFO] [stdout] | [INFO] [stdout] 9 | let mut result: HashMap> = HashMap::new(); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `Result`. This is more readably written as an `if let` statement [INFO] [stdout] --> inc-lib/src/core/command.rs:90:26 [INFO] [stdout] | [INFO] [stdout] 90 | for entry in fs::read_dir(split_path) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 90 | while let Ok(entry) = fs::read_dir(split_path) { [INFO] [stdout] | ~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 90 | if let Ok(entry) = fs::read_dir(split_path) { [INFO] [stdout] | ~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over a `Result`. This is more readably written as an `if let` statement [INFO] [stdout] --> inc-lib/src/core/command.rs:104:22 [INFO] [stdout] | [INFO] [stdout] 104 | for entry in path.read_dir() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 104 | while let Ok(entry) = path.read_dir() { [INFO] [stdout] | ~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 104 | if let Ok(entry) = path.read_dir() { [INFO] [stdout] | ~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: call to `.clone()` on a reference in this situation does nothing [INFO] [stdout] --> inc-lib/src/libs/scm/provider/git.rs:72:55 [INFO] [stdout] | [INFO] [stdout] 72 | let parsed_url = Url::parse(sanitized_url.as_str().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: 7 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.88s [INFO] running `Command { std: "docker" "inspect" "3f97e375f43f76d6c5d6f3720347fa54d50d483c1a98c66b0887cdd4c45d49b8", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3f97e375f43f76d6c5d6f3720347fa54d50d483c1a98c66b0887cdd4c45d49b8", kill_on_drop: false }` [INFO] [stdout] 3f97e375f43f76d6c5d6f3720347fa54d50d483c1a98c66b0887cdd4c45d49b8