[INFO] updating cached repository https://github.com/proycon/vocage [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "-c" "remote.origin.fetch=refs/heads/*:refs/heads/*" "fetch" "origin" "--force" "--prune", kill_on_drop: false }` [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] e67f7d1f498b63b01e6a26d1ff825adfa9670318 [INFO] testing proycon/vocage against try#03a1ea71b075ab964b5278bc6e74cd6c52c36ee0 for pr-74409 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fproycon%2Fvocage" "/workspace/builds/worker-5/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/proycon/vocage on toolchain 03a1ea71b075ab964b5278bc6e74cd6c52c36ee0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/proycon/vocage [INFO] finished tweaking git repo https://github.com/proycon/vocage [INFO] tweaked toml for git repo https://github.com/proycon/vocage written to /workspace/builds/worker-5/source/Cargo.toml [INFO] crate git repo https://github.com/proycon/vocage already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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" "MAP_USER_ID=0" "-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" "--network" "none" "rustops/crates-build-env@sha256:d9fbb4e2287ab3795bdefaf705efb7541a8875c13bce71e067d6b01dc5ed759b" "/opt/rustwide/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a620a3d5706f7a222ea266cd95e8462384a0e909aaea1f0a4458cd3515a313fc [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "a620a3d5706f7a222ea266cd95e8462384a0e909aaea1f0a4458cd3515a313fc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a620a3d5706f7a222ea266cd95e8462384a0e909aaea1f0a4458cd3515a313fc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a620a3d5706f7a222ea266cd95e8462384a0e909aaea1f0a4458cd3515a313fc", kill_on_drop: false }` [INFO] [stdout] a620a3d5706f7a222ea266cd95e8462384a0e909aaea1f0a4458cd3515a313fc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:d9fbb4e2287ab3795bdefaf705efb7541a8875c13bce71e067d6b01dc5ed759b" "/opt/rustwide/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f429b6c6f93c2752e01e4fa19b9916f6ff6df4c0c099b587e58639a62e9bbae0 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "f429b6c6f93c2752e01e4fa19b9916f6ff6df4c0c099b587e58639a62e9bbae0", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.0.0 [INFO] [stderr] Compiling serde v1.0.111 [INFO] [stderr] Compiling byteorder v1.3.4 [INFO] [stderr] Compiling proc-macro2 v1.0.18 [INFO] [stderr] Compiling ryu v1.0.5 [INFO] [stderr] Compiling serde_json v1.0.55 [INFO] [stderr] Compiling linked-hash-map v0.5.3 [INFO] [stderr] Compiling itoa v0.4.5 [INFO] [stderr] Compiling vec_map v0.8.2 [INFO] [stderr] Compiling regex-syntax v0.6.18 [INFO] [stderr] Compiling dtoa v0.4.5 [INFO] [stderr] Compiling simple-error v0.2.1 [INFO] [stderr] Compiling md5 v0.7.0 [INFO] [stderr] Compiling thread_local v1.0.1 [INFO] [stderr] Compiling aho-corasick v0.7.10 [INFO] [stderr] Compiling csv-core v0.1.10 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling dirs v2.0.2 [INFO] [stderr] Compiling clap v2.33.1 [INFO] [stderr] Compiling yaml-rust v0.4.4 [INFO] [stderr] Compiling num-traits v0.2.12 [INFO] [stderr] Compiling num-integer v0.1.43 [INFO] [stderr] Compiling regex-automata v0.1.9 [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Compiling syn v1.0.31 [INFO] [stderr] Compiling chrono v0.4.11 [INFO] [stderr] Compiling regex v1.3.9 [INFO] [stderr] Compiling serde_derive v1.0.111 [INFO] [stderr] Compiling bstr v0.2.13 [INFO] [stderr] Compiling serde_yaml v0.8.13 [INFO] [stderr] Compiling csv v1.1.3 [INFO] [stderr] Compiling vocage v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `Digest`, `compute` [INFO] [stdout] --> src/lib.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | use md5::{compute,Digest}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> src/lib.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | use std::path::{Path,PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::FromIterator` [INFO] [stdout] --> src/lib.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | use std::iter::FromIterator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `thread_rng` [INFO] [stdout] --> src/lib.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 25 | use rand::{thread_rng,Rng}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `allow_next_deck` [INFO] [stdout] --> src/lib.rs:779:33 [INFO] [stdout] | [INFO] [stdout] 779 | pub fn next_card(&mut self, allow_next_deck: bool) -> Result<(), SimpleError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_allow_next_deck` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: cannot borrow `self.lastvisit` as mutable because it is also borrowed as immutable [INFO] [stdout] --> src/lib.rs:547:13 [INFO] [stdout] | [INFO] [stdout] 546 | if let Some(card) = self.current_card() { [INFO] [stdout] | ---- immutable borrow occurs here [INFO] [stdout] 547 | self.lastvisit.insert(card.id.to_string(),now); [INFO] [stdout] | ^^^^^^^^^^^^^^ ------- immutable borrow later used here [INFO] [stdout] | | [INFO] [stdout] | mutable borrow occurs here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mutable_borrow_reservation_conflict)]` on by default [INFO] [stdout] = warning: this borrowing pattern was not meant to be accepted, and may become a hard error in the future [INFO] [stdout] = note: for more information, see issue #59159 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/lib.rs:379:13 [INFO] [stdout] | [INFO] [stdout] 379 | fs::write(filename, data); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 7 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/main.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> src/main.rs:14:17 [INFO] [stdout] | [INFO] [stdout] 14 | use std::path::{Path,PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Arg`, `SubCommand` [INFO] [stdout] --> src/main.rs:17:17 [INFO] [stdout] | [INFO] [stdout] 17 | use clap::{App, Arg, SubCommand}; [INFO] [stdout] | ^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `regex::Regex` [INFO] [stdout] --> src/main.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use regex::Regex; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Rng`, `thread_rng` [INFO] [stdout] --> src/main.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 19 | use rand::{thread_rng,Rng}; [INFO] [stdout] | ^^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::simple_error::SimpleError` [INFO] [stdout] --> src/main.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use self::simple_error::SimpleError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SystemTime`, `UNIX_EPOCH` [INFO] [stdout] --> src/main.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `success` [INFO] [stdout] --> src/main.rs:768:9 [INFO] [stdout] | [INFO] [stdout] 768 | let mut success = true; //determines the exit code [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_success` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `handled` is never read [INFO] [stdout] --> src/main.rs:282:13 [INFO] [stdout] | [INFO] [stdout] 282 | let mut handled = match self.mode { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `datadir` [INFO] [stdout] --> src/main.rs:281:53 [INFO] [stdout] | [INFO] [stdout] 281 | fn handle_response(&mut self, response: String, datadir: &str, sessiondir: &str, present_card: &mut bool) -> bool { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_datadir` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sessiondir` [INFO] [stdout] --> src/main.rs:281:68 [INFO] [stdout] | [INFO] [stdout] 281 | fn handle_response(&mut self, response: String, datadir: &str, sessiondir: &str, present_card: &mut bool) -> bool { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sessiondir` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:290:13 [INFO] [stdout] | [INFO] [stdout] 290 | let mut newcommand = if response.is_empty() { [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:768:9 [INFO] [stdout] | [INFO] [stdout] 768 | let mut success = true; //determines the exit code [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:426:28 [INFO] [stdout] | [INFO] [stdout] 426 | ... self.select_deck(deck_index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:429:24 [INFO] [stdout] | [INFO] [stdout] 429 | self.select_deck_by_name(deck_value); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:442:17 [INFO] [stdout] | [INFO] [stdout] 442 | self.next_deck().map_err(|e| eprintln!("{}",e) ); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:447:17 [INFO] [stdout] | [INFO] [stdout] 447 | self.previous_deck().map_err(|e| eprintln!("{}",e) ); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:461:28 [INFO] [stdout] | [INFO] [stdout] 461 | ... self.select_card(card_index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:480:17 [INFO] [stdout] | [INFO] [stdout] 480 | self.promote().map_err(|e| eprintln!("{}",e) ); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:485:17 [INFO] [stdout] | [INFO] [stdout] 485 | self.demote().map_err(|e| eprintln!("{}",e) ); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:490:17 [INFO] [stdout] | [INFO] [stdout] 490 | self.next_card(true).map_err(|e| eprintln!("{}",e) ); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:495:17 [INFO] [stdout] | [INFO] [stdout] 495 | self.previous_card().map_err(|e| eprintln!("{}",e) ); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:500:17 [INFO] [stdout] | [INFO] [stdout] 500 | self.shuffle().map_err(|e| eprintln!("{}",e) ); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 23 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 30s [INFO] running `Command { std: "docker" "inspect" "f429b6c6f93c2752e01e4fa19b9916f6ff6df4c0c099b587e58639a62e9bbae0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f429b6c6f93c2752e01e4fa19b9916f6ff6df4c0c099b587e58639a62e9bbae0", kill_on_drop: false }` [INFO] [stdout] f429b6c6f93c2752e01e4fa19b9916f6ff6df4c0c099b587e58639a62e9bbae0 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:d9fbb4e2287ab3795bdefaf705efb7541a8875c13bce71e067d6b01dc5ed759b" "/opt/rustwide/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5e6a8c4860877add837fe4d0100cc5fc5d5fd9a93a9bcd367a4176830aedcb45 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "5e6a8c4860877add837fe4d0100cc5fc5d5fd9a93a9bcd367a4176830aedcb45", kill_on_drop: false }` [INFO] [stderr] Compiling vocage v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `Digest`, `compute` [INFO] [stdout] --> src/lib.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | use md5::{compute,Digest}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> src/lib.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | use std::path::{Path,PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::FromIterator` [INFO] [stdout] --> src/lib.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | use std::iter::FromIterator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `thread_rng` [INFO] [stdout] --> src/lib.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 25 | use rand::{thread_rng,Rng}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `allow_next_deck` [INFO] [stdout] --> src/lib.rs:779:33 [INFO] [stdout] | [INFO] [stdout] 779 | pub fn next_card(&mut self, allow_next_deck: bool) -> Result<(), SimpleError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_allow_next_deck` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: cannot borrow `self.lastvisit` as mutable because it is also borrowed as immutable [INFO] [stdout] --> src/lib.rs:547:13 [INFO] [stdout] | [INFO] [stdout] 546 | if let Some(card) = self.current_card() { [INFO] [stdout] | ---- immutable borrow occurs here [INFO] [stdout] 547 | self.lastvisit.insert(card.id.to_string(),now); [INFO] [stdout] | ^^^^^^^^^^^^^^ ------- immutable borrow later used here [INFO] [stdout] | | [INFO] [stdout] | mutable borrow occurs here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mutable_borrow_reservation_conflict)]` on by default [INFO] [stdout] = warning: this borrowing pattern was not meant to be accepted, and may become a hard error in the future [INFO] [stdout] = note: for more information, see issue #59159 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/lib.rs:379:13 [INFO] [stdout] | [INFO] [stdout] 379 | fs::write(filename, data); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 7 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `#[macro_use]` import [INFO] [stdout] --> src/main.rs:4:1 [INFO] [stdout] | [INFO] [stdout] 4 | #[macro_use] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> src/main.rs:14:17 [INFO] [stdout] | [INFO] [stdout] 14 | use std::path::{Path,PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Arg`, `SubCommand` [INFO] [stdout] --> src/main.rs:17:17 [INFO] [stdout] | [INFO] [stdout] 17 | use clap::{App, Arg, SubCommand}; [INFO] [stdout] | ^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `regex::Regex` [INFO] [stdout] --> src/main.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 18 | use regex::Regex; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Rng`, `thread_rng` [INFO] [stdout] --> src/main.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 19 | use rand::{thread_rng,Rng}; [INFO] [stdout] | ^^^^^^^^^^ ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self::simple_error::SimpleError` [INFO] [stdout] --> src/main.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | use self::simple_error::SimpleError; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `SystemTime`, `UNIX_EPOCH` [INFO] [stdout] --> src/main.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Digest`, `compute` [INFO] [stdout] --> src/lib.rs:21:11 [INFO] [stdout] | [INFO] [stdout] 21 | use md5::{compute,Digest}; [INFO] [stdout] | ^^^^^^^ ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Path` [INFO] [stdout] --> src/lib.rs:22:17 [INFO] [stdout] | [INFO] [stdout] 22 | use std::path::{Path,PathBuf}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::FromIterator` [INFO] [stdout] --> src/lib.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | use std::iter::FromIterator; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `thread_rng` [INFO] [stdout] --> src/lib.rs:25:12 [INFO] [stdout] | [INFO] [stdout] 25 | use rand::{thread_rng,Rng}; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `success` [INFO] [stdout] --> src/main.rs:768:9 [INFO] [stdout] | [INFO] [stdout] 768 | let mut success = true; //determines the exit code [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_success` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `handled` is never read [INFO] [stdout] --> src/main.rs:282:13 [INFO] [stdout] | [INFO] [stdout] 282 | let mut handled = match self.mode { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `datadir` [INFO] [stdout] --> src/main.rs:281:53 [INFO] [stdout] | [INFO] [stdout] 281 | fn handle_response(&mut self, response: String, datadir: &str, sessiondir: &str, present_card: &mut bool) -> bool { [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_datadir` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sessiondir` [INFO] [stdout] --> src/main.rs:281:68 [INFO] [stdout] | [INFO] [stdout] 281 | fn handle_response(&mut self, response: String, datadir: &str, sessiondir: &str, present_card: &mut bool) -> bool { [INFO] [stdout] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sessiondir` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:290:13 [INFO] [stdout] | [INFO] [stdout] 290 | let mut newcommand = if response.is_empty() { [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:768:9 [INFO] [stdout] | [INFO] [stdout] 768 | let mut success = true; //determines the exit code [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:426:28 [INFO] [stdout] | [INFO] [stdout] 426 | ... self.select_deck(deck_index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:429:24 [INFO] [stdout] | [INFO] [stdout] 429 | self.select_deck_by_name(deck_value); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:442:17 [INFO] [stdout] | [INFO] [stdout] 442 | self.next_deck().map_err(|e| eprintln!("{}",e) ); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:447:17 [INFO] [stdout] | [INFO] [stdout] 447 | self.previous_deck().map_err(|e| eprintln!("{}",e) ); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:461:28 [INFO] [stdout] | [INFO] [stdout] 461 | ... self.select_card(card_index); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:480:17 [INFO] [stdout] | [INFO] [stdout] 480 | self.promote().map_err(|e| eprintln!("{}",e) ); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:485:17 [INFO] [stdout] | [INFO] [stdout] 485 | self.demote().map_err(|e| eprintln!("{}",e) ); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:490:17 [INFO] [stdout] | [INFO] [stdout] 490 | self.next_card(true).map_err(|e| eprintln!("{}",e) ); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:495:17 [INFO] [stdout] | [INFO] [stdout] 495 | self.previous_card().map_err(|e| eprintln!("{}",e) ); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:500:17 [INFO] [stdout] | [INFO] [stdout] 500 | self.shuffle().map_err(|e| eprintln!("{}",e) ); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `allow_next_deck` [INFO] [stdout] --> src/lib.rs:779:33 [INFO] [stdout] | [INFO] [stdout] 779 | pub fn next_card(&mut self, allow_next_deck: bool) -> Result<(), SimpleError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_allow_next_deck` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: cannot borrow `self.lastvisit` as mutable because it is also borrowed as immutable [INFO] [stdout] --> src/lib.rs:547:13 [INFO] [stdout] | [INFO] [stdout] 546 | if let Some(card) = self.current_card() { [INFO] [stdout] | ---- immutable borrow occurs here [INFO] [stdout] 547 | self.lastvisit.insert(card.id.to_string(),now); [INFO] [stdout] | ^^^^^^^^^^^^^^ ------- immutable borrow later used here [INFO] [stdout] | | [INFO] [stdout] | mutable borrow occurs here [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mutable_borrow_reservation_conflict)]` on by default [INFO] [stdout] = warning: this borrowing pattern was not meant to be accepted, and may become a hard error in the future [INFO] [stdout] = note: for more information, see issue #59159 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/lib.rs:379:13 [INFO] [stdout] | [INFO] [stdout] 379 | fs::write(filename, data); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 23 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 7 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 2.23s [INFO] running `Command { std: "docker" "inspect" "5e6a8c4860877add837fe4d0100cc5fc5d5fd9a93a9bcd367a4176830aedcb45", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5e6a8c4860877add837fe4d0100cc5fc5d5fd9a93a9bcd367a4176830aedcb45", kill_on_drop: false }` [INFO] [stdout] 5e6a8c4860877add837fe4d0100cc5fc5d5fd9a93a9bcd367a4176830aedcb45 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env@sha256:d9fbb4e2287ab3795bdefaf705efb7541a8875c13bce71e067d6b01dc5ed759b" "/opt/rustwide/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "test" "--frozen", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 347c0a7fe562ebef58b605545cb8086652d587237548c4a0c9d1df155b5077b2 [INFO] running `Command { std: "docker" "start" "-a" "347c0a7fe562ebef58b605545cb8086652d587237548c4a0c9d1df155b5077b2", kill_on_drop: false }` [INFO] [stderr] warning: unused imports: `Digest`, `compute` [INFO] [stderr] --> src/lib.rs:21:11 [INFO] [stderr] | [INFO] [stderr] 21 | use md5::{compute,Digest}; [INFO] [stderr] | ^^^^^^^ ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Path` [INFO] [stderr] --> src/lib.rs:22:17 [INFO] [stderr] | [INFO] [stderr] 22 | use std::path::{Path,PathBuf}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::FromIterator` [INFO] [stderr] --> src/lib.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | use std::iter::FromIterator; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `thread_rng` [INFO] [stderr] --> src/lib.rs:25:12 [INFO] [stderr] | [INFO] [stderr] 25 | use rand::{thread_rng,Rng}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `allow_next_deck` [INFO] [stderr] --> src/lib.rs:779:33 [INFO] [stderr] | [INFO] [stderr] 779 | pub fn next_card(&mut self, allow_next_deck: bool) -> Result<(), SimpleError> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_allow_next_deck` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: cannot borrow `self.lastvisit` as mutable because it is also borrowed as immutable [INFO] [stderr] --> src/lib.rs:547:13 [INFO] [stderr] | [INFO] [stderr] 546 | if let Some(card) = self.current_card() { [INFO] [stderr] | ---- immutable borrow occurs here [INFO] [stderr] 547 | self.lastvisit.insert(card.id.to_string(),now); [INFO] [stderr] | ^^^^^^^^^^^^^^ ------- immutable borrow later used here [INFO] [stderr] | | [INFO] [stderr] | mutable borrow occurs here [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(mutable_borrow_reservation_conflict)]` on by default [INFO] [stderr] = warning: this borrowing pattern was not meant to be accepted, and may become a hard error in the future [INFO] [stderr] = note: for more information, see issue #59159 [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Digest`, `compute` [INFO] [stderr] --> src/lib.rs:21:11 [INFO] [stderr] | [INFO] [stderr] 21 | use md5::{compute,Digest}; [INFO] [stderr] | ^^^^^^^ ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Path` [INFO] [stderr] --> src/lib.rs:22:17 [INFO] [stderr] | [INFO] [stderr] 22 | use std::path::{Path,PathBuf}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::iter::FromIterator` [INFO] [stderr] --> src/lib.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | use std::iter::FromIterator; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `thread_rng` [INFO] [stderr] --> src/lib.rs:25:12 [INFO] [stderr] | [INFO] [stderr] 25 | use rand::{thread_rng,Rng}; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `allow_next_deck` [INFO] [stderr] --> src/lib.rs:779:33 [INFO] [stderr] | [INFO] [stderr] 779 | pub fn next_card(&mut self, allow_next_deck: bool) -> Result<(), SimpleError> { [INFO] [stderr] | ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_allow_next_deck` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:379:13 [INFO] [stderr] | [INFO] [stderr] 379 | fs::write(filename, data); [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: 7 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: cannot borrow `self.lastvisit` as mutable because it is also borrowed as immutable [INFO] [stderr] --> src/lib.rs:547:13 [INFO] [stderr] | [INFO] [stderr] 546 | if let Some(card) = self.current_card() { [INFO] [stderr] | ---- immutable borrow occurs here [INFO] [stderr] 547 | self.lastvisit.insert(card.id.to_string(),now); [INFO] [stderr] | ^^^^^^^^^^^^^^ ------- immutable borrow later used here [INFO] [stderr] | | [INFO] [stderr] | mutable borrow occurs here [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(mutable_borrow_reservation_conflict)]` on by default [INFO] [stderr] = warning: this borrowing pattern was not meant to be accepted, and may become a hard error in the future [INFO] [stderr] = note: for more information, see issue #59159 [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/lib.rs:379:13 [INFO] [stderr] | [INFO] [stderr] 379 | fs::write(filename, data); [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: 7 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: unused `#[macro_use]` import [INFO] [stderr] --> src/main.rs:4:1 [INFO] [stderr] | [INFO] [stderr] 4 | #[macro_use] [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `Path` [INFO] [stderr] --> src/main.rs:14:17 [INFO] [stderr] | [INFO] [stderr] 14 | use std::path::{Path,PathBuf}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Arg`, `SubCommand` [INFO] [stderr] --> src/main.rs:17:17 [INFO] [stderr] | [INFO] [stderr] 17 | use clap::{App, Arg, SubCommand}; [INFO] [stderr] | ^^^ ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `regex::Regex` [INFO] [stderr] --> src/main.rs:18:5 [INFO] [stderr] | [INFO] [stderr] 18 | use regex::Regex; [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Rng`, `thread_rng` [INFO] [stderr] --> src/main.rs:19:12 [INFO] [stderr] | [INFO] [stderr] 19 | use rand::{thread_rng,Rng}; [INFO] [stderr] | ^^^^^^^^^^ ^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `self::simple_error::SimpleError` [INFO] [stderr] --> src/main.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | use self::simple_error::SimpleError; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `SystemTime`, `UNIX_EPOCH` [INFO] [stderr] --> src/main.rs:22:17 [INFO] [stderr] | [INFO] [stderr] 22 | use std::time::{SystemTime, UNIX_EPOCH}; [INFO] [stderr] | ^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `success` [INFO] [stderr] --> src/main.rs:768:9 [INFO] [stderr] | [INFO] [stderr] 768 | let mut success = true; //determines the exit code [INFO] [stderr] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_success` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: value assigned to `handled` is never read [INFO] [stderr] --> src/main.rs:282:13 [INFO] [stderr] | [INFO] [stderr] 282 | let mut handled = match self.mode { [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: `datadir` [INFO] [stderr] --> src/main.rs:281:53 [INFO] [stderr] | [INFO] [stderr] 281 | fn handle_response(&mut self, response: String, datadir: &str, sessiondir: &str, present_card: &mut bool) -> bool { [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_datadir` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `sessiondir` [INFO] [stderr] --> src/main.rs:281:68 [INFO] [stderr] | [INFO] [stderr] 281 | fn handle_response(&mut self, response: String, datadir: &str, sessiondir: &str, present_card: &mut bool) -> bool { [INFO] [stderr] | ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_sessiondir` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:290:13 [INFO] [stderr] | [INFO] [stderr] 290 | let mut newcommand = if response.is_empty() { [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:768:9 [INFO] [stderr] | [INFO] [stderr] 768 | let mut success = true; //determines the exit code [INFO] [stderr] | ----^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:426:28 [INFO] [stderr] | [INFO] [stderr] 426 | ... self.select_deck(deck_index); [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:429:24 [INFO] [stderr] | [INFO] [stderr] 429 | self.select_deck_by_name(deck_value); [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:442:17 [INFO] [stderr] | [INFO] [stderr] 442 | self.next_deck().map_err(|e| eprintln!("{}",e) ); [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:447:17 [INFO] [stderr] | [INFO] [stderr] 447 | self.previous_deck().map_err(|e| eprintln!("{}",e) ); [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:461:28 [INFO] [stderr] | [INFO] [stderr] 461 | ... self.select_card(card_index); [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:480:17 [INFO] [stderr] | [INFO] [stderr] 480 | self.promote().map_err(|e| eprintln!("{}",e) ); [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:485:17 [INFO] [stderr] | [INFO] [stderr] 485 | self.demote().map_err(|e| eprintln!("{}",e) ); [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:490:17 [INFO] [stderr] | [INFO] [stderr] 490 | self.next_card(true).map_err(|e| eprintln!("{}",e) ); [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:495:17 [INFO] [stderr] | [INFO] [stderr] 495 | self.previous_card().map_err(|e| eprintln!("{}",e) ); [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:500:17 [INFO] [stderr] | [INFO] [stderr] 500 | self.shuffle().map_err(|e| eprintln!("{}",e) ); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: 23 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.08s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/vocage-5167a8d03c836fb2 [INFO] [stdout] [INFO] [stderr] Running /opt/rustwide/target/debug/deps/vocage-b807df61a32d65ca [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [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 [INFO] [stdout] [INFO] [stderr] Doc-tests vocage [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 [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "347c0a7fe562ebef58b605545cb8086652d587237548c4a0c9d1df155b5077b2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "347c0a7fe562ebef58b605545cb8086652d587237548c4a0c9d1df155b5077b2", kill_on_drop: false }` [INFO] [stdout] 347c0a7fe562ebef58b605545cb8086652d587237548c4a0c9d1df155b5077b2