[INFO] fetching crate rsbx 2.0.0...
[INFO] testing rsbx-2.0.0 against beta-2021-08-01 for beta-1.55-1
[INFO] extracting crate rsbx 2.0.0 into /workspace/builds/worker-5/source
[INFO] validating manifest of crates.io crate rsbx 2.0.0 on toolchain beta-2021-08-01
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-08-01" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate rsbx 2.0.0
[INFO] finished tweaking crates.io crate rsbx 2.0.0
[INFO] tweaked toml for crates.io crate rsbx 2.0.0 written to /workspace/builds/worker-5/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-08-01" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-08-01" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded ctrlc v3.1.9
[INFO] [stderr]   Downloaded cty v0.1.5
[INFO] [stderr]   Downloaded quickcheck v0.7.2
[INFO] [stderr]   Downloaded rand_core v0.2.2
[INFO] [stderr]   Downloaded reed-solomon-erasure v3.1.1
[INFO] [stderr]   Downloaded blake2_c v0.3.3
[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" "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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c1c3e8296056e9353d0aa5d54a434b644b1e817feb81b35535bbfc8df31eb0b7
[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" "c1c3e8296056e9353d0aa5d54a434b644b1e817feb81b35535bbfc8df31eb0b7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c1c3e8296056e9353d0aa5d54a434b644b1e817feb81b35535bbfc8df31eb0b7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c1c3e8296056e9353d0aa5d54a434b644b1e817feb81b35535bbfc8df31eb0b7", kill_on_drop: false }`
[INFO] [stdout] c1c3e8296056e9353d0aa5d54a434b644b1e817feb81b35535bbfc8df31eb0b7
[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" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 55c83b46a225c863970676d2b429359cea265057e29a2b3a95f8f758c69e83eb
[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" "55c83b46a225c863970676d2b429359cea265057e29a2b3a95f8f758c69e83eb", kill_on_drop: false }`
[INFO] [stderr]    Compiling rsbx v2.0.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling cty v0.1.5
[INFO] [stderr]    Compiling reed-solomon-erasure v3.1.1
[INFO] [stderr]    Compiling blake2_c v0.3.3
[INFO] [stderr]    Compiling rand_xorshift v0.1.1
[INFO] [stderr]    Compiling rand_isaac v0.1.1
[INFO] [stderr]    Compiling rand_hc v0.1.0
[INFO] [stderr]    Compiling time v0.1.44
[INFO] [stderr]    Compiling rand_os v0.1.3
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling clap v2.33.3
[INFO] [stderr]    Compiling ctrlc v3.1.9
[INFO] [stderr]    Compiling rayon-core v1.9.1
[INFO] [stderr]    Compiling sha-1 v0.8.2
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]    Compiling chrono v0.4.19
[INFO] [stderr]    Compiling rayon v1.5.1
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/file_utils.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |         ((size + (block_size - 1)) / block_size)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/file_utils.rs:85:9
[INFO] [stdout]    |
[INFO] [stdout] 85 |         ((size + (data_size - 1)) / data_size)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 |     fn round_down_to_multiple(Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                               ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:3:43
[INFO] [stdout]   |
[INFO] [stdout] 3 |     fn round_down_to_multiple(Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                                           ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:4:31
[INFO] [stdout]   |
[INFO] [stdout] 4 |     fn round_up_to_multiple  (Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                               ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:4:43
[INFO] [stdout]   |
[INFO] [stdout] 4 |     fn round_up_to_multiple  (Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                                           ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:5:31
[INFO] [stdout]   |
[INFO] [stdout] 5 |     fn ensure_at_least       (Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                               ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:5:43
[INFO] [stdout]   |
[INFO] [stdout] 5 |     fn ensure_at_least       (Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                                           ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:6:31
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn ensure_at_most        (Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                               ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:6:43
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn ensure_at_most        (Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                                           ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Error` is imported redundantly
[INFO] [stdout]   --> src/sbx_block/header.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 11 | use super::Error;
[INFO] [stdout]    |     ------------ the item `Error` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 56 |         use super::Error;
[INFO] [stdout]    |             ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/sbx_block/mod.rs:209:9
[INFO] [stdout]     |
[INFO] [stdout] 209 |         (data_shards as u32 <= index_in_set)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/sbx_block/mod.rs:743:46
[INFO] [stdout]     |
[INFO] [stdout] 743 | ...                   pred   : Option<&Fn(&Block) -> bool>)
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&Block) -> bool`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Error` is imported redundantly
[INFO] [stdout]   --> src/log.rs:58:17
[INFO] [stdout]    |
[INFO] [stdout] 5  | use general_error::Error;
[INFO] [stdout]    |     -------------------- the item `Error` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 58 |     use super::{Error, ErrorKind};
[INFO] [stdout]    |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]   --> src/log.rs:65:31
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn deserialize(&mut self, &[u8]) -> Result<(), ()>;
[INFO] [stdout]    |                               ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/repair_core.rs:159:45
[INFO] [stdout]     |
[INFO] [stdout] 159 | ...                   pred        : &Fn(&Block) -> bool,
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&Block) -> bool`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/misc_macros.rs:345:19
[INFO] [stdout]     |
[INFO] [stdout] 345 |           $($expr;)*;
[INFO] [stdout]     |                     ^ help: remove this semicolon
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/repair_core.rs:210:9
[INFO] [stdout]     |
[INFO] [stdout] 210 | /         print_if!(verbose => param, reporter =>
[INFO] [stdout] 211 | |                   "{}", repair_stats;);
[INFO] [stdout]     | |_______________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `pause_reporter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/misc_macros.rs:345:19
[INFO] [stdout]     |
[INFO] [stdout] 345 |           $($expr;)*;
[INFO] [stdout]     |                     ^ help: remove this semicolon
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/repair_core.rs:329:25
[INFO] [stdout]     |
[INFO] [stdout] 329 | /                         print_if!(verbose => param, reporter =>
[INFO] [stdout] 330 | |                                   "Replaced invalid metadata block at {} (0x{:X}) with reference block", p, p;);
[INFO] [stdout]     | |________________________________________________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `pause_reporter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/misc_macros.rs:345:19
[INFO] [stdout]     |
[INFO] [stdout] 345 |           $($expr;)*;
[INFO] [stdout]     |                     ^ help: remove this semicolon
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/check_core.rs:207:25
[INFO] [stdout]     |
[INFO] [stdout] 207 | /                         print_if!(verbose => param, reporter =>
[INFO] [stdout] 208 | |                                   "Block failed check, version : {}, block size : {}, at byte {} (0x{:X})",
[INFO] [stdout] 209 | |                                   ver_usize,
[INFO] [stdout] 210 | |                                   block_size,
[INFO] [stdout] 211 | |                                   block_pos,
[INFO] [stdout] 212 | |                                   block_pos;);
[INFO] [stdout]     | |______________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `pause_reporter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/misc_macros.rs:345:19
[INFO] [stdout]     |
[INFO] [stdout] 345 |         $($expr;)*;
[INFO] [stdout]     |                   ^ help: remove this semicolon
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/check_core.rs:226:9
[INFO] [stdout]     |
[INFO] [stdout] 226 |         print_if!(verbose not_json => param, reporter, json_printer => "";);
[INFO] [stdout]     |         -------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `pause_reporter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 20 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 15.85s
[INFO] running `Command { std: "docker" "inspect" "55c83b46a225c863970676d2b429359cea265057e29a2b3a95f8f758c69e83eb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "55c83b46a225c863970676d2b429359cea265057e29a2b3a95f8f758c69e83eb", kill_on_drop: false }`
[INFO] [stdout] 55c83b46a225c863970676d2b429359cea265057e29a2b3a95f8f758c69e83eb
[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" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 81a44bb187c332fc5e0c80a24083a63ff859aeb0346f5cd6beb07a8b19d65879
[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" "81a44bb187c332fc5e0c80a24083a63ff859aeb0346f5cd6beb07a8b19d65879", kill_on_drop: false }`
[INFO] [stderr]    Compiling rand_core v0.2.2
[INFO] [stderr]    Compiling rand v0.5.6
[INFO] [stderr]    Compiling env_logger v0.5.13
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/file_utils.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |         ((size + (block_size - 1)) / block_size)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/file_utils.rs:85:9
[INFO] [stdout]    |
[INFO] [stdout] 85 |         ((size + (data_size - 1)) / data_size)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 |     fn round_down_to_multiple(Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                               ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:3:43
[INFO] [stdout]   |
[INFO] [stdout] 3 |     fn round_down_to_multiple(Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                                           ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:4:31
[INFO] [stdout]   |
[INFO] [stdout] 4 |     fn round_up_to_multiple  (Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                               ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:4:43
[INFO] [stdout]   |
[INFO] [stdout] 4 |     fn round_up_to_multiple  (Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                                           ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:5:31
[INFO] [stdout]   |
[INFO] [stdout] 5 |     fn ensure_at_least       (Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                               ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:5:43
[INFO] [stdout]   |
[INFO] [stdout] 5 |     fn ensure_at_least       (Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                                           ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:6:31
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn ensure_at_most        (Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                               ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:6:43
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn ensure_at_most        (Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                                           ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Error` is imported redundantly
[INFO] [stdout]   --> src/sbx_block/header.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 11 | use super::Error;
[INFO] [stdout]    |     ------------ the item `Error` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 56 |         use super::Error;
[INFO] [stdout]    |             ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/sbx_block/mod.rs:209:9
[INFO] [stdout]     |
[INFO] [stdout] 209 |         (data_shards as u32 <= index_in_set)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/sbx_block/mod.rs:743:46
[INFO] [stdout]     |
[INFO] [stdout] 743 | ...                   pred   : Option<&Fn(&Block) -> bool>)
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&Block) -> bool`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Error` is imported redundantly
[INFO] [stdout]   --> src/log.rs:58:17
[INFO] [stdout]    |
[INFO] [stdout] 5  | use general_error::Error;
[INFO] [stdout]    |     -------------------- the item `Error` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 58 |     use super::{Error, ErrorKind};
[INFO] [stdout]    |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]   --> src/log.rs:65:31
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn deserialize(&mut self, &[u8]) -> Result<(), ()>;
[INFO] [stdout]    |                               ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/repair_core.rs:159:45
[INFO] [stdout]     |
[INFO] [stdout] 159 | ...                   pred        : &Fn(&Block) -> bool,
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&Block) -> bool`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/misc_macros.rs:345:19
[INFO] [stdout]     |
[INFO] [stdout] 345 |           $($expr;)*;
[INFO] [stdout]     |                     ^ help: remove this semicolon
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/repair_core.rs:210:9
[INFO] [stdout]     |
[INFO] [stdout] 210 | /         print_if!(verbose => param, reporter =>
[INFO] [stdout] 211 | |                   "{}", repair_stats;);
[INFO] [stdout]     | |_______________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `pause_reporter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/misc_macros.rs:345:19
[INFO] [stdout]     |
[INFO] [stdout] 345 |           $($expr;)*;
[INFO] [stdout]     |                     ^ help: remove this semicolon
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/repair_core.rs:329:25
[INFO] [stdout]     |
[INFO] [stdout] 329 | /                         print_if!(verbose => param, reporter =>
[INFO] [stdout] 330 | |                                   "Replaced invalid metadata block at {} (0x{:X}) with reference block", p, p;);
[INFO] [stdout]     | |________________________________________________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `pause_reporter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/misc_macros.rs:345:19
[INFO] [stdout]     |
[INFO] [stdout] 345 |           $($expr;)*;
[INFO] [stdout]     |                     ^ help: remove this semicolon
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/check_core.rs:207:25
[INFO] [stdout]     |
[INFO] [stdout] 207 | /                         print_if!(verbose => param, reporter =>
[INFO] [stdout] 208 | |                                   "Block failed check, version : {}, block size : {}, at byte {} (0x{:X})",
[INFO] [stdout] 209 | |                                   ver_usize,
[INFO] [stdout] 210 | |                                   block_size,
[INFO] [stdout] 211 | |                                   block_pos,
[INFO] [stdout] 212 | |                                   block_pos;);
[INFO] [stdout]     | |______________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `pause_reporter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/misc_macros.rs:345:19
[INFO] [stdout]     |
[INFO] [stdout] 345 |         $($expr;)*;
[INFO] [stdout]     |                   ^ help: remove this semicolon
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/check_core.rs:226:9
[INFO] [stdout]     |
[INFO] [stdout] 226 |         print_if!(verbose not_json => param, reporter, json_printer => "";);
[INFO] [stdout]     |         -------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `pause_reporter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 20 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling quickcheck v0.7.2
[INFO] [stderr]    Compiling rsbx v2.0.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/file_utils.rs:74:9
[INFO] [stdout]    |
[INFO] [stdout] 74 |         ((size + (block_size - 1)) / block_size)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/file_utils.rs:85:9
[INFO] [stdout]    |
[INFO] [stdout] 85 |         ((size + (data_size - 1)) / data_size)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/file_utils_tests.rs:484:13
[INFO] [stdout]     |
[INFO] [stdout] 484 | /             ({
[INFO] [stdout] 485 | |                 let version = Version::V17;
[INFO] [stdout] 486 | |                 let block_size = ver_to_block_size(version) as u64;
[INFO] [stdout] 487 | |                 let container_size = calc_container_size(version, None, Some(data_par_burst), size);
[INFO] [stdout] ...   |
[INFO] [stdout] 495 | |                     && container_size <= container_size_upper_bound
[INFO] [stdout] 496 | |             })
[INFO] [stdout]     | |______________^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 484 |             {
[INFO] [stdout] 485 |                 let version = Version::V17;
[INFO] [stdout] 486 |                 let block_size = ver_to_block_size(version) as u64;
[INFO] [stdout] 487 |                 let container_size = calc_container_size(version, None, Some(data_par_burst), size);
[INFO] [stdout] 488 |                 let super_block_set_count_lower_bound = size / (super_block_set_size * block_size);
[INFO] [stdout] 489 |                 let super_block_set_count_upper_bound = (size + ((super_block_set_size * block_size) - 1)) / (super_block_set_size * block_size);
[INFO] [stdout]   ...
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 |     fn round_down_to_multiple(Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                               ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:3:43
[INFO] [stdout]   |
[INFO] [stdout] 3 |     fn round_down_to_multiple(Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                                           ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:4:31
[INFO] [stdout]   |
[INFO] [stdout] 4 |     fn round_up_to_multiple  (Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                               ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:4:43
[INFO] [stdout]   |
[INFO] [stdout] 4 |     fn round_up_to_multiple  (Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                                           ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:5:31
[INFO] [stdout]   |
[INFO] [stdout] 5 |     fn ensure_at_least       (Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                               ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:5:43
[INFO] [stdout]   |
[INFO] [stdout] 5 |     fn ensure_at_least       (Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                                           ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:6:31
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn ensure_at_most        (Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                               ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]  --> src/integer_utils.rs:6:43
[INFO] [stdout]   |
[INFO] [stdout] 6 |     fn ensure_at_most        (Self::Item, Self::Item) -> Self::Item;
[INFO] [stdout]   |                                           ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Error` is imported redundantly
[INFO] [stdout]   --> src/sbx_block/header.rs:56:13
[INFO] [stdout]    |
[INFO] [stdout] 11 | use super::Error;
[INFO] [stdout]    |     ------------ the item `Error` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 56 |         use super::Error;
[INFO] [stdout]    |             ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]    --> src/sbx_block/mod.rs:209:9
[INFO] [stdout]     |
[INFO] [stdout] 209 |         (data_shards as u32 <= index_in_set)
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/sbx_block/mod.rs:743:46
[INFO] [stdout]     |
[INFO] [stdout] 743 | ...                   pred   : Option<&Fn(&Block) -> bool>)
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&Block) -> bool`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(bare_trait_objects)]` on by default
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the item `Error` is imported redundantly
[INFO] [stdout]   --> src/log.rs:58:17
[INFO] [stdout]    |
[INFO] [stdout] 5  | use general_error::Error;
[INFO] [stdout]    |     -------------------- the item `Error` is already imported here
[INFO] [stdout] ...
[INFO] [stdout] 58 |     use super::{Error, ErrorKind};
[INFO] [stdout]    |                 ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stdout]   --> src/log.rs:65:31
[INFO] [stdout]    |
[INFO] [stdout] 65 |     fn deserialize(&mut self, &[u8]) -> Result<(), ()>;
[INFO] [stdout]    |                               ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/repair_core.rs:159:45
[INFO] [stdout]     |
[INFO] [stdout] 159 | ...                   pred        : &Fn(&Block) -> bool,
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&Block) -> bool`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/misc_macros.rs:345:19
[INFO] [stdout]     |
[INFO] [stdout] 345 |           $($expr;)*;
[INFO] [stdout]     |                     ^ help: remove this semicolon
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/repair_core.rs:210:9
[INFO] [stdout]     |
[INFO] [stdout] 210 | /         print_if!(verbose => param, reporter =>
[INFO] [stdout] 211 | |                   "{}", repair_stats;);
[INFO] [stdout]     | |_______________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `pause_reporter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/misc_macros.rs:345:19
[INFO] [stdout]     |
[INFO] [stdout] 345 |           $($expr;)*;
[INFO] [stdout]     |                     ^ help: remove this semicolon
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/repair_core.rs:329:25
[INFO] [stdout]     |
[INFO] [stdout] 329 | /                         print_if!(verbose => param, reporter =>
[INFO] [stdout] 330 | |                                   "Replaced invalid metadata block at {} (0x{:X}) with reference block", p, p;);
[INFO] [stdout]     | |________________________________________________________________________________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `pause_reporter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/misc_macros.rs:345:19
[INFO] [stdout]     |
[INFO] [stdout] 345 |           $($expr;)*;
[INFO] [stdout]     |                     ^ help: remove this semicolon
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/check_core.rs:207:25
[INFO] [stdout]     |
[INFO] [stdout] 207 | /                         print_if!(verbose => param, reporter =>
[INFO] [stdout] 208 | |                                   "Block failed check, version : {}, block size : {}, at byte {} (0x{:X})",
[INFO] [stdout] 209 | |                                   ver_usize,
[INFO] [stdout] 210 | |                                   block_size,
[INFO] [stdout] 211 | |                                   block_pos,
[INFO] [stdout] 212 | |                                   block_pos;);
[INFO] [stdout]     | |______________________________________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `pause_reporter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary trailing semicolon
[INFO] [stdout]    --> src/misc_macros.rs:345:19
[INFO] [stdout]     |
[INFO] [stdout] 345 |         $($expr;)*;
[INFO] [stdout]     |                   ^ help: remove this semicolon
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/check_core.rs:226:9
[INFO] [stdout]     |
[INFO] [stdout] 226 |         print_if!(verbose not_json => param, reporter, json_printer => "";);
[INFO] [stdout]     |         -------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this warning originates in the macro `pause_reporter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 21 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 12.63s
[INFO] running `Command { std: "docker" "inspect" "81a44bb187c332fc5e0c80a24083a63ff859aeb0346f5cd6beb07a8b19d65879", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "81a44bb187c332fc5e0c80a24083a63ff859aeb0346f5cd6beb07a8b19d65879", kill_on_drop: false }`
[INFO] [stdout] 81a44bb187c332fc5e0c80a24083a63ff859aeb0346f5cd6beb07a8b19d65879
[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" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "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] c92234ca449499ea686933378dbad3648845457d921471aabdbaed4909545438
[INFO] running `Command { std: "docker" "start" "-a" "c92234ca449499ea686933378dbad3648845457d921471aabdbaed4909545438", kill_on_drop: false }`
[INFO] [stdout] 
[INFO] [stderr] warning: unnecessary parentheses around block return value
[INFO] [stdout] running 93 tests
[INFO] [stderr]   --> src/file_utils.rs:74:9
[INFO] [stdout] test crc_ccitt::tests::basic_value_tests_0x1d0f ... ok
[INFO] [stderr]    |
[INFO] [stderr] 74 |         ((size + (block_size - 1)) / block_size)
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around block return value
[INFO] [stderr]   --> src/file_utils.rs:85:9
[INFO] [stderr]    |
[INFO] [stderr] 85 |         ((size + (data_size - 1)) / data_size)
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stderr]  --> src/integer_utils.rs:3:31
[INFO] [stderr]   |
[INFO] [stderr] 3 |     fn round_down_to_multiple(Self::Item, Self::Item) -> Self::Item;
[INFO] [stderr]   |                               ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stderr]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stderr]  --> src/integer_utils.rs:3:43
[INFO] [stderr]   |
[INFO] [stderr] 3 |     fn round_down_to_multiple(Self::Item, Self::Item) -> Self::Item;
[INFO] [stderr]   |                                           ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stderr]   |
[INFO] [stderr]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stderr]  --> src/integer_utils.rs:4:31
[INFO] [stderr]   |
[INFO] [stderr] 4 |     fn round_up_to_multiple  (Self::Item, Self::Item) -> Self::Item;
[INFO] [stderr]   |                               ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stderr]   |
[INFO] [stderr]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stderr]  --> src/integer_utils.rs:4:43
[INFO] [stderr]   |
[INFO] [stderr] 4 |     fn round_up_to_multiple  (Self::Item, Self::Item) -> Self::Item;
[INFO] [stderr]   |                                           ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stderr]   |
[INFO] [stderr]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stderr]  --> src/integer_utils.rs:5:31
[INFO] [stderr]   |
[INFO] [stderr] 5 |     fn ensure_at_least       (Self::Item, Self::Item) -> Self::Item;
[INFO] [stderr]   |                               ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stderr]   |
[INFO] [stderr]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stderr]  --> src/integer_utils.rs:5:43
[INFO] [stderr]   |
[INFO] [stderr] 5 |     fn ensure_at_least       (Self::Item, Self::Item) -> Self::Item;
[INFO] [stderr]   |                                           ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stderr]   |
[INFO] [stderr]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stderr]  --> src/integer_utils.rs:6:31
[INFO] [stderr]   |
[INFO] [stderr] 6 |     fn ensure_at_most        (Self::Item, Self::Item) -> Self::Item;
[INFO] [stderr]   |                               ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stderr]   |
[INFO] [stderr]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stderr]  --> src/integer_utils.rs:6:43
[INFO] [stderr]   |
[INFO] [stderr] 6 |     fn ensure_at_most        (Self::Item, Self::Item) -> Self::Item;
[INFO] [stderr]   |                                           ^^^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: Self::Item`
[INFO] [stderr]   |
[INFO] [stderr]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]   = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr] 
[INFO] [stderr] warning: the item `Error` is imported redundantly
[INFO] [stderr]   --> src/sbx_block/header.rs:56:13
[INFO] [stderr]    |
[INFO] [stderr] 11 | use super::Error;
[INFO] [stderr]    |     ------------ the item `Error` is already imported here
[INFO] [stderr] ...
[INFO] [stderr] 56 |         use super::Error;
[INFO] [stderr]    |             ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around block return value
[INFO] [stderr]    --> src/sbx_block/mod.rs:209:9
[INFO] [stderr]     |
[INFO] [stderr] 209 |         (data_shards as u32 <= index_in_set)
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/sbx_block/mod.rs:743:46
[INFO] [stderr]     |
[INFO] [stderr] 743 | ...                   pred   : Option<&Fn(&Block) -> bool>)
[INFO] [stderr]     |                                        ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&Block) -> bool`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: the item `Error` is imported redundantly
[INFO] [stderr]   --> src/log.rs:58:17
[INFO] [stderr]    |
[INFO] [stderr] 5  | use general_error::Error;
[INFO] [stderr]    |     -------------------- the item `Error` is already imported here
[INFO] [stderr] ...
[INFO] [stderr] 58 |     use super::{Error, ErrorKind};
[INFO] [stderr]    |                 ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: anonymous parameters are deprecated and will be removed in the next edition.
[INFO] [stderr]   --> src/log.rs:65:31
[INFO] [stderr]    |
[INFO] [stderr] 65 |     fn deserialize(&mut self, &[u8]) -> Result<(), ()>;
[INFO] [stderr]    |                               ^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &[u8]`
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stderr]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/repair_core.rs:159:45
[INFO] [stderr]     |
[INFO] [stderr] 159 | ...                   pred        : &Fn(&Block) -> bool,
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(&Block) -> bool`
[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 issue #80165 <https://github.com/rust-lang/rust/issues/80165>
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/misc_macros.rs:345:19
[INFO] [stderr]     |
[INFO] [stderr] 345 |           $($expr;)*;
[INFO] [stderr]     |                     ^ help: remove this semicolon
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/repair_core.rs:210:9
[INFO] [stderr]     |
[INFO] [stderr] 210 | /         print_if!(verbose => param, reporter =>
[INFO] [stderr] 211 | |                   "{}", repair_stats;);
[INFO] [stderr]     | |_______________________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stderr]     = note: this warning originates in the macro `pause_reporter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/misc_macros.rs:345:19
[INFO] [stderr]     |
[INFO] [stderr] 345 |           $($expr;)*;
[INFO] [stderr]     |                     ^ help: remove this semicolon
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/repair_core.rs:329:25
[INFO] [stderr]     |
[INFO] [stderr] 329 | /                         print_if!(verbose => param, reporter =>
[INFO] [stderr] 330 | |                                   "Replaced invalid metadata block at {} (0x{:X}) with reference block", p, p;);
[INFO] [stderr]     | |________________________________________________________________________________________________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `pause_reporter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/misc_macros.rs:345:19
[INFO] [stderr]     |
[INFO] [stderr] 345 |           $($expr;)*;
[INFO] [stderr]     |                     ^ help: remove this semicolon
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/check_core.rs:207:25
[INFO] [stderr]     |
[INFO] [stderr] 207 | /                         print_if!(verbose => param, reporter =>
[INFO] [stderr] 208 | |                                   "Block failed check, version : {}, block size : {}, at byte {} (0x{:X})",
[INFO] [stderr] 209 | |                                   ver_usize,
[INFO] [stderr] 210 | |                                   block_size,
[INFO] [stderr] 211 | |                                   block_pos,
[INFO] [stderr] 212 | |                                   block_pos;);
[INFO] [stderr]     | |______________________________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `pause_reporter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> src/misc_macros.rs:345:19
[INFO] [stderr]     |
[INFO] [stderr] 345 |         $($expr;)*;
[INFO] [stderr]     |                   ^ help: remove this semicolon
[INFO] [stderr]     | 
[INFO] [stderr]    ::: src/check_core.rs:226:9
[INFO] [stderr]     |
[INFO] [stderr] 226 |         print_if!(verbose not_json => param, reporter, json_printer => "";);
[INFO] [stderr]     |         -------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `pause_reporter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around block return value
[INFO] [stderr]    --> src/file_utils_tests.rs:484:13
[INFO] [stderr]     |
[INFO] [stderr] 484 | /             ({
[INFO] [stderr] 485 | |                 let version = Version::V17;
[INFO] [stderr] 486 | |                 let block_size = ver_to_block_size(version) as u64;
[INFO] [stderr] 487 | |                 let container_size = calc_container_size(version, None, Some(data_par_burst), size);
[INFO] [stderr] ...   |
[INFO] [stderr] 495 | |                     && container_size <= container_size_upper_bound
[INFO] [stderr] 496 | |             })
[INFO] [stderr]     | |______________^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 484 |             {
[INFO] [stderr] 485 |                 let version = Version::V17;
[INFO] [stderr] 486 |                 let block_size = ver_to_block_size(version) as u64;
[INFO] [stderr] 487 |                 let container_size = calc_container_size(version, None, Some(data_par_burst), size);
[INFO] [stderr] 488 |                 let super_block_set_count_lower_bound = size / (super_block_set_size * block_size);
[INFO] [stderr] 489 |                 let super_block_set_count_upper_bound = (size + ((super_block_set_size * block_size) - 1)) / (super_block_set_size * block_size);
[INFO] [stderr]   ...
[INFO] [stderr] 
[INFO] [stderr] warning: `rsbx` (lib) generated 20 warnings
[INFO] [stderr] warning: `rsbx` (lib test) generated 21 warnings (20 duplicates)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.10s
[INFO] [stderr]      Running unittests (/opt/rustwide/target/debug/deps/blkar_lib-99c4c7c2ceddeec5)
[INFO] [stdout] test file_utils_tests::from_orig_file_size::qc_calc_data_only_and_parity_block_count_exc_burst_gaps_rs_enabled ... ok
[INFO] [stdout] test crc_ccitt::tests::basic_value_tests_0xffff ... ok
[INFO] [stdout] test file_utils_tests::test_get_file_name_part_of_path_simple_cases ... ok
[INFO] [stdout] test file_utils_tests::from_orig_file_size::qc_calc_total_block_count_exc_burst_gaps_consistent_rs_disabled ... ok
[INFO] [stdout] test file_utils_tests::from_orig_file_size::qc_calc_data_only_and_parity_block_count_exc_burst_gaps_rs_disabled ... ok
[INFO] [stdout] test integer_utils_tests::qc_ensure_at_most ... ok
[INFO] [stdout] test file_utils_tests::from_orig_file_size::qc_calc_data_block_count_exc_burst_gaps_consistent_rs_disabled ... ok
[INFO] [stdout] test file_utils_tests::qc_calc_meta_block_count_exc_burst_gaps_rs_enabled ... ok
[INFO] [stdout] test file_utils_tests::from_orig_file_size::qc_calc_container_size_rs_enabled_not_too_off ... ok
[INFO] [stdout] test integer_utils_tests::qc_ensure_at_least ... ok
[INFO] [stdout] test file_utils_tests::test_calc_meta_block_count_exc_burst_gaps_rs_disabled ... ok
[INFO] [stdout] test file_utils_tests::from_orig_file_size::qc_calc_data_block_count_exc_burst_gaps_consistent_rs_enabled ... ok
[INFO] [stdout] test integer_utils_tests::qc_round_down_to_multiple ... ok
[INFO] [stdout] test misc_utils_tests::hex_tests::hex_to_bytes_test_cases ... ok
[INFO] [stdout] test integer_utils_tests::qc_round_up_to_multiple ... ok
[INFO] [stdout] test integer_utils_tests::test_round_down_to_multiple_simple_cases ... ok
[INFO] [stdout] test integer_utils_tests::test_round_up_to_multiple_simple_cases ... ok
[INFO] [stdout] test file_utils_tests::from_orig_file_size::qc_calc_total_block_count_exc_burst_gaps_consistent_rs_enabled ... ok
[INFO] [stdout] test file_utils_tests::from_orig_file_size::test_calc_container_size_simple_cases ... ok
[INFO] [stdout] test misc_utils_tests::qc_calc_required_len_and_seek_to_from_byte_range ... ok
[INFO] [stdout] test misc_utils_tests::test_buffer_is_blank_simple_cases ... ok
[INFO] [stdout] test misc_utils_tests::hex_tests::error_handling ... ok
[INFO] [stdout] test multihash_tests::test_string_to_hash_type ... ok
[INFO] [stdout] test multihash_tests::test_hash_type_to_string ... ok
[INFO] [stdout] test misc_utils_tests::test_camelcase ... ok
[INFO] [stdout] test misc_utils_tests::test_make_path_simple_cases ... ok
[INFO] [stdout] test misc_utils_tests::test_f64_max_simple_cases ... ok
[INFO] [stdout] test file_utils_tests::from_orig_file_size::qc_calc_container_size_rs_enabled_no_data ... ok
[INFO] [stdout] test misc_utils_tests::hex_tests::bytes_to_hex_test_cases ... ok
[INFO] [stdout] test multihash_tests::test_vectors::multihash_sha1_bytes ... ok
[INFO] [stdout] test multihash_tests::test_vectors::multihash_sha512_bytes ... ok
[INFO] [stdout] test multihash_tests::test_vectors::multihash_sha256_bytes ... ok
[INFO] [stdout] test multihash_tests::test_specs ... ok
[INFO] [stdout] test multihash_tests::test_vectors::blake2b_512_test_vectors ... ok
[INFO] [stdout] test multihash_tests::test_vectors::multihash_blake2b_512_bytes ... ok
[INFO] [stdout] test sbx_block::metadata_tests::test_filter_invalid_metadata_simple_cases ... ok
[INFO] [stdout] test sbx_block::header_tests::test_to_from_to_bytes ... ok
[INFO] [stdout] test sbx_block::header_tests::test_from_bytes_error_handling ... ok
[INFO] [stdout] test sbx_block::header_tests::test_from_bytes_versions ... ok
[INFO] [stdout] test sbx_block::header_tests::test_to_bytes_versions ... ok
[INFO] [stdout] test sbx_block::metadata_tests::test_get_meta_ref_mut_by_id ... ok
[INFO] [stdout] test sbx_block::metadata_tests::test_to_bytes_simple_cases ... ok
[INFO] [stdout] test sbx_block::metadata_tests::test_from_bytes_simple_cases ... ok
[INFO] [stdout] test sbx_block::metadata_tests::test_meta_to_id ... ok
[INFO] [stdout] test sbx_block::metadata_tests::test_id_to_str ... ok
[INFO] [stdout] test sbx_block::header_tests::test_from_to_from_bytes ... ok
[INFO] [stdout] test sbx_block::tests::qc_block_is_parity_matches_seq_num_is_parity ... ok
[INFO] [stdout] test sbx_block::tests::qc_calc_data_chunk_write_pos_consistent_rs_disabled ... ok
[INFO] [stdout] test sbx_block::tests::qc_calc_data_chunk_write_index_rs_enabled_ret_opt_correctly ... ok
[INFO] [stdout] test sbx_block::metadata_tests::test_get_meta_ref_by_id ... ok
[INFO] [stdout] test sbx_block::tests::qc_calc_data_chunk_write_index_rs_disabled ... ok
[INFO] [stdout] test sbx_block::tests::qc_add_seq_num ... ok
[INFO] [stdout] test sbx_block::tests::qc_data_block_write_pos_consistent_rs_enabled ... ok
[INFO] [stdout] test sbx_block::tests::qc_data_block_write_pos_consistent_rs_disabled ... ok
[INFO] [stdout] test sbx_block::tests::qc_data_seq_num_to_index_to_seq_num_meta_disabled ... ok
[INFO] [stdout] test sbx_block::tests::qc_calc_data_chunk_write_pos_consistent_rs_enabled ... ok
[INFO] [stdout] test sbx_block::tests::qc_meta_block_write_indices_data_block_write_indices_disjoint_rs_disabled ... ok
[INFO] [stdout] test sbx_block::tests::qc_data_seq_num_to_index_to_seq_num_meta_default ... ok
[INFO] [stdout] test sbx_block::tests::qc_meta_block_write_pos_s_consistent_rs_disabled ... ok
[INFO] [stdout] test sbx_block::tests::qc_meta_block_write_indices_data_block_write_indices_disjoint_rs_enabled ... ok
[INFO] [stdout] test sbx_block::tests::qc_set_get_seq_num ... ok
[INFO] [stdout] test rs_codec::repairer_tests::test_repairer_repair_properly_simple_cases ... ok
[INFO] [stdout] test sbx_block::tests::qc_data_seq_num_to_index_to_seq_num_meta_enabled ... ok
[INFO] [stdout] test sbx_block::tests::qc_data_seq_num_to_index_to_seq_num_rs_enabled ... ok
[INFO] [stdout] test sbx_block::tests::test_calc_data_chunk_write_index_simple_cases ... ok
[INFO] [stdout] test sbx_block::tests::test_calc_rs_enabled_data_write_index_simple_cases ... ok
[INFO] [stdout] test sbx_block::tests::test_calc_rs_enabled_seq_num_at_index_simple_cases ... ok
[INFO] [stdout] test sbx_block::tests::test_get_uid ... ok
[INFO] [stdout] test rs_codec::encoder_tests::test_encoder_encode_correctly_simple_cases ... ok
[INFO] [stdout] test sbx_block::tests::test_get_version_simple_cases ... ok
[INFO] [stdout] test sbx_block::tests::test_seq_num_is_parity_simple_cases ... ok
[INFO] [stdout] test sbx_block::tests::test_sync_to_buffer_simple_cases ... ok
[INFO] [stdout] test sbx_specs_tests::test_string_to_ver ... ok
[INFO] [stdout] test sbx_block::tests::test_sync_from_buffer_simple_cases ... ok
[INFO] [stdout] test sbx_block::tests::test_set_uid ... ok
[INFO] [stdout] test sbx_block::tests::test_set_version_simple_cases ... ok
[INFO] [stdout] test sbx_block::header_tests::test_to_bytes_error_handling_case2 - should panic ... ok
[INFO] [stdout] test sbx_block::header_tests::test_to_bytes_error_handling_case1 - should panic ... ok
[INFO] [stdout] test sbx_specs_tests::test_ver_to_block_size ... ok
[INFO] [stdout] test sbx_specs_tests::test_ver_uses_rs ... ok
[INFO] [stdout] test sbx_specs_tests::test_ver_forces_meta_enabled ... ok
[INFO] [stdout] test sbx_specs_tests::test_ver_to_data_size ... ok
[INFO] [stdout] test time_utils_tests::qc_seconds_to_hms_to_seconds ... ok
[INFO] [stdout] test sbx_block::tests::test_calc_rs_enabled_meta_write_indices ... ok
[INFO] [stdout] test sbx_block::tests::qc_meta_block_write_pos_s_consistent_rs_enabled ... ok
[INFO] [stdout] test multihash_tests::test_vectors::sha512_test_vectors ... ok
[INFO] [stdout] test multihash_tests::test_vectors::sha256_test_vectors ... ok
[INFO] [stdout] test multihash_tests::test_vectors::sha1_test_vectors ... ok
[INFO] [stdout] test misc_utils_tests::hex_tests::hex_to_bytes_to_hex ... ok
[INFO] [stdout] test sbx_block::tests::qc_calc_data_chunk_write_index_rs_enabled_calc_correctly ... ok
[INFO] [stdout] test rs_codec::encoder_tests::qc_encoder_encode_same_as_encode ... ok
[INFO] [stdout] test rs_codec::repairer_tests::qc_repairer_repair_properly ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 93 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 42.04s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests (/opt/rustwide/target/debug/deps/rsbx-cca85f78bc6a36d0)
[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; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests blkar_lib
[INFO] [stderr] warning: unnecessary parentheses around block return value
[INFO] [stderr]   --> /opt/rustwide/workdir/src/file_utils.rs:74:9
[INFO] [stderr]    |
[INFO] [stderr] 74 |         ((size + (block_size - 1)) / block_size)
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around block return value
[INFO] [stderr]   --> /opt/rustwide/workdir/src/file_utils.rs:85:9
[INFO] [stderr]    |
[INFO] [stderr] 85 |         ((size + (data_size - 1)) / data_size)
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around block return value
[INFO] [stderr]    --> /opt/rustwide/workdir/src/sbx_block/mod.rs:209:9
[INFO] [stderr]     |
[INFO] [stderr] 209 |         (data_shards as u32 <= index_in_set)
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> /opt/rustwide/workdir/src/misc_macros.rs:345:19
[INFO] [stderr]     |
[INFO] [stderr] 345 |           $($expr;)*;
[INFO] [stderr]     |                     ^ help: remove this semicolon
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/workdir/src/repair_core.rs:210:9
[INFO] [stderr]     |
[INFO] [stderr] 210 | /         print_if!(verbose => param, reporter =>
[INFO] [stderr] 211 | |                   "{}", repair_stats;);
[INFO] [stderr]     | |_______________________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(redundant_semicolons)]` on by default
[INFO] [stderr]     = note: this warning originates in the macro `pause_reporter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> /opt/rustwide/workdir/src/misc_macros.rs:345:19
[INFO] [stderr]     |
[INFO] [stderr] 345 |           $($expr;)*;
[INFO] [stderr]     |                     ^ help: remove this semicolon
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/workdir/src/repair_core.rs:329:25
[INFO] [stderr]     |
[INFO] [stderr] 329 | /                         print_if!(verbose => param, reporter =>
[INFO] [stderr] 330 | |                                   "Replaced invalid metadata block at {} (0x{:X}) with reference block", p, p;);
[INFO] [stderr]     | |________________________________________________________________________________________________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `pause_reporter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> /opt/rustwide/workdir/src/misc_macros.rs:345:19
[INFO] [stderr]     |
[INFO] [stderr] 345 |           $($expr;)*;
[INFO] [stderr]     |                     ^ help: remove this semicolon
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/workdir/src/check_core.rs:207:25
[INFO] [stderr]     |
[INFO] [stderr] 207 | /                         print_if!(verbose => param, reporter =>
[INFO] [stderr] 208 | |                                   "Block failed check, version : {}, block size : {}, at byte {} (0x{:X})",
[INFO] [stderr] 209 | |                                   ver_usize,
[INFO] [stderr] 210 | |                                   block_size,
[INFO] [stderr] 211 | |                                   block_pos,
[INFO] [stderr] 212 | |                                   block_pos;);
[INFO] [stderr]     | |______________________________________________- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `pause_reporter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary trailing semicolon
[INFO] [stderr]    --> /opt/rustwide/workdir/src/misc_macros.rs:345:19
[INFO] [stderr]     |
[INFO] [stderr] 345 |         $($expr;)*;
[INFO] [stderr]     |                   ^ help: remove this semicolon
[INFO] [stderr]     | 
[INFO] [stderr]    ::: /opt/rustwide/workdir/src/check_core.rs:226:9
[INFO] [stderr]     |
[INFO] [stderr] 226 |         print_if!(verbose not_json => param, reporter, json_printer => "";);
[INFO] [stderr]     |         -------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]     |
[INFO] [stderr]     = note: this warning originates in the macro `pause_reporter` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: 7 warnings emitted
[INFO] [stderr] 
[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; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "c92234ca449499ea686933378dbad3648845457d921471aabdbaed4909545438", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c92234ca449499ea686933378dbad3648845457d921471aabdbaed4909545438", kill_on_drop: false }`
[INFO] [stdout] c92234ca449499ea686933378dbad3648845457d921471aabdbaed4909545438
