[INFO] cloning repository https://github.com/mmstick/parallel
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mmstick/parallel" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmmstick%2Fparallel", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmmstick%2Fparallel'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c5a0df810acae4ca04bc4c0291e9f0f00309c828
[INFO] testing mmstick/parallel against 1.69.0 for beta-1.70-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmmstick%2Fparallel" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/mmstick/parallel on toolchain 1.69.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.69.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/mmstick/parallel
[INFO] finished tweaking git repo https://github.com/mmstick/parallel
[INFO] tweaked toml for git repo https://github.com/mmstick/parallel written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/mmstick/parallel already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.69.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded numtoa v0.0.7
[INFO] [stderr]   Downloaded num_cpus v1.5.1
[INFO] [stderr]   Downloaded permutate v0.3.2
[INFO] [stderr]   Downloaded wait-timeout v0.1.5
[INFO] [stderr]   Downloaded libc v0.2.23
[INFO] [stderr]   Downloaded sys-info v0.5.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 17f265773e8c2c1ccd647938617e00fdc271834580c772541ceeb857c54c41e7
[INFO] running `Command { std: "docker" "start" "-a" "17f265773e8c2c1ccd647938617e00fdc271834580c772541ceeb857c54c41e7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "17f265773e8c2c1ccd647938617e00fdc271834580c772541ceeb857c54c41e7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "17f265773e8c2c1ccd647938617e00fdc271834580c772541ceeb857c54c41e7", kill_on_drop: false }`
[INFO] [stdout] 17f265773e8c2c1ccd647938617e00fdc271834580c772541ceeb857c54c41e7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b0d831cd687150e4af81042d0f50f6e1f659283e55d2dfe446737dc514a222f3
[INFO] running `Command { std: "docker" "start" "-a" "b0d831cd687150e4af81042d0f50f6e1f659283e55d2dfe446737dc514a222f3", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.23
[INFO] [stderr]    Compiling gcc v0.3.54
[INFO] [stderr]    Compiling nodrop v0.1.12
[INFO] [stderr]    Compiling smallvec v0.6.0
[INFO] [stderr]    Compiling numtoa v0.0.7
[INFO] [stderr]    Compiling permutate v0.3.2
[INFO] [stderr]    Compiling itoa v0.3.1
[INFO] [stderr]    Compiling arrayvec v0.4.6
[INFO] [stderr]    Compiling num_cpus v1.5.1
[INFO] [stderr]    Compiling wait-timeout v0.1.5
[INFO] [stderr]    Compiling time v0.1.37
[INFO] [stderr]    Compiling sys-info v0.5.0
[INFO] [stderr]    Compiling parallel v0.11.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/input_iterator/lock.rs:22:62
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub fn try_next(&mut self, input: &mut String) -> Option<(usize)> {
[INFO] [stdout]    |                                                              ^     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 22 -     pub fn try_next(&mut self, input: &mut String) -> Option<(usize)> {
[INFO] [stdout] 22 +     pub fn try_next(&mut self, input: &mut String) -> Option<usize> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/main.rs:242:9
[INFO] [stdout]     |
[INFO] [stdout] 242 |         /// Prints messages from executed commands in the correct order.
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 243 |         let errors = execute::receive_messages(input_rx, args, &base_path, &processed_path, &errors_path);
[INFO] [stdout]     |         -------------------------------------------------------------------------------------------------- rustdoc does not generate documentation for statements
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/main.rs:245:9
[INFO] [stdout]     |
[INFO] [stdout] 245 |         /// Wait for all threads to exit before proceeding.
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 246 |         for thread in threads { thread.join().unwrap(); }
[INFO] [stdout]     |         ------------------------------------------------- rustdoc does not generate documentation for expressions
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/arguments/mod.rs:378:25
[INFO] [stdout]     |
[INFO] [stdout] 378 |     let parse_line: Box<Fn(io::Result<String>) -> io::Result<String>> =
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 378 |     let parse_line: Box<dyn Fn(io::Result<String>) -> io::Result<String>> =
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/execute/dry.rs:26:26
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let pipe_action: Box<Fn(&mut StdoutLock, &str)> = if flags & arguments::SHELL_QUOTE != 0 {
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let pipe_action: Box<dyn Fn(&mut StdoutLock, &str)> = if flags & arguments::SHELL_QUOTE != 0 {
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/arguments/mod.rs:553:9
[INFO] [stdout]     |
[INFO] [stdout] 553 |     let mut append_list = &mut Vec::new();
[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/execute/exec_commands.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let mut command_buffer = &mut String::with_capacity(64);
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/execute/pipe.rs:41:17
[INFO] [stdout]    |
[INFO] [stdout] 41 |             let mut stdout = child.stdout.as_mut().expect("unable to open stdout of child");
[INFO] [stdout]    |                 ----^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 8 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 3.89s
[INFO] running `Command { std: "docker" "inspect" "b0d831cd687150e4af81042d0f50f6e1f659283e55d2dfe446737dc514a222f3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b0d831cd687150e4af81042d0f50f6e1f659283e55d2dfe446737dc514a222f3", kill_on_drop: false }`
[INFO] [stdout] b0d831cd687150e4af81042d0f50f6e1f659283e55d2dfe446737dc514a222f3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8df807364a638467e2b6439302c5b4b959b364e66aa2efdb19897f49edc72bea
[INFO] running `Command { std: "docker" "start" "-a" "8df807364a638467e2b6439302c5b4b959b364e66aa2efdb19897f49edc72bea", kill_on_drop: false }`
[INFO] [stderr]    Compiling parallel v0.11.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around type
[INFO] [stdout]   --> src/input_iterator/lock.rs:22:62
[INFO] [stdout]    |
[INFO] [stdout] 22 |     pub fn try_next(&mut self, input: &mut String) -> Option<(usize)> {
[INFO] [stdout]    |                                                              ^     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 22 -     pub fn try_next(&mut self, input: &mut String) -> Option<(usize)> {
[INFO] [stdout] 22 +     pub fn try_next(&mut self, input: &mut String) -> Option<usize> {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around method argument
[INFO] [stdout]    --> src/input_iterator/iterator.rs:231:48
[INFO] [stdout]     |
[INFO] [stdout] 231 |         for (actual, expected) in iterator.zip((1..4096)) {
[INFO] [stdout]     |                                                ^       ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 231 -         for (actual, expected) in iterator.zip((1..4096)) {
[INFO] [stdout] 231 +         for (actual, expected) in iterator.zip(1..4096) {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/main.rs:242:9
[INFO] [stdout]     |
[INFO] [stdout] 242 |         /// Prints messages from executed commands in the correct order.
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 243 |         let errors = execute::receive_messages(input_rx, args, &base_path, &processed_path, &errors_path);
[INFO] [stdout]     |         -------------------------------------------------------------------------------------------------- rustdoc does not generate documentation for statements
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/main.rs:245:9
[INFO] [stdout]     |
[INFO] [stdout] 245 |         /// Wait for all threads to exit before proceeding.
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 246 |         for thread in threads { thread.join().unwrap(); }
[INFO] [stdout]     |         ------------------------------------------------- rustdoc does not generate documentation for expressions
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/arguments/mod.rs:378:25
[INFO] [stdout]     |
[INFO] [stdout] 378 |     let parse_line: Box<Fn(io::Result<String>) -> io::Result<String>> =
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]     |
[INFO] [stdout] 378 |     let parse_line: Box<dyn Fn(io::Result<String>) -> io::Result<String>> =
[INFO] [stdout]     |                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/execute/dry.rs:26:26
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let pipe_action: Box<Fn(&mut StdoutLock, &str)> = if flags & arguments::SHELL_QUOTE != 0 {
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 26 |     let pipe_action: Box<dyn Fn(&mut StdoutLock, &str)> = if flags & arguments::SHELL_QUOTE != 0 {
[INFO] [stdout]    |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/arguments/mod.rs:553:9
[INFO] [stdout]     |
[INFO] [stdout] 553 |     let mut append_list = &mut Vec::new();
[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/execute/exec_commands.rs:36:13
[INFO] [stdout]    |
[INFO] [stdout] 36 |         let mut command_buffer = &mut String::with_capacity(64);
[INFO] [stdout]    |             ----^^^^^^^^^^^^^^
[INFO] [stdout]    |             |
[INFO] [stdout]    |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/execute/pipe.rs:41:17
[INFO] [stdout]    |
[INFO] [stdout] 41 |             let mut stdout = child.stdout.as_mut().expect("unable to open stdout of child");
[INFO] [stdout]    |                 ----^^^^^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 9 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.72s
[INFO] running `Command { std: "docker" "inspect" "8df807364a638467e2b6439302c5b4b959b364e66aa2efdb19897f49edc72bea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8df807364a638467e2b6439302c5b4b959b364e66aa2efdb19897f49edc72bea", kill_on_drop: false }`
[INFO] [stdout] 8df807364a638467e2b6439302c5b4b959b364e66aa2efdb19897f49edc72bea
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 89efbe9215564c2133626af8f420a58b172e4847221ae1f6c9e09d3fe02a0dd2
[INFO] running `Command { std: "docker" "start" "-a" "89efbe9215564c2133626af8f420a58b172e4847221ae1f6c9e09d3fe02a0dd2", kill_on_drop: false }`
[INFO] [stderr] warning: unnecessary parentheses around type
[INFO] [stderr]   --> src/input_iterator/lock.rs:22:62
[INFO] [stderr]    |
[INFO] [stderr] 22 |     pub fn try_next(&mut self, input: &mut String) -> Option<(usize)> {
[INFO] [stderr]    |                                                              ^     ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 22 -     pub fn try_next(&mut self, input: &mut String) -> Option<(usize)> {
[INFO] [stderr] 22 +     pub fn try_next(&mut self, input: &mut String) -> Option<usize> {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around method argument
[INFO] [stderr]    --> src/input_iterator/iterator.rs:231:48
[INFO] [stderr]     |
[INFO] [stderr] 231 |         for (actual, expected) in iterator.zip((1..4096)) {
[INFO] [stderr]     |                                                ^       ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 231 -         for (actual, expected) in iterator.zip((1..4096)) {
[INFO] [stderr] 231 +         for (actual, expected) in iterator.zip(1..4096) {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]    --> src/main.rs:242:9
[INFO] [stderr]     |
[INFO] [stderr] 242 |         /// Prints messages from executed commands in the correct order.
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 243 |         let errors = execute::receive_messages(input_rx, args, &base_path, &processed_path, &errors_path);
[INFO] [stderr]     |         -------------------------------------------------------------------------------------------------- rustdoc does not generate documentation for statements
[INFO] [stderr]     |
[INFO] [stderr]     = help: use `//` for a plain comment
[INFO] [stderr]     = note: `#[warn(unused_doc_comments)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused doc comment
[INFO] [stderr]    --> src/main.rs:245:9
[INFO] [stderr]     |
[INFO] [stderr] 245 |         /// Wait for all threads to exit before proceeding.
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 246 |         for thread in threads { thread.join().unwrap(); }
[INFO] [stderr]     |         ------------------------------------------------- rustdoc does not generate documentation for expressions
[INFO] [stderr]     |
[INFO] [stderr]     = help: use `//` for a plain comment
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/arguments/mod.rs:378:25
[INFO] [stderr]     |
[INFO] [stderr] 378 |     let parse_line: Box<Fn(io::Result<String>) -> io::Result<String>> =
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] help: use `dyn`
[INFO] [stderr]     |
[INFO] [stderr] 378 |     let parse_line: Box<dyn Fn(io::Result<String>) -> io::Result<String>> =
[INFO] [stderr]     |                         +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout] 
[INFO] [stderr]   --> src/execute/dry.rs:26:26
[INFO] [stdout] running 21 tests
[INFO] [stderr]    |
[INFO] [stdout] test execute::argument_splitter::tests::methods ... ok
[INFO] [stderr] 26 |     let pipe_action: Box<Fn(&mut StdoutLock, &str)> = if flags & arguments::SHELL_QUOTE != 0 {
[INFO] [stdout] test disk_buffer::tests::test_disk_buffer_reader_simple ... ok
[INFO] [stderr]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] test execute::argument_splitter::tests::processes ... ok
[INFO] [stderr]    |
[INFO] [stdout] test arguments::jobs::job_parsing ... ok
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout] test execute::argument_splitter::tests::quotes ... ok
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] test tokenizer::functions::tests::path_basename_utf8 ... ok
[INFO] [stderr] help: use `dyn`
[INFO] [stdout] test tokenizer::functions::tests::path_basename_empty ... ok
[INFO] [stderr]    |
[INFO] [stdout] test tokenizer::functions::tests::path_basename_dir ... ok
[INFO] [stderr] 26 |     let pipe_action: Box<dyn Fn(&mut StdoutLock, &str)> = if flags & arguments::SHELL_QUOTE != 0 {
[INFO] [stdout] test tokenizer::functions::tests::path_dirname_simple ... ok
[INFO] [stderr]    |                          +++
[INFO] [stdout] test tokenizer::functions::tests::path_basename_simple ... ok
[INFO] [stderr] 
[INFO] [stdout] test tokenizer::functions::tests::path_dirname_empty ... ok
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stdout] test tokenizer::functions::tests::path_remove_ext_dir ... ok
[INFO] [stderr]    --> src/arguments/mod.rs:553:9
[INFO] [stdout] test tokenizer::functions::tests::path_dirname_dir ... ok
[INFO] [stderr]     |
[INFO] [stdout] test tokenizer::functions::tests::path_hidden ... ok
[INFO] [stderr] 553 |     let mut append_list = &mut Vec::new();
[INFO] [stdout] test tokenizer::functions::tests::path_dirname_utf8 ... ok
[INFO] [stderr]     |         ----^^^^^^^^^^^
[INFO] [stdout] test tokenizer::functions::tests::path_remove_ext_utf8 ... ok
[INFO] [stderr]     |         |
[INFO] [stdout] test tokenizer::functions::tests::path_remove_ext_empty ... ok
[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/execute/exec_commands.rs:36:13
[INFO] [stderr]    |
[INFO] [stderr] 36 |         let mut command_buffer = &mut String::with_capacity(64);
[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/execute/pipe.rs:41:17
[INFO] [stderr]    |
[INFO] [stderr] 41 |             let mut stdout = child.stdout.as_mut().expect("unable to open stdout of child");
[INFO] [stderr]    |                 ----^^^^^^
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: `parallel` (bin "parallel" test) generated 9 warnings (run `cargo fix --bin "parallel" --tests` to apply 7 suggestions)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.01s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/parallel-8d17cb43ee2352ac)
[INFO] [stdout] test disk_buffer::tests::test_disk_buffer_reader_byte_shifting ... ok
[INFO] [stdout] test input_iterator::iterator::tests::test_input_iterator ... ok
[INFO] [stdout] test tokenizer::functions::tests::path_remove_ext_simple ... ok
[INFO] [stdout] test execute::argument_splitter::tests::arrays ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 21 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "89efbe9215564c2133626af8f420a58b172e4847221ae1f6c9e09d3fe02a0dd2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "89efbe9215564c2133626af8f420a58b172e4847221ae1f6c9e09d3fe02a0dd2", kill_on_drop: false }`
[INFO] [stdout] 89efbe9215564c2133626af8f420a58b172e4847221ae1f6c9e09d3fe02a0dd2
