[INFO] updating cached repository UgnilJoZ/rust-pv [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/UgnilJoZ/rust-pv [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/UgnilJoZ/rust-pv" "work/ex/clippy-test-run/sources/stable/gh/UgnilJoZ/rust-pv"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable/gh/UgnilJoZ/rust-pv'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/UgnilJoZ/rust-pv" "work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/UgnilJoZ/rust-pv"` [INFO] [stderr] Cloning into 'work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/UgnilJoZ/rust-pv'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] e166e54f5b869ac48c661d727462e85a183554d6 [INFO] sha for GitHub repo UgnilJoZ/rust-pv: e166e54f5b869ac48c661d727462e85a183554d6 [INFO] validating manifest of UgnilJoZ/rust-pv on toolchain stable [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of UgnilJoZ/rust-pv on toolchain stable+rustflags=-Dclippy::into_iter_on_array [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing UgnilJoZ/rust-pv [INFO] finished frobbing UgnilJoZ/rust-pv [INFO] frobbed toml for UgnilJoZ/rust-pv written to work/ex/clippy-test-run/sources/stable/gh/UgnilJoZ/rust-pv/Cargo.toml [INFO] started frobbing UgnilJoZ/rust-pv [INFO] finished frobbing UgnilJoZ/rust-pv [INFO] frobbed toml for UgnilJoZ/rust-pv written to work/ex/clippy-test-run/sources/stable+rustflags=-Dclippy%3A%3Ainto_iter_on_array/gh/UgnilJoZ/rust-pv/Cargo.toml [INFO] crate UgnilJoZ/rust-pv has a lockfile. skipping [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+stable" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] linting UgnilJoZ/rust-pv against stable for clippy-test-run [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/clippy-test-run/worker-0/stable:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/clippy-test-run/sources/stable/gh/UgnilJoZ/rust-pv:/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" "+stable" "clippy" "--frozen" "--all" "--all-targets"` [INFO] [stdout] d3a8a8a5eb73177b1b2db09d0727d0c278b0d4ae566f9696b06632b4da2076f3 [INFO] running `"docker" "start" "-a" "d3a8a8a5eb73177b1b2db09d0727d0c278b0d4ae566f9696b06632b4da2076f3"` [INFO] [stderr] Checking pv v0.3.0 (/opt/crater/workdir) [INFO] [stderr] warning: unused import: `Stdio` [INFO] [stderr] --> src/main.rs:8:28 [INFO] [stderr] | [INFO] [stderr] 8 | use std::process::{Command,Stdio,exit}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `fs` [INFO] [stderr] --> src/main.rs:10:31 [INFO] [stderr] | [INFO] [stderr] 10 | use std::{thread,time,cmp,env,fs}; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/main.rs:112:10 [INFO] [stderr] | [INFO] [stderr] 112 | } else { [INFO] [stderr] | ________________^ [INFO] [stderr] 113 | | if arguments.opt_present("s") { [INFO] [stderr] 114 | | arguments.opt_str("s").unwrap() [INFO] [stderr] 115 | | .parse::() [INFO] [stderr] 116 | | .unwrap() [INFO] [stderr] 117 | | } else { 1 } [INFO] [stderr] 118 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 112 | } else if arguments.opt_present("s") { [INFO] [stderr] 113 | arguments.opt_str("s").unwrap() [INFO] [stderr] 114 | .parse::() [INFO] [stderr] 115 | .unwrap() [INFO] [stderr] 116 | } else { 1 } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused import: `Stdio` [INFO] [stderr] --> src/main.rs:8:28 [INFO] [stderr] | [INFO] [stderr] 8 | use std::process::{Command,Stdio,exit}; [INFO] [stderr] | ^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_imports)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `fs` [INFO] [stderr] --> src/main.rs:10:31 [INFO] [stderr] | [INFO] [stderr] 10 | use std::{thread,time,cmp,env,fs}; [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: this `else { if .. }` block can be collapsed [INFO] [stderr] --> src/main.rs:112:10 [INFO] [stderr] | [INFO] [stderr] 112 | } else { [INFO] [stderr] | ________________^ [INFO] [stderr] 113 | | if arguments.opt_present("s") { [INFO] [stderr] 114 | | arguments.opt_str("s").unwrap() [INFO] [stderr] 115 | | .parse::() [INFO] [stderr] 116 | | .unwrap() [INFO] [stderr] 117 | | } else { 1 } [INFO] [stderr] 118 | | } [INFO] [stderr] | |_________^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::collapsible_if)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_if [INFO] [stderr] help: try [INFO] [stderr] | [INFO] [stderr] 112 | } else if arguments.opt_present("s") { [INFO] [stderr] 113 | arguments.opt_str("s").unwrap() [INFO] [stderr] 114 | .parse::() [INFO] [stderr] 115 | .unwrap() [INFO] [stderr] 116 | } else { 1 } [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `size` [INFO] [stderr] --> src/main.rs:68:48 [INFO] [stderr] | [INFO] [stderr] 68 | fn read_bytes(file: &mut R, size: usize, output: &mut W, ref bytes_read: &std::sync::Arc>, end_of_file: Arc>) { [INFO] [stderr] | ^^^^ help: consider using `_size` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `size` [INFO] [stderr] --> src/main.rs:76:51 [INFO] [stderr] | [INFO] [stderr] 76 | fn read_lines(file: &mut R, size: usize, output: &mut W, ref bytes_read: &std::sync::Arc>, end_of_file: Arc>) { [INFO] [stderr] | ^^^^ help: consider using `_size` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `prog` [INFO] [stderr] --> src/main.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | let prog = args[0].clone(); [INFO] [stderr] | ^^^^ help: consider using `_prog` instead [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:142:7 [INFO] [stderr] | [INFO] [stderr] 142 | let mut file = File::open(filename).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: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:149:7 [INFO] [stderr] | [INFO] [stderr] 149 | let mut file = io::stdin(); [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:36:2 [INFO] [stderr] | [INFO] [stderr] 36 | io::stderr().write(sequence.as_slice()); [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:37:2 [INFO] [stderr] | [INFO] [stderr] 37 | io::stderr().flush(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: unused variable: `size` [INFO] [stderr] --> src/main.rs:68:48 [INFO] [stderr] | [INFO] [stderr] 68 | fn read_bytes(file: &mut R, size: usize, output: &mut W, ref bytes_read: &std::sync::Arc>, end_of_file: Arc>) { [INFO] [stderr] | ^^^^ help: consider using `_size` instead [INFO] [stderr] | [INFO] [stderr] = note: #[warn(unused_variables)] on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `size` [INFO] [stderr] --> src/main.rs:76:51 [INFO] [stderr] | [INFO] [stderr] 76 | fn read_lines(file: &mut R, size: usize, output: &mut W, ref bytes_read: &std::sync::Arc>, end_of_file: Arc>) { [INFO] [stderr] | ^^^^ help: consider using `_size` instead [INFO] [stderr] [INFO] [stderr] warning: unused variable: `prog` [INFO] [stderr] --> src/main.rs:88:6 [INFO] [stderr] | [INFO] [stderr] 88 | let prog = args[0].clone(); [INFO] [stderr] | ^^^^ help: consider using `_prog` instead [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:43:2 [INFO] [stderr] | [INFO] [stderr] 43 | io::stderr().write(sequence.as_slice()); [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:44:2 [INFO] [stderr] | [INFO] [stderr] 44 | io::stderr().flush(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: use of `write!(stderr(), ...).unwrap()`. Consider using `eprint!` instead [INFO] [stderr] --> src/main.rs:65:2 [INFO] [stderr] | [INFO] [stderr] 65 | write!(io::stderr(), "{}", line).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::explicit_write)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_write [INFO] [stderr] [INFO] [stderr] warning: `ref` directly on a function argument is ignored. Consider using a reference type instead. [INFO] [stderr] --> src/main.rs:68:77 [INFO] [stderr] | [INFO] [stderr] 68 | fn read_bytes(file: &mut R, size: usize, output: &mut W, ref bytes_read: &std::sync::Arc>, end_of_file: Arc>) { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::toplevel_ref_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/main.rs:70:3 [INFO] [stderr] | [INFO] [stderr] 70 | output.write(&[b.unwrap()]).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::unused_io_amount)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] warning: `ref` directly on a function argument is ignored. Consider using a reference type instead. [INFO] [stderr] --> src/main.rs:76:80 [INFO] [stderr] | [INFO] [stderr] 76 | fn read_lines(file: &mut R, size: usize, output: &mut W, ref bytes_read: &std::sync::Arc>, end_of_file: Arc>) { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: Consider using an AtomicUsize instead of a Mutex here. If you just want the locking behaviour and not the internal type, consider using Mutex<()>. [INFO] [stderr] --> src/main.rs:103:29 [INFO] [stderr] | [INFO] [stderr] 103 | let bytes_read = Arc::new(Mutex::new(ZERO)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::mutex_atomic)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutex_atomic [INFO] [stderr] [INFO] [stderr] warning: Consider using an AtomicBool instead of a Mutex here. If you just want the locking behaviour and not the internal type, consider using Mutex<()>. [INFO] [stderr] --> src/main.rs:104:29 [INFO] [stderr] | [INFO] [stderr] 104 | let end_of_file = Arc::new(Mutex::new(false)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutex_atomic [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:161:2 [INFO] [stderr] | [INFO] [stderr] 161 | write!(io::stderr(), "\n{} {}.\n", *bytes_read.lock().unwrap(), unit); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:142:7 [INFO] [stderr] | [INFO] [stderr] 142 | let mut file = File::open(filename).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: variable does not need to be mutable [INFO] [stderr] --> src/main.rs:149:7 [INFO] [stderr] | [INFO] [stderr] 149 | let mut file = io::stdin(); [INFO] [stderr] | ----^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] error: Could not compile `pv`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:36:2 [INFO] [stderr] | [INFO] [stderr] 36 | io::stderr().write(sequence.as_slice()); [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:37:2 [INFO] [stderr] | [INFO] [stderr] 37 | io::stderr().flush(); [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:43:2 [INFO] [stderr] | [INFO] [stderr] 43 | io::stderr().write(sequence.as_slice()); [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:44:2 [INFO] [stderr] | [INFO] [stderr] 44 | io::stderr().flush(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] [INFO] [stderr] warning: use of `write!(stderr(), ...).unwrap()`. Consider using `eprint!` instead [INFO] [stderr] --> src/main.rs:65:2 [INFO] [stderr] | [INFO] [stderr] 65 | write!(io::stderr(), "{}", line).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::explicit_write)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_write [INFO] [stderr] [INFO] [stderr] warning: `ref` directly on a function argument is ignored. Consider using a reference type instead. [INFO] [stderr] --> src/main.rs:68:77 [INFO] [stderr] | [INFO] [stderr] 68 | fn read_bytes(file: &mut R, size: usize, output: &mut W, ref bytes_read: &std::sync::Arc>, end_of_file: Arc>) { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::toplevel_ref_arg)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] error: handle written amount returned or use `Write::write_all` instead [INFO] [stderr] --> src/main.rs:70:3 [INFO] [stderr] | [INFO] [stderr] 70 | output.write(&[b.unwrap()]).unwrap(); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[deny(clippy::unused_io_amount)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_io_amount [INFO] [stderr] [INFO] [stderr] warning: `ref` directly on a function argument is ignored. Consider using a reference type instead. [INFO] [stderr] --> src/main.rs:76:80 [INFO] [stderr] | [INFO] [stderr] 76 | fn read_lines(file: &mut R, size: usize, output: &mut W, ref bytes_read: &std::sync::Arc>, end_of_file: Arc>) { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#toplevel_ref_arg [INFO] [stderr] [INFO] [stderr] warning: Consider using an AtomicUsize instead of a Mutex here. If you just want the locking behaviour and not the internal type, consider using Mutex<()>. [INFO] [stderr] --> src/main.rs:103:29 [INFO] [stderr] | [INFO] [stderr] 103 | let bytes_read = Arc::new(Mutex::new(ZERO)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: #[warn(clippy::mutex_atomic)] on by default [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutex_atomic [INFO] [stderr] [INFO] [stderr] warning: Consider using an AtomicBool instead of a Mutex here. If you just want the locking behaviour and not the internal type, consider using Mutex<()>. [INFO] [stderr] --> src/main.rs:104:29 [INFO] [stderr] | [INFO] [stderr] 104 | let end_of_file = Arc::new(Mutex::new(false)); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#mutex_atomic [INFO] [stderr] [INFO] [stderr] warning: unused `std::result::Result` that must be used [INFO] [stderr] --> src/main.rs:161:2 [INFO] [stderr] | [INFO] [stderr] 161 | write!(io::stderr(), "\n{} {}.\n", *bytes_read.lock().unwrap(), unit); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stderr] = note: this error originates in a macro outside of the current crate (in Nightly builds, run with -Z external-macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] error: aborting due to previous error [INFO] [stderr] [INFO] [stderr] error: Could not compile `pv`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "d3a8a8a5eb73177b1b2db09d0727d0c278b0d4ae566f9696b06632b4da2076f3"` [INFO] running `"docker" "rm" "-f" "d3a8a8a5eb73177b1b2db09d0727d0c278b0d4ae566f9696b06632b4da2076f3"` [INFO] [stdout] d3a8a8a5eb73177b1b2db09d0727d0c278b0d4ae566f9696b06632b4da2076f3