[INFO] cloning repository https://github.com/HowDoIprintHelloWorld/Rescrypt [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/HowDoIprintHelloWorld/Rescrypt" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHowDoIprintHelloWorld%2FRescrypt", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHowDoIprintHelloWorld%2FRescrypt'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] b9139d8f786909c183e5325775d963333ec19f15 [INFO] checking HowDoIprintHelloWorld/Rescrypt against try#e071e73523bfcdcab2878dbf652ac8ebb9b9eee4 for pr-144386 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FHowDoIprintHelloWorld%2FRescrypt" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-2-tc2/source/.cargo/config.toml [INFO] started tweaking git repo https://github.com/HowDoIprintHelloWorld/Rescrypt [INFO] finished tweaking git repo https://github.com/HowDoIprintHelloWorld/Rescrypt [INFO] tweaked toml for git repo https://github.com/HowDoIprintHelloWorld/Rescrypt written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/HowDoIprintHelloWorld/Rescrypt on toolchain e071e73523bfcdcab2878dbf652ac8ebb9b9eee4 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e071e73523bfcdcab2878dbf652ac8ebb9b9eee4" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/HowDoIprintHelloWorld/Rescrypt 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" "+e071e73523bfcdcab2878dbf652ac8ebb9b9eee4" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+e071e73523bfcdcab2878dbf652ac8ebb9b9eee4" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 016a84e5a4a30e94ab9dd0489164befbfc3695f31665f4d2f520202ebae4c10d [INFO] running `Command { std: "docker" "start" "-a" "016a84e5a4a30e94ab9dd0489164befbfc3695f31665f4d2f520202ebae4c10d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "016a84e5a4a30e94ab9dd0489164befbfc3695f31665f4d2f520202ebae4c10d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "016a84e5a4a30e94ab9dd0489164befbfc3695f31665f4d2f520202ebae4c10d", kill_on_drop: false }` [INFO] [stdout] 016a84e5a4a30e94ab9dd0489164befbfc3695f31665f4d2f520202ebae4c10d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:cf8efcab8866f2cf4285301c7418e2f4f2a9b088c91ba69c40d5b659f81557f7" "/opt/rustwide/cargo-home/bin/cargo" "+e071e73523bfcdcab2878dbf652ac8ebb9b9eee4" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 26033df2bf4c6fcef3bd56504123ca92d5f3f14caea5bbdaf0e2a3ea99c9bb74 [INFO] running `Command { std: "docker" "start" "-a" "26033df2bf4c6fcef3bd56504123ca92d5f3f14caea5bbdaf0e2a3ea99c9bb74", kill_on_drop: false }` [INFO] [stderr] Checking my-project v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0384]: cannot assign twice to immutable variable `args` [INFO] [stdout] --> src/backend/prompt.rs:15:3 [INFO] [stdout] | [INFO] [stdout] 9 | let args = getArgs(command); [INFO] [stdout] | ---- first assignment to `args` [INFO] [stdout] ... [INFO] [stdout] 15 | args = replaceVars(args, variables); [INFO] [stdout] | ^^^^ cannot assign twice to immutable variable [INFO] [stdout] | [INFO] [stdout] help: consider making this binding mutable [INFO] [stdout] | [INFO] [stdout] 9 | let mut args = getArgs(command); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0382]: borrow of moved value: `variables` [INFO] [stdout] --> src/backend/prompt.rs:18:19 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn execute(command: String, input: String, variables: HashMap) -> (String, HashMap) { [INFO] [stdout] | --------- move occurs because `variables` has type `HashMap`, which does not implement the `Copy` trait [INFO] [stdout] ... [INFO] [stdout] 15 | args = replaceVars(args, variables); [INFO] [stdout] | --------- value moved here [INFO] [stdout] ... [INFO] [stdout] 18 | println!("{:?}",variables); [INFO] [stdout] | ^^^^^^^^^ value borrowed here after move [INFO] [stdout] | [INFO] [stdout] note: consider changing this parameter type in function `replaceVars` to borrow instead if owning the value isn't necessary [INFO] [stdout] --> src/backend/prompt.rs:23:46 [INFO] [stdout] | [INFO] [stdout] 23 | fn replaceVars(args: Vec, variables: HashMap) -> Vec { [INFO] [stdout] | ----------- in this function ^^^^^^^^^^^^^^^^^^^^^^^ this parameter takes ownership of the value [INFO] [stdout] = note: this error originates in the macro `$crate::format_args_nl` which comes from the expansion of the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider cloning the value if the performance cost is acceptable [INFO] [stdout] | [INFO] [stdout] 15 | args = replaceVars(args, variables.clone()); [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `newArgs` [INFO] [stdout] --> src/backend/prompt.rs:24:11 [INFO] [stdout] | [INFO] [stdout] 24 | let mut newArgs: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_newArgs` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `arg` is never read [INFO] [stdout] --> src/backend/prompt.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | arg = variables.get(&arg).clone().unwrap().to_string(); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `arg` is never read [INFO] [stdout] --> src/backend/prompt.rs:31:7 [INFO] [stdout] | [INFO] [stdout] 31 | arg = arg[1..].to_string(); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/backend/prompt.rs:24:7 [INFO] [stdout] | [INFO] [stdout] 24 | let mut newArgs: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0382]: use of moved value: `args` [INFO] [stdout] --> src/backend/prompt.rs:34:10 [INFO] [stdout] | [INFO] [stdout] 23 | fn replaceVars(args: Vec, variables: HashMap) -> Vec { [INFO] [stdout] | ---- move occurs because `args` has type `Vec`, which does not implement the `Copy` trait [INFO] [stdout] 24 | let mut newArgs: Vec = Vec::new(); [INFO] [stdout] 25 | for mut arg in args { [INFO] [stdout] | ---- `args` moved due to this implicit call to `.into_iter()` [INFO] [stdout] ... [INFO] [stdout] 34 | return args; [INFO] [stdout] | ^^^^ value used here after move [INFO] [stdout] | [INFO] [stdout] note: `into_iter` takes ownership of the receiver `self`, which moves `args` [INFO] [stdout] --> /rustc/e071e73523bfcdcab2878dbf652ac8ebb9b9eee4/library/core/src/iter/traits/collect.rs:310:18 [INFO] [stdout] help: consider iterating over a slice of the `Vec`'s content to avoid moving into the `for` loop [INFO] [stdout] | [INFO] [stdout] 25 | for mut arg in &args { [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0384]: cannot assign twice to immutable variable `args` [INFO] [stdout] --> src/backend/prompt.rs:15:3 [INFO] [stdout] | [INFO] [stdout] 9 | let args = getArgs(command); [INFO] [stdout] | ---- first assignment to `args` [INFO] [stdout] ... [INFO] [stdout] 15 | args = replaceVars(args, variables); [INFO] [stdout] | ^^^^ cannot assign twice to immutable variable [INFO] [stdout] | [INFO] [stdout] help: consider making this binding mutable [INFO] [stdout] | [INFO] [stdout] 9 | let mut args = getArgs(command); [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0382]: borrow of moved value: `variables` [INFO] [stdout] --> src/backend/prompt.rs:18:19 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn execute(command: String, input: String, variables: HashMap) -> (String, HashMap) { [INFO] [stdout] | --------- move occurs because `variables` has type `HashMap`, which does not implement the `Copy` trait [INFO] [stdout] ... [INFO] [stdout] 15 | args = replaceVars(args, variables); [INFO] [stdout] | --------- value moved here [INFO] [stdout] ... [INFO] [stdout] 18 | println!("{:?}",variables); [INFO] [stdout] | ^^^^^^^^^ value borrowed here after move [INFO] [stdout] | [INFO] [stdout] note: consider changing this parameter type in function `replaceVars` to borrow instead if owning the value isn't necessary [INFO] [stdout] --> src/backend/prompt.rs:23:46 [INFO] [stdout] | [INFO] [stdout] 23 | fn replaceVars(args: Vec, variables: HashMap) -> Vec { [INFO] [stdout] | ----------- in this function ^^^^^^^^^^^^^^^^^^^^^^^ this parameter takes ownership of the value [INFO] [stdout] = note: this error originates in the macro `$crate::format_args_nl` which comes from the expansion of the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: consider cloning the value if the performance cost is acceptable [INFO] [stdout] | [INFO] [stdout] 15 | args = replaceVars(args, variables.clone()); [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0382, E0384. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0382`. [INFO] [stdout] [INFO] [stdout] warning: unused variable: `newArgs` [INFO] [stdout] --> src/backend/prompt.rs:24:11 [INFO] [stdout] | [INFO] [stdout] 24 | let mut newArgs: Vec = Vec::new(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_newArgs` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `arg` is never read [INFO] [stdout] --> src/backend/prompt.rs:28:9 [INFO] [stdout] | [INFO] [stdout] 28 | arg = variables.get(&arg).clone().unwrap().to_string(); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `arg` is never read [INFO] [stdout] --> src/backend/prompt.rs:31:7 [INFO] [stdout] | [INFO] [stdout] 31 | arg = arg[1..].to_string(); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/backend/prompt.rs:24:7 [INFO] [stdout] | [INFO] [stdout] 24 | let mut newArgs: Vec = Vec::new(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0382]: use of moved value: `args` [INFO] [stdout] --> src/backend/prompt.rs:34:10 [INFO] [stdout] | [INFO] [stdout] 23 | fn replaceVars(args: Vec, variables: HashMap) -> Vec { [INFO] [stdout] | ---- move occurs because `args` has type `Vec`, which does not implement the `Copy` trait [INFO] [stdout] 24 | let mut newArgs: Vec = Vec::new(); [INFO] [stdout] 25 | for mut arg in args { [INFO] [stdout] | ---- `args` moved due to this implicit call to `.into_iter()` [INFO] [stdout] ... [INFO] [stdout] 34 | return args; [INFO] [stdout] | ^^^^ value used here after move [INFO] [stdout] | [INFO] [stdout] note: `into_iter` takes ownership of the receiver `self`, which moves `args` [INFO] [stdout] --> /rustc/e071e73523bfcdcab2878dbf652ac8ebb9b9eee4/library/core/src/iter/traits/collect.rs:310:18 [INFO] [stdout] help: consider iterating over a slice of the `Vec`'s content to avoid moving into the `for` loop [INFO] [stdout] | [INFO] [stdout] 25 | for mut arg in &args { [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `my-project` (bin "my-project") due to 3 previous errors; 4 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] Some errors have detailed explanations: E0382, E0384. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0382`. [INFO] [stdout] [INFO] [stderr] error: could not compile `my-project` (bin "my-project" test) due to 3 previous errors; 4 warnings emitted [INFO] running `Command { std: "docker" "inspect" "26033df2bf4c6fcef3bd56504123ca92d5f3f14caea5bbdaf0e2a3ea99c9bb74", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "26033df2bf4c6fcef3bd56504123ca92d5f3f14caea5bbdaf0e2a3ea99c9bb74", kill_on_drop: false }` [INFO] [stdout] 26033df2bf4c6fcef3bd56504123ca92d5f3f14caea5bbdaf0e2a3ea99c9bb74