[INFO] cloning repository https://github.com/ItsMeijers/dirmando [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ItsMeijers/dirmando" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FItsMeijers%2Fdirmando", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FItsMeijers%2Fdirmando'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d857c316b9c9e31552190e10571d1f6c53c82a99 [INFO] checking ItsMeijers/dirmando/d857c316b9c9e31552190e10571d1f6c53c82a99 against try#c387b04bf028733cd561d62128c8a5eee4bc1458+rustflags=-Dtail_expr_drop_order for pr-130930 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FItsMeijers%2Fdirmando" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/ItsMeijers/dirmando on toolchain c387b04bf028733cd561d62128c8a5eee4bc1458 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/ItsMeijers/dirmando [INFO] finished tweaking git repo https://github.com/ItsMeijers/dirmando [INFO] tweaked toml for git repo https://github.com/ItsMeijers/dirmando written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/ItsMeijers/dirmando 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" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ae717890f8178ec9b1a64f20c22c953fcb03ac9685a2df97967cc74d1f90cdbe [INFO] running `Command { std: "docker" "start" "-a" "ae717890f8178ec9b1a64f20c22c953fcb03ac9685a2df97967cc74d1f90cdbe", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ae717890f8178ec9b1a64f20c22c953fcb03ac9685a2df97967cc74d1f90cdbe", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ae717890f8178ec9b1a64f20c22c953fcb03ac9685a2df97967cc74d1f90cdbe", kill_on_drop: false }` [INFO] [stdout] ae717890f8178ec9b1a64f20c22c953fcb03ac9685a2df97967cc74d1f90cdbe [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5db297ae78ba9a9579a5bfd5ace2635923abef77bb8622bb7bf1b69a19c8a41b [INFO] running `Command { std: "docker" "start" "-a" "5db297ae78ba9a9579a5bfd5ace2635923abef77bb8622bb7bf1b69a19c8a41b", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] Compiling proc-macro2 v0.4.19 [INFO] [stderr] Compiling unicode-xid v0.1.0 [INFO] [stderr] Compiling ryu v0.2.6 [INFO] [stderr] Compiling serde v1.0.79 [INFO] [stderr] Checking libc v0.2.43 [INFO] [stderr] Checking itoa v0.4.3 [INFO] [stderr] Checking atty v0.2.11 [INFO] [stderr] Checking clap v2.32.0 [INFO] [stderr] Compiling quote v0.6.8 [INFO] [stderr] Compiling syn v0.15.4 [INFO] [stderr] Compiling serde_derive v1.0.79 [INFO] [stderr] Checking serde_json v1.0.27 [INFO] [stderr] Checking dirmando v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/main.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::env` [INFO] [stdout] --> src/dirmando.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::env; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::collections::HashMap` [INFO] [stdout] --> src/main.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::collections::HashMap; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::env` [INFO] [stdout] --> src/dirmando.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use std::env; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `currentDirectory` [INFO] [stdout] --> src/dirmando.rs:24:24 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn save(&self, currentDirectory: &String, command: &String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_currentDirectory` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `command` [INFO] [stdout] --> src/dirmando.rs:24:51 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn save(&self, currentDirectory: &String, command: &String) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_command` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `currentDir` should have a snake case name [INFO] [stdout] --> src/main.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | let currentDir = String::from(current_dir().unwrap().to_str().unwrap()); [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `current_dir` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `commandosOpt` should have a snake case name [INFO] [stdout] --> src/main.rs:58:13 [INFO] [stdout] | [INFO] [stdout] 58 | let commandosOpt = dm.load(¤tDir); [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `commandos_opt` [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/dirmando.rs:9:17 [INFO] [stdout] | [INFO] [stdout] 9 | #[derive(Debug, 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_Dirmando` [INFO] [stdout] 10 | pub struct Dirmando { [INFO] [stdout] | -------- `Dirmando` 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/dirmando.rs:9:28 [INFO] [stdout] | [INFO] [stdout] 9 | #[derive(Debug, 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_Dirmando` [INFO] [stdout] 10 | pub struct Dirmando { [INFO] [stdout] | -------- `Dirmando` 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: function `fromFile` should have a snake case name [INFO] [stdout] --> src/dirmando.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn fromFile(filePath: &str) -> Dirmando { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `from_file` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `filePath` should have a snake case name [INFO] [stdout] --> src/dirmando.rs:14:17 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn fromFile(filePath: &str) -> Dirmando { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `file_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `currentDirectory` should have a snake case name [INFO] [stdout] --> src/dirmando.rs:24:24 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn save(&self, currentDirectory: &String, command: &String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `current_directory` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `currentDirectory` should have a snake case name [INFO] [stdout] --> src/dirmando.rs:28:24 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn load(&self, currentDirectory: &String) -> Option<&Vec> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `current_directory` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 12 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `currentDirectory` [INFO] [stdout] --> src/dirmando.rs:24:24 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn save(&self, currentDirectory: &String, command: &String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_currentDirectory` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `command` [INFO] [stdout] --> src/dirmando.rs:24:51 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn save(&self, currentDirectory: &String, command: &String) { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_command` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `currentDir` should have a snake case name [INFO] [stdout] --> src/main.rs:56:13 [INFO] [stdout] | [INFO] [stdout] 56 | let currentDir = String::from(current_dir().unwrap().to_str().unwrap()); [INFO] [stdout] | ^^^^^^^^^^ help: convert the identifier to snake case: `current_dir` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `commandosOpt` should have a snake case name [INFO] [stdout] --> src/main.rs:58:13 [INFO] [stdout] | [INFO] [stdout] 58 | let commandosOpt = dm.load(¤tDir); [INFO] [stdout] | ^^^^^^^^^^^^ help: convert the identifier to snake case: `commandos_opt` [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/dirmando.rs:9:17 [INFO] [stdout] | [INFO] [stdout] 9 | #[derive(Debug, 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_Dirmando` [INFO] [stdout] 10 | pub struct Dirmando { [INFO] [stdout] | -------- `Dirmando` 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/dirmando.rs:9:28 [INFO] [stdout] | [INFO] [stdout] 9 | #[derive(Debug, 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_Dirmando` [INFO] [stdout] 10 | pub struct Dirmando { [INFO] [stdout] | -------- `Dirmando` 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: function `fromFile` should have a snake case name [INFO] [stdout] --> src/dirmando.rs:14:8 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn fromFile(filePath: &str) -> Dirmando { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `from_file` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `filePath` should have a snake case name [INFO] [stdout] --> src/dirmando.rs:14:17 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn fromFile(filePath: &str) -> Dirmando { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `file_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `currentDirectory` should have a snake case name [INFO] [stdout] --> src/dirmando.rs:24:24 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn save(&self, currentDirectory: &String, command: &String) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `current_directory` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `currentDirectory` should have a snake case name [INFO] [stdout] --> src/dirmando.rs:28:24 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn load(&self, currentDirectory: &String) -> Option<&Vec> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `current_directory` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 12 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.30s [INFO] running `Command { std: "docker" "inspect" "5db297ae78ba9a9579a5bfd5ace2635923abef77bb8622bb7bf1b69a19c8a41b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5db297ae78ba9a9579a5bfd5ace2635923abef77bb8622bb7bf1b69a19c8a41b", kill_on_drop: false }` [INFO] [stdout] 5db297ae78ba9a9579a5bfd5ace2635923abef77bb8622bb7bf1b69a19c8a41b