[INFO] updating cached repository ryyanmapes/Minecraft-Recipe-Randomizer [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/ryyanmapes/Minecraft-Recipe-Randomizer [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/ryyanmapes/Minecraft-Recipe-Randomizer" "work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/gh/ryyanmapes/Minecraft-Recipe-Randomizer"` [INFO] [stderr] Cloning into 'work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/gh/ryyanmapes/Minecraft-Recipe-Randomizer'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/ryyanmapes/Minecraft-Recipe-Randomizer" "work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/ryyanmapes/Minecraft-Recipe-Randomizer"` [INFO] [stderr] Cloning into 'work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/ryyanmapes/Minecraft-Recipe-Randomizer'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] ed090bb135f3aa550e74b84a4c56f28e0d6188e1 [INFO] sha for GitHub repo ryyanmapes/Minecraft-Recipe-Randomizer: ed090bb135f3aa550e74b84a4c56f28e0d6188e1 [INFO] validating manifest of ryyanmapes/Minecraft-Recipe-Randomizer on toolchain master#60960a260f7b5c695fd0717311d72ce62dd4eb43 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+60960a260f7b5c695fd0717311d72ce62dd4eb43-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of ryyanmapes/Minecraft-Recipe-Randomizer on toolchain try#266783e4e09e4e9d5307c1c8e695659c58bbcac7 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+266783e4e09e4e9d5307c1c8e695659c58bbcac7-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing ryyanmapes/Minecraft-Recipe-Randomizer [INFO] finished frobbing ryyanmapes/Minecraft-Recipe-Randomizer [INFO] frobbed toml for ryyanmapes/Minecraft-Recipe-Randomizer written to work/ex/pr-63376/sources/master#60960a260f7b5c695fd0717311d72ce62dd4eb43/gh/ryyanmapes/Minecraft-Recipe-Randomizer/Cargo.toml [INFO] started frobbing ryyanmapes/Minecraft-Recipe-Randomizer [INFO] finished frobbing ryyanmapes/Minecraft-Recipe-Randomizer [INFO] frobbed toml for ryyanmapes/Minecraft-Recipe-Randomizer written to work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/ryyanmapes/Minecraft-Recipe-Randomizer/Cargo.toml [INFO] crate ryyanmapes/Minecraft-Recipe-Randomizer already has a lockfile, it will not be regenerated [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+60960a260f7b5c695fd0717311d72ce62dd4eb43-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+266783e4e09e4e9d5307c1c8e695659c58bbcac7-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking ryyanmapes/Minecraft-Recipe-Randomizer against try#266783e4e09e4e9d5307c1c8e695659c58bbcac7 for pr-63376 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-63376/worker-3/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-63376/sources/try#266783e4e09e4e9d5307c1c8e695659c58bbcac7/gh/ryyanmapes/Minecraft-Recipe-Randomizer:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+266783e4e09e4e9d5307c1c8e695659c58bbcac7-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 3096c73fc7572d3aee81daace1fac122bf049590682812706aa54356d180b75c [INFO] running `"docker" "start" "-a" "3096c73fc7572d3aee81daace1fac122bf049590682812706aa54356d180b75c"` [INFO] [stderr] Checking minecraft_randomizer v0.1.0 (/opt/crater/workdir) [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [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] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses [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] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [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: consider prefixing 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] 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] = note: `#[warn(unused_assignments)]` on by default [INFO] [stderr] = help: maybe it is overwritten before being read? [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: consider prefixing with an underscore: `_s` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [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: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: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 is never used: `get_dead_end_products` [INFO] [stderr] --> src/main.rs:237:1 [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 `std::result::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: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::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] [INFO] [stderr] warning: unused `std::result::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] [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 is never used: `get_dead_end_products` [INFO] [stderr] --> src/main.rs:237:1 [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 `std::result::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: `#[warn(unused_must_use)]` on by default [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::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] [INFO] [stderr] warning: unused `std::result::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] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1.47s [INFO] running `"docker" "inspect" "3096c73fc7572d3aee81daace1fac122bf049590682812706aa54356d180b75c"` [INFO] running `"docker" "rm" "-f" "3096c73fc7572d3aee81daace1fac122bf049590682812706aa54356d180b75c"` [INFO] [stdout] 3096c73fc7572d3aee81daace1fac122bf049590682812706aa54356d180b75c