[INFO] updating cached repository ajmwagar/edu [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/ajmwagar/edu [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/ajmwagar/edu" "work/ex/pr-60914/sources/master#39401465da4ce27aeeb2c2a26133ac35c63aa515/gh/ajmwagar/edu"` [INFO] [stderr] Cloning into 'work/ex/pr-60914/sources/master#39401465da4ce27aeeb2c2a26133ac35c63aa515/gh/ajmwagar/edu'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/ajmwagar/edu" "work/ex/pr-60914/sources/try#f45cc3094ee337acd688771b9234318046b0572d/gh/ajmwagar/edu"` [INFO] [stderr] Cloning into 'work/ex/pr-60914/sources/try#f45cc3094ee337acd688771b9234318046b0572d/gh/ajmwagar/edu'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 9cd292f5a977de605cdf2ee017905b4037a011d7 [INFO] sha for GitHub repo ajmwagar/edu: 9cd292f5a977de605cdf2ee017905b4037a011d7 [INFO] validating manifest of ajmwagar/edu on toolchain master#39401465da4ce27aeeb2c2a26133ac35c63aa515 [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+39401465da4ce27aeeb2c2a26133ac35c63aa515-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of ajmwagar/edu on toolchain try#f45cc3094ee337acd688771b9234318046b0572d [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+f45cc3094ee337acd688771b9234318046b0572d-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing ajmwagar/edu [INFO] finished frobbing ajmwagar/edu [INFO] frobbed toml for ajmwagar/edu written to work/ex/pr-60914/sources/master#39401465da4ce27aeeb2c2a26133ac35c63aa515/gh/ajmwagar/edu/Cargo.toml [INFO] started frobbing ajmwagar/edu [INFO] finished frobbing ajmwagar/edu [INFO] frobbed toml for ajmwagar/edu written to work/ex/pr-60914/sources/try#f45cc3094ee337acd688771b9234318046b0572d/gh/ajmwagar/edu/Cargo.toml [INFO] crate ajmwagar/edu already has a lockfile, it will not be regenerated [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+39401465da4ce27aeeb2c2a26133ac35c63aa515-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/crater-raid/crater/work/local/cargo-home/bin/cargo" "+f45cc3094ee337acd688771b9234318046b0572d-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking ajmwagar/edu against master#39401465da4ce27aeeb2c2a26133ac35c63aa515 for pr-60914 [INFO] running `"docker" "create" "-v" "/mnt/crater-raid/crater/work/local/target-dirs/pr-60914/worker-1/master#39401465da4ce27aeeb2c2a26133ac35c63aa515:/opt/crater/target:rw,Z" "-v" "/mnt/crater-raid/crater/work/ex/pr-60914/sources/master#39401465da4ce27aeeb2c2a26133ac35c63aa515/gh/ajmwagar/edu:/opt/crater/workdir:ro,Z" "-v" "/mnt/crater-raid/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/crater-raid/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" "+39401465da4ce27aeeb2c2a26133ac35c63aa515-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 552153d8cda1e9101e3b4a9f346e2eafcc286d459dc41b5dd82fbdf37d68b34c [INFO] running `"docker" "start" "-a" "552153d8cda1e9101e3b4a9f346e2eafcc286d459dc41b5dd82fbdf37d68b34c"` [INFO] [stderr] Compiling syn v0.15.29 [INFO] [stderr] Compiling serde_derive v1.0.89 [INFO] [stderr] Checking edu v0.1.0 (/opt/crater/workdir) [INFO] [stderr] warning: unused variable: `asg` [INFO] [stderr] --> src/lib.rs:29:25 [INFO] [stderr] | [INFO] [stderr] 29 | pub fn new_assignment(asg: &Assignment) -> Result<(), Box> { [INFO] [stderr] | ^^^ help: consider prefixing with an underscore: `_asg` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `asg` [INFO] [stderr] --> src/lib.rs:34:26 [INFO] [stderr] | [INFO] [stderr] 34 | pub fn open_assignment(asg: &Assignment) -> Result<(), Box> { [INFO] [stderr] | ^^^ help: consider prefixing with an underscore: `_asg` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `class` [INFO] [stderr] --> src/lib.rs:39:26 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn build_directory(class: &Class) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_class` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `asg` [INFO] [stderr] --> src/lib.rs:44:27 [INFO] [stderr] | [INFO] [stderr] 44 | pub fn build_assignment(asg: &Assignment) -> Result<(), Box> { [INFO] [stderr] | ^^^ help: consider prefixing with an underscore: `_asg` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `asg` [INFO] [stderr] --> src/lib.rs:29:25 [INFO] [stderr] | [INFO] [stderr] 29 | pub fn new_assignment(asg: &Assignment) -> Result<(), Box> { [INFO] [stderr] | ^^^ help: consider prefixing with an underscore: `_asg` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `asg` [INFO] [stderr] --> src/lib.rs:34:26 [INFO] [stderr] | [INFO] [stderr] 34 | pub fn open_assignment(asg: &Assignment) -> Result<(), Box> { [INFO] [stderr] | ^^^ help: consider prefixing with an underscore: `_asg` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `class` [INFO] [stderr] --> src/lib.rs:39:26 [INFO] [stderr] | [INFO] [stderr] 39 | pub fn build_directory(class: &Class) -> Result<(), Box> { [INFO] [stderr] | ^^^^^ help: consider prefixing with an underscore: `_class` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `asg` [INFO] [stderr] --> src/lib.rs:44:27 [INFO] [stderr] | [INFO] [stderr] 44 | pub fn build_assignment(asg: &Assignment) -> Result<(), Box> { [INFO] [stderr] | ^^^ help: consider prefixing with an underscore: `_asg` [INFO] [stderr] [INFO] [stderr] warning: structure field `Classes` should have a snake case name [INFO] [stderr] --> src/lib.rs:18:13 [INFO] [stderr] | [INFO] [stderr] 18 | pub Classes: Vec [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `classes` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] warning: structure field `Classes` should have a snake case name [INFO] [stderr] --> src/lib.rs:18:13 [INFO] [stderr] | [INFO] [stderr] 18 | pub Classes: Vec [INFO] [stderr] | ^^^^^^^ help: convert the identifier to snake case: `classes` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(non_snake_case)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `edu::conf::*` [INFO] [stderr] --> tests/unit.rs:145:5 [INFO] [stderr] | [INFO] [stderr] 145 | use edu::conf::*; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `edu::prelude::*` [INFO] [stderr] --> src/main.rs:6:7 [INFO] [stderr] | [INFO] [stderr] 6 | use edu::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `matches` [INFO] [stderr] --> src/main.rs:78:20 [INFO] [stderr] | [INFO] [stderr] 78 | else if let Some(matches) = matches.subcommand_matches("archive") { [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_matches` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `matches` [INFO] [stderr] --> src/main.rs:85:20 [INFO] [stderr] | [INFO] [stderr] 85 | else if let Some(matches) = matches.subcommand_matches("unarchive") { [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_matches` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `matches` [INFO] [stderr] --> src/main.rs:92:20 [INFO] [stderr] | [INFO] [stderr] 92 | else if let Some(matches) = matches.subcommand_matches("finish") { [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_matches` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `matches` [INFO] [stderr] --> src/main.rs:99:20 [INFO] [stderr] | [INFO] [stderr] 99 | else if let Some(matches) = matches.subcommand_matches("unfinish") { [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_matches` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `matches` [INFO] [stderr] --> src/main.rs:106:20 [INFO] [stderr] | [INFO] [stderr] 106 | else if let Some(matches) = matches.subcommand_matches("open") { [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_matches` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `matches` [INFO] [stderr] --> src/main.rs:113:20 [INFO] [stderr] | [INFO] [stderr] 113 | else if let Some(matches) = matches.subcommand_matches("build") { [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_matches` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `matches` [INFO] [stderr] --> src/main.rs:120:20 [INFO] [stderr] | [INFO] [stderr] 120 | else if let Some(matches) = matches.subcommand_matches("config") { [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_matches` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:67:9 [INFO] [stderr] | [INFO] [stderr] 67 | let mut asg = matches.value_of("ASG").unwrap(); [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: unused import: `edu::prelude::*` [INFO] [stderr] --> src/main.rs:6:7 [INFO] [stderr] | [INFO] [stderr] 6 | use edu::prelude::*; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `matches` [INFO] [stderr] --> src/main.rs:78:20 [INFO] [stderr] | [INFO] [stderr] 78 | else if let Some(matches) = matches.subcommand_matches("archive") { [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_matches` [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `matches` [INFO] [stderr] --> src/main.rs:85:20 [INFO] [stderr] | [INFO] [stderr] 85 | else if let Some(matches) = matches.subcommand_matches("unarchive") { [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_matches` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `matches` [INFO] [stderr] --> src/main.rs:92:20 [INFO] [stderr] | [INFO] [stderr] 92 | else if let Some(matches) = matches.subcommand_matches("finish") { [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_matches` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `matches` [INFO] [stderr] --> src/main.rs:99:20 [INFO] [stderr] | [INFO] [stderr] 99 | else if let Some(matches) = matches.subcommand_matches("unfinish") { [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_matches` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `matches` [INFO] [stderr] --> src/main.rs:106:20 [INFO] [stderr] | [INFO] [stderr] 106 | else if let Some(matches) = matches.subcommand_matches("open") { [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_matches` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `matches` [INFO] [stderr] --> src/main.rs:113:20 [INFO] [stderr] | [INFO] [stderr] 113 | else if let Some(matches) = matches.subcommand_matches("build") { [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_matches` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `matches` [INFO] [stderr] --> src/main.rs:120:20 [INFO] [stderr] | [INFO] [stderr] 120 | else if let Some(matches) = matches.subcommand_matches("config") { [INFO] [stderr] | ^^^^^^^ help: consider prefixing with an underscore: `_matches` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:67:9 [INFO] [stderr] | [INFO] [stderr] 67 | let mut asg = matches.value_of("ASG").unwrap(); [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] Finished dev [unoptimized + debuginfo] target(s) in 19.72s [INFO] running `"docker" "inspect" "552153d8cda1e9101e3b4a9f346e2eafcc286d459dc41b5dd82fbdf37d68b34c"` [INFO] running `"docker" "rm" "-f" "552153d8cda1e9101e3b4a9f346e2eafcc286d459dc41b5dd82fbdf37d68b34c"` [INFO] [stdout] 552153d8cda1e9101e3b4a9f346e2eafcc286d459dc41b5dd82fbdf37d68b34c