[INFO] cloning repository https://github.com/ryyanmapes/Minecraft-Recipe-Randomizer [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ryyanmapes/Minecraft-Recipe-Randomizer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fryyanmapes%2FMinecraft-Recipe-Randomizer", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fryyanmapes%2FMinecraft-Recipe-Randomizer'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ed090bb135f3aa550e74b84a4c56f28e0d6188e1 [INFO] testing ryyanmapes/Minecraft-Recipe-Randomizer against master#1871252fc8bb672d40787e67404e6eaae7059369 for pr-125151 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fryyanmapes%2FMinecraft-Recipe-Randomizer" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/ryyanmapes/Minecraft-Recipe-Randomizer on toolchain 1871252fc8bb672d40787e67404e6eaae7059369 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/ryyanmapes/Minecraft-Recipe-Randomizer [INFO] finished tweaking git repo https://github.com/ryyanmapes/Minecraft-Recipe-Randomizer [INFO] tweaked toml for git repo https://github.com/ryyanmapes/Minecraft-Recipe-Randomizer written to /workspace/builds/worker-7-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/ryyanmapes/Minecraft-Recipe-Randomizer 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" "+1871252fc8bb672d40787e67404e6eaae7059369" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 2c9bbfad71fb346352f72c4a366edc7bbc007072925c27d9b937494cceb7078c [INFO] running `Command { std: "docker" "start" "-a" "2c9bbfad71fb346352f72c4a366edc7bbc007072925c27d9b937494cceb7078c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "2c9bbfad71fb346352f72c4a366edc7bbc007072925c27d9b937494cceb7078c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2c9bbfad71fb346352f72c4a366edc7bbc007072925c27d9b937494cceb7078c", kill_on_drop: false }` [INFO] [stdout] 2c9bbfad71fb346352f72c4a366edc7bbc007072925c27d9b937494cceb7078c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 65057c47f3539d2197023c4e3773517f475f87bd4102f16d20920bbe305abe84 [INFO] running `Command { std: "docker" "start" "-a" "65057c47f3539d2197023c4e3773517f475f87bd4102f16d20920bbe305abe84", kill_on_drop: false }` [INFO] [stderr] Compiling rand_core v0.4.0 [INFO] [stderr] Compiling autocfg v0.1.4 [INFO] [stderr] Compiling libc v0.2.55 [INFO] [stderr] Compiling ryu v0.2.8 [INFO] [stderr] Compiling serde v1.0.91 [INFO] [stderr] Compiling itoa v0.4.4 [INFO] [stderr] Compiling rand_core v0.3.1 [INFO] [stderr] Compiling rand_jitter v0.1.4 [INFO] [stderr] Compiling rand_isaac v0.1.1 [INFO] [stderr] Compiling rand_hc v0.1.0 [INFO] [stderr] Compiling rand_xorshift v0.1.1 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling rand_os v0.1.3 [INFO] [stderr] Compiling serde_json v1.0.39 [INFO] [stderr] Compiling minecraft_randomizer v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Result` [INFO] [stdout] --> src/main.rs:7:18 [INFO] [stdout] | [INFO] [stdout] 7 | use serde_json::{Result, Value}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:77:6 [INFO] [stdout] | [INFO] [stdout] 77 | if ((iterations >= 5 && rng.gen_range(0,2) == 1) || craftable_recipes.len() == 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 77 - if ((iterations >= 5 && rng.gen_range(0,2) == 1) || craftable_recipes.len() == 0) { [INFO] [stdout] 77 + if (iterations >= 5 && rng.gen_range(0,2) == 1) || craftable_recipes.len() == 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:128:6 [INFO] [stdout] | [INFO] [stdout] 128 | if (remaining_products.len() == 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 128 - if (remaining_products.len() == 0) { [INFO] [stdout] 128 + if remaining_products.len() == 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `random_num_3` is never read [INFO] [stdout] --> src/main.rs:78:12 [INFO] [stdout] | [INFO] [stdout] 78 | let mut random_num_3: usize = 0; [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: unused variable: `s` [INFO] [stdout] --> src/main.rs:166:20 [INFO] [stdout] | [INFO] [stdout] 166 | Value::String(s) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:55:6 [INFO] [stdout] | [INFO] [stdout] 55 | let mut all_recipes = get_all_products(&all_recipe_files); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:57:6 [INFO] [stdout] | [INFO] [stdout] 57 | let mut all_products = get_products_from_recipes(&all_recipes); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:145:7 [INFO] [stdout] | [INFO] [stdout] 145 | let mut reader = BufReader::new(&f); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:155:9 [INFO] [stdout] | [INFO] [stdout] 155 | let mut result = obj.get_mut("result") [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:161:11 [INFO] [stdout] | [INFO] [stdout] 161 | let mut item = result_obj.get_mut("item") [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:215:6 [INFO] [stdout] | [INFO] [stdout] 215 | let mut filename = file.file_name().unwrap().to_str().unwrap().to_string(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:392:7 [INFO] [stdout] | [INFO] [stdout] 392 | let mut reader = BufReader::new(f); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:601:7 [INFO] [stdout] | [INFO] [stdout] 601 | let mut reader = BufReader::new(f); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:661:6 [INFO] [stdout] | [INFO] [stdout] 661 | let mut reader = BufReader::new(f); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_dead_end_products` is never used [INFO] [stdout] --> src/main.rs:237:4 [INFO] [stdout] | [INFO] [stdout] 237 | fn get_dead_end_products(recipes: &Vec, products: &Vec, tags: &HashMap) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:179:3 [INFO] [stdout] | [INFO] [stdout] 179 | f.set_len(0); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 179 | let _ = f.set_len(0); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:182:3 [INFO] [stdout] | [INFO] [stdout] 182 | writer.seek(SeekFrom::Start(0)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 182 | let _ = writer.seek(SeekFrom::Start(0)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:183:3 [INFO] [stdout] | [INFO] [stdout] 183 | writer.write(new_json.as_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 183 | let _ = writer.write(new_json.as_bytes()); [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] --> src/main.rs:647:11 [INFO] [stdout] | [INFO] [stdout] 647 | for a in fs::read_dir(recipes_dir) { [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] 647 | while let Ok(a) = fs::read_dir(recipes_dir) { [INFO] [stdout] | ~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 647 | if let Ok(a) = fs::read_dir(recipes_dir) { [INFO] [stdout] | ~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 19 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.93s [INFO] running `Command { std: "docker" "inspect" "65057c47f3539d2197023c4e3773517f475f87bd4102f16d20920bbe305abe84", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "65057c47f3539d2197023c4e3773517f475f87bd4102f16d20920bbe305abe84", kill_on_drop: false }` [INFO] [stdout] 65057c47f3539d2197023c4e3773517f475f87bd4102f16d20920bbe305abe84 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6cf34bd8bdbc06aab74f465bee5b72facdfebd83cc5c95a7f33b453cd0d26300 [INFO] running `Command { std: "docker" "start" "-a" "6cf34bd8bdbc06aab74f465bee5b72facdfebd83cc5c95a7f33b453cd0d26300", kill_on_drop: false }` [INFO] [stderr] Compiling minecraft_randomizer v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Result` [INFO] [stdout] --> src/main.rs:7:18 [INFO] [stdout] | [INFO] [stdout] 7 | use serde_json::{Result, Value}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:77:6 [INFO] [stdout] | [INFO] [stdout] 77 | if ((iterations >= 5 && rng.gen_range(0,2) == 1) || craftable_recipes.len() == 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 77 - if ((iterations >= 5 && rng.gen_range(0,2) == 1) || craftable_recipes.len() == 0) { [INFO] [stdout] 77 + if (iterations >= 5 && rng.gen_range(0,2) == 1) || craftable_recipes.len() == 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:128:6 [INFO] [stdout] | [INFO] [stdout] 128 | if (remaining_products.len() == 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 128 - if (remaining_products.len() == 0) { [INFO] [stdout] 128 + if remaining_products.len() == 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `random_num_3` is never read [INFO] [stdout] --> src/main.rs:78:12 [INFO] [stdout] | [INFO] [stdout] 78 | let mut random_num_3: usize = 0; [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: unused variable: `s` [INFO] [stdout] --> src/main.rs:166:20 [INFO] [stdout] | [INFO] [stdout] 166 | Value::String(s) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:55:6 [INFO] [stdout] | [INFO] [stdout] 55 | let mut all_recipes = get_all_products(&all_recipe_files); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:57:6 [INFO] [stdout] | [INFO] [stdout] 57 | let mut all_products = get_products_from_recipes(&all_recipes); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:145:7 [INFO] [stdout] | [INFO] [stdout] 145 | let mut reader = BufReader::new(&f); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:155:9 [INFO] [stdout] | [INFO] [stdout] 155 | let mut result = obj.get_mut("result") [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:161:11 [INFO] [stdout] | [INFO] [stdout] 161 | let mut item = result_obj.get_mut("item") [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:215:6 [INFO] [stdout] | [INFO] [stdout] 215 | let mut filename = file.file_name().unwrap().to_str().unwrap().to_string(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:392:7 [INFO] [stdout] | [INFO] [stdout] 392 | let mut reader = BufReader::new(f); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:601:7 [INFO] [stdout] | [INFO] [stdout] 601 | let mut reader = BufReader::new(f); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:661:6 [INFO] [stdout] | [INFO] [stdout] 661 | let mut reader = BufReader::new(f); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_dead_end_products` is never used [INFO] [stdout] --> src/main.rs:237:4 [INFO] [stdout] | [INFO] [stdout] 237 | fn get_dead_end_products(recipes: &Vec, products: &Vec, tags: &HashMap) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:179:3 [INFO] [stdout] | [INFO] [stdout] 179 | f.set_len(0); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 179 | let _ = f.set_len(0); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:182:3 [INFO] [stdout] | [INFO] [stdout] 182 | writer.seek(SeekFrom::Start(0)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 182 | let _ = writer.seek(SeekFrom::Start(0)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:183:3 [INFO] [stdout] | [INFO] [stdout] 183 | writer.write(new_json.as_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 183 | let _ = writer.write(new_json.as_bytes()); [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] --> src/main.rs:647:11 [INFO] [stdout] | [INFO] [stdout] 647 | for a in fs::read_dir(recipes_dir) { [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] 647 | while let Ok(a) = fs::read_dir(recipes_dir) { [INFO] [stdout] | ~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 647 | if let Ok(a) = fs::read_dir(recipes_dir) { [INFO] [stdout] | ~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 19 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.30s [INFO] running `Command { std: "docker" "inspect" "6cf34bd8bdbc06aab74f465bee5b72facdfebd83cc5c95a7f33b453cd0d26300", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6cf34bd8bdbc06aab74f465bee5b72facdfebd83cc5c95a7f33b453cd0d26300", kill_on_drop: false }` [INFO] [stdout] 6cf34bd8bdbc06aab74f465bee5b72facdfebd83cc5c95a7f33b453cd0d26300 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+1871252fc8bb672d40787e67404e6eaae7059369" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 30898f0bccd5838df4ae73110b1de4d6533f87a708547b9a3861cf128a39a54a [INFO] running `Command { std: "docker" "start" "-a" "30898f0bccd5838df4ae73110b1de4d6533f87a708547b9a3861cf128a39a54a", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `Result` [INFO] [stderr] --> src/main.rs:7:18 [INFO] [stderr] | [INFO] [stderr] 7 | use serde_json::{Result, Value}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:77:6 [INFO] [stderr] | [INFO] [stderr] 77 | if ((iterations >= 5 && rng.gen_range(0,2) == 1) || craftable_recipes.len() == 0) { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 77 - if ((iterations >= 5 && rng.gen_range(0,2) == 1) || craftable_recipes.len() == 0) { [INFO] [stderr] 77 + if (iterations >= 5 && rng.gen_range(0,2) == 1) || craftable_recipes.len() == 0 { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unnecessary parentheses around `if` condition [INFO] [stderr] --> src/main.rs:128:6 [INFO] [stderr] | [INFO] [stderr] 128 | if (remaining_products.len() == 0) { [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 128 - if (remaining_products.len() == 0) { [INFO] [stderr] 128 + if remaining_products.len() == 0 { [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: value assigned to `random_num_3` is never read [INFO] [stderr] --> src/main.rs:78:12 [INFO] [stderr] | [INFO] [stderr] 78 | let mut random_num_3: usize = 0; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: maybe it is overwritten before being read? [INFO] [stderr] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `s` [INFO] [stderr] --> src/main.rs:166:20 [INFO] [stderr] | [INFO] [stderr] 166 | Value::String(s) => { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:55:6 [INFO] [stderr] | [INFO] [stderr] 55 | let mut all_recipes = get_all_products(&all_recipe_files); [INFO] [stderr] | ----^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:57:6 [INFO] [stderr] | [INFO] [stderr] 57 | let mut all_products = get_products_from_recipes(&all_recipes); [INFO] [stderr] | ----^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:145:7 [INFO] [stderr] | [INFO] [stderr] 145 | let mut reader = BufReader::new(&f); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:155:9 [INFO] [stderr] | [INFO] [stderr] 155 | let mut result = obj.get_mut("result") [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:161:11 [INFO] [stderr] | [INFO] [stderr] 161 | let mut item = result_obj.get_mut("item") [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:215:6 [INFO] [stderr] | [INFO] [stderr] 215 | let mut filename = file.file_name().unwrap().to_str().unwrap().to_string(); [INFO] [stderr] | ----^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:392:7 [INFO] [stderr] | [INFO] [stderr] 392 | let mut reader = BufReader::new(f); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:601:7 [INFO] [stderr] | [INFO] [stderr] 601 | let mut reader = BufReader::new(f); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:661:6 [INFO] [stderr] | [INFO] [stderr] 661 | let mut reader = BufReader::new(f); [INFO] [stderr] | ----^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: function `get_dead_end_products` is never used [INFO] [stderr] --> src/main.rs:237:4 [INFO] [stderr] | [INFO] [stderr] 237 | fn get_dead_end_products(recipes: &Vec, products: &Vec, tags: &HashMap) -> Vec { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main.rs:179:3 [INFO] [stderr] | [INFO] [stderr] 179 | f.set_len(0); [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 179 | let _ = f.set_len(0); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main.rs:182:3 [INFO] [stderr] | [INFO] [stderr] 182 | writer.seek(SeekFrom::Start(0)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 182 | let _ = writer.seek(SeekFrom::Start(0)); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: unused `Result` that must be used [INFO] [stderr] --> src/main.rs:183:3 [INFO] [stderr] | [INFO] [stderr] 183 | writer.write(new_json.as_bytes()); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 183 | let _ = writer.write(new_json.as_bytes()); [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: for loop over a `Result`. This is more readably written as an `if let` statement [INFO] [stderr] --> src/main.rs:647:11 [INFO] [stderr] | [INFO] [stderr] 647 | for a in fs::read_dir(recipes_dir) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stderr] help: to check pattern in a loop use `while let` [INFO] [stderr] | [INFO] [stderr] 647 | while let Ok(a) = fs::read_dir(recipes_dir) { [INFO] [stderr] | ~~~~~~~~~~~~~ ~~~ [INFO] [stderr] help: consider using `if let` to clear intent [INFO] [stderr] | [INFO] [stderr] 647 | if let Ok(a) = fs::read_dir(recipes_dir) { [INFO] [stderr] | ~~~~~~~~~~ ~~~ [INFO] [stderr] [INFO] [stderr] warning: `minecraft_randomizer` (bin "minecraft_randomizer" test) generated 19 warnings (run `cargo fix --bin "minecraft_randomizer" --tests` to apply 12 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/minecraft_randomizer-334b224eb25066f5) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "30898f0bccd5838df4ae73110b1de4d6533f87a708547b9a3861cf128a39a54a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "30898f0bccd5838df4ae73110b1de4d6533f87a708547b9a3861cf128a39a54a", kill_on_drop: false }` [INFO] [stdout] 30898f0bccd5838df4ae73110b1de4d6533f87a708547b9a3861cf128a39a54a [INFO] testing ryyanmapes/Minecraft-Recipe-Randomizer against try#b642703cf9526da1e72c0b6755753b939a9c6b6d for pr-125151 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fryyanmapes%2FMinecraft-Recipe-Randomizer" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/ryyanmapes/Minecraft-Recipe-Randomizer on toolchain b642703cf9526da1e72c0b6755753b939a9c6b6d [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/ryyanmapes/Minecraft-Recipe-Randomizer [INFO] finished tweaking git repo https://github.com/ryyanmapes/Minecraft-Recipe-Randomizer [INFO] tweaked toml for git repo https://github.com/ryyanmapes/Minecraft-Recipe-Randomizer written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/ryyanmapes/Minecraft-Recipe-Randomizer 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" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a62b8dba63d3274946ba8264fe665f3a948aa0d78b852a415a9c784b1c45ee6d [INFO] running `Command { std: "docker" "start" "-a" "a62b8dba63d3274946ba8264fe665f3a948aa0d78b852a415a9c784b1c45ee6d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a62b8dba63d3274946ba8264fe665f3a948aa0d78b852a415a9c784b1c45ee6d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a62b8dba63d3274946ba8264fe665f3a948aa0d78b852a415a9c784b1c45ee6d", kill_on_drop: false }` [INFO] [stdout] a62b8dba63d3274946ba8264fe665f3a948aa0d78b852a415a9c784b1c45ee6d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b63296935942b91b6f8bbbbd8be473acf0bed2b53ecd08f797ca7613559d8786 [INFO] running `Command { std: "docker" "start" "-a" "b63296935942b91b6f8bbbbd8be473acf0bed2b53ecd08f797ca7613559d8786", kill_on_drop: false }` [INFO] [stderr] Compiling rand_core v0.4.0 [INFO] [stderr] Compiling autocfg v0.1.4 [INFO] [stderr] Compiling libc v0.2.55 [INFO] [stderr] Compiling ryu v0.2.8 [INFO] [stderr] Compiling serde v1.0.91 [INFO] [stderr] Compiling itoa v0.4.4 [INFO] [stderr] Compiling rand_core v0.3.1 [INFO] [stderr] Compiling rand_jitter v0.1.4 [INFO] [stderr] Compiling rand_xorshift v0.1.1 [INFO] [stderr] Compiling rand_isaac v0.1.1 [INFO] [stderr] Compiling rand_hc v0.1.0 [INFO] [stderr] Compiling rand_chacha v0.1.1 [INFO] [stderr] Compiling rand_pcg v0.1.2 [INFO] [stderr] Compiling rand v0.6.5 [INFO] [stderr] Compiling rand_os v0.1.3 [INFO] [stderr] Compiling serde_json v1.0.39 [INFO] [stderr] Compiling minecraft_randomizer v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `Result` [INFO] [stdout] --> src/main.rs:7:18 [INFO] [stdout] | [INFO] [stdout] 7 | use serde_json::{Result, Value}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:77:6 [INFO] [stdout] | [INFO] [stdout] 77 | if ((iterations >= 5 && rng.gen_range(0,2) == 1) || craftable_recipes.len() == 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 77 - if ((iterations >= 5 && rng.gen_range(0,2) == 1) || craftable_recipes.len() == 0) { [INFO] [stdout] 77 + if (iterations >= 5 && rng.gen_range(0,2) == 1) || craftable_recipes.len() == 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around `if` condition [INFO] [stdout] --> src/main.rs:128:6 [INFO] [stdout] | [INFO] [stdout] 128 | if (remaining_products.len() == 0) { [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 128 - if (remaining_products.len() == 0) { [INFO] [stdout] 128 + if remaining_products.len() == 0 { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `random_num_3` is never read [INFO] [stdout] --> src/main.rs:78:12 [INFO] [stdout] | [INFO] [stdout] 78 | let mut random_num_3: usize = 0; [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: unused variable: `s` [INFO] [stdout] --> src/main.rs:166:20 [INFO] [stdout] | [INFO] [stdout] 166 | Value::String(s) => { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_s` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:55:6 [INFO] [stdout] | [INFO] [stdout] 55 | let mut all_recipes = get_all_products(&all_recipe_files); [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:57:6 [INFO] [stdout] | [INFO] [stdout] 57 | let mut all_products = get_products_from_recipes(&all_recipes); [INFO] [stdout] | ----^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:145:7 [INFO] [stdout] | [INFO] [stdout] 145 | let mut reader = BufReader::new(&f); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:155:9 [INFO] [stdout] | [INFO] [stdout] 155 | let mut result = obj.get_mut("result") [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:161:11 [INFO] [stdout] | [INFO] [stdout] 161 | let mut item = result_obj.get_mut("item") [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:215:6 [INFO] [stdout] | [INFO] [stdout] 215 | let mut filename = file.file_name().unwrap().to_str().unwrap().to_string(); [INFO] [stdout] | ----^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:392:7 [INFO] [stdout] | [INFO] [stdout] 392 | let mut reader = BufReader::new(f); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:601:7 [INFO] [stdout] | [INFO] [stdout] 601 | let mut reader = BufReader::new(f); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:661:6 [INFO] [stdout] | [INFO] [stdout] 661 | let mut reader = BufReader::new(f); [INFO] [stdout] | ----^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `get_dead_end_products` is never used [INFO] [stdout] --> src/main.rs:237:4 [INFO] [stdout] | [INFO] [stdout] 237 | fn get_dead_end_products(recipes: &Vec, products: &Vec, tags: &HashMap) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:179:3 [INFO] [stdout] | [INFO] [stdout] 179 | f.set_len(0); [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 179 | let _ = f.set_len(0); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:182:3 [INFO] [stdout] | [INFO] [stdout] 182 | writer.seek(SeekFrom::Start(0)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 182 | let _ = writer.seek(SeekFrom::Start(0)); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/main.rs:183:3 [INFO] [stdout] | [INFO] [stdout] 183 | writer.write(new_json.as_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 183 | let _ = writer.write(new_json.as_bytes()); [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] --> src/main.rs:647:11 [INFO] [stdout] | [INFO] [stdout] 647 | for a in fs::read_dir(recipes_dir) { [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] 647 | while let Ok(a) = fs::read_dir(recipes_dir) { [INFO] [stdout] | ~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 647 | if let Ok(a) = fs::read_dir(recipes_dir) { [INFO] [stdout] | ~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 19 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.04s [INFO] running `Command { std: "docker" "inspect" "b63296935942b91b6f8bbbbd8be473acf0bed2b53ecd08f797ca7613559d8786", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b63296935942b91b6f8bbbbd8be473acf0bed2b53ecd08f797ca7613559d8786", kill_on_drop: false }` [INFO] [stdout] b63296935942b91b6f8bbbbd8be473acf0bed2b53ecd08f797ca7613559d8786 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:59a85a07ab18ca8720692f8e61effa1c651d9e2ca591e072c2b212bb91a6b8b5" "/opt/rustwide/cargo-home/bin/cargo" "+b642703cf9526da1e72c0b6755753b939a9c6b6d" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] db27e03a9dcfae95388bac88a881ceee4abe7f141f85cd6b9ba8e82c0da45aac [INFO] running `Command { std: "docker" "start" "-a" "db27e03a9dcfae95388bac88a881ceee4abe7f141f85cd6b9ba8e82c0da45aac", kill_on_drop: false }` [INFO] [stderr] time="2024-05-26T13:16:30Z" level=error msg="error waiting for container: " [INFO] [stderr] Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error mounting "/var/lib/crater-agent-workspace/cargo-home" to rootfs at "/opt/rustwide/cargo-home": mkdir /var/lib/docker/overlay2/cb014b008250c022b5781f30ee4574ccead45c4f1b647c6458eb5f6b0caebe60/merged/opt/rustwide/cargo-home: no space left on device: unknown [INFO] running `Command { std: "docker" "inspect" "db27e03a9dcfae95388bac88a881ceee4abe7f141f85cd6b9ba8e82c0da45aac", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "db27e03a9dcfae95388bac88a881ceee4abe7f141f85cd6b9ba8e82c0da45aac", kill_on_drop: false }` [INFO] [stdout] db27e03a9dcfae95388bac88a881ceee4abe7f141f85cd6b9ba8e82c0da45aac