[INFO] fetching crate primesieve 0.2.1...
[INFO] testing primesieve-0.2.1 against 1.95.0 for beta-1.96-2
[INFO] extracting crate primesieve 0.2.1 into /workspace/builds/worker-6-tc1/source
[INFO] started tweaking crates.io crate primesieve 0.2.1
[INFO] finished tweaking crates.io crate primesieve 0.2.1
[INFO] tweaked toml for crates.io crate primesieve 0.2.1 written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate primesieve 0.2.1 on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] b0902e7be33ae63efc7649639b3ed2eb186b0a151c30d54555dbce6f64024352
[INFO] running `Command { std: "docker" "start" "-a" "b0902e7be33ae63efc7649639b3ed2eb186b0a151c30d54555dbce6f64024352", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b0902e7be33ae63efc7649639b3ed2eb186b0a151c30d54555dbce6f64024352", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b0902e7be33ae63efc7649639b3ed2eb186b0a151c30d54555dbce6f64024352", kill_on_drop: false }`
[INFO] [stdout] b0902e7be33ae63efc7649639b3ed2eb186b0a151c30d54555dbce6f64024352
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c66a535de62b56b7694c532be6cbe712da851091c11b66c261bca2ecca52640e
[INFO] running `Command { std: "docker" "start" "-a" "c66a535de62b56b7694c532be6cbe712da851091c11b66c261bca2ecca52640e", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling primesieve v0.2.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/segment.rs:92:25
[INFO] [stdout]    |
[INFO] [stdout] 92 |         (true, x, y) => (segment[x] & y != 0),
[INFO] [stdout]    |                         ^                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 92 -         (true, x, y) => (segment[x] & y != 0),
[INFO] [stdout] 92 +         (true, x, y) => segment[x] & y != 0,
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/sieve/mod.rs:22:10
[INFO] [stdout]    |
[INFO] [stdout] 22 |         0...5 => 12,
[INFO] [stdout]    |          ^^^ help: use `..=` for an inclusive range
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `set_on` is never used
[INFO] [stdout]    --> src/segment.rs:107:8
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub fn set_on(segment: &mut [u64], idx: u64) {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/iterator.rs:30:37
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn new(sieve: &'a [u64]) -> SieveIterator {
[INFO] [stdout]    |                        --           ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn new(sieve: &'a [u64]) -> SieveIterator<'a> {
[INFO] [stdout]    |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.25s
[INFO] running `Command { std: "docker" "inspect" "c66a535de62b56b7694c532be6cbe712da851091c11b66c261bca2ecca52640e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c66a535de62b56b7694c532be6cbe712da851091c11b66c261bca2ecca52640e", kill_on_drop: false }`
[INFO] [stdout] c66a535de62b56b7694c532be6cbe712da851091c11b66c261bca2ecca52640e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e2c53067fc1970f3d6472d329733abbf6345cc404ecb2ac3f5a4d486ef7dd4ba
[INFO] running `Command { std: "docker" "start" "-a" "e2c53067fc1970f3d6472d329733abbf6345cc404ecb2ac3f5a4d486ef7dd4ba", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/segment.rs:92:25
[INFO] [stdout]    |
[INFO] [stdout] 92 |         (true, x, y) => (segment[x] & y != 0),
[INFO] [stdout]    |                         ^                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 92 -         (true, x, y) => (segment[x] & y != 0),
[INFO] [stdout] 92 +         (true, x, y) => segment[x] & y != 0,
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/sieve/mod.rs:22:10
[INFO] [stdout]    |
[INFO] [stdout] 22 |         0...5 => 12,
[INFO] [stdout]    |          ^^^ help: use `..=` for an inclusive range
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `set_on` is never used
[INFO] [stdout]    --> src/segment.rs:107:8
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub fn set_on(segment: &mut [u64], idx: u64) {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/iterator.rs:30:37
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn new(sieve: &'a [u64]) -> SieveIterator {
[INFO] [stdout]    |                        --           ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn new(sieve: &'a [u64]) -> SieveIterator<'a> {
[INFO] [stdout]    |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling primesieve v0.2.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]   --> src/segment.rs:92:25
[INFO] [stdout]    |
[INFO] [stdout] 92 |         (true, x, y) => (segment[x] & y != 0),
[INFO] [stdout]    |                         ^                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 92 -         (true, x, y) => (segment[x] & y != 0),
[INFO] [stdout] 92 +         (true, x, y) => segment[x] & y != 0,
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/sieve/mod.rs:22:10
[INFO] [stdout]    |
[INFO] [stdout] 22 |         0...5 => 12,
[INFO] [stdout]    |          ^^^ help: use `..=` for an inclusive range
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/iterator.rs:30:37
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn new(sieve: &'a [u64]) -> SieveIterator {
[INFO] [stdout]    |                        --           ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                        |
[INFO] [stdout]    |                        the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 30 |     pub fn new(sieve: &'a [u64]) -> SieveIterator<'a> {
[INFO] [stdout]    |                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.34s
[INFO] running `Command { std: "docker" "inspect" "e2c53067fc1970f3d6472d329733abbf6345cc404ecb2ac3f5a4d486ef7dd4ba", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e2c53067fc1970f3d6472d329733abbf6345cc404ecb2ac3f5a4d486ef7dd4ba", kill_on_drop: false }`
[INFO] [stdout] e2c53067fc1970f3d6472d329733abbf6345cc404ecb2ac3f5a4d486ef7dd4ba
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 0d111a2accb7b6e05d8636462d24da3250ea2d9def17ffb3b7c13559aaf250a6
[INFO] running `Command { std: "docker" "start" "-a" "0d111a2accb7b6e05d8636462d24da3250ea2d9def17ffb3b7c13559aaf250a6", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr] warning: unnecessary parentheses around match arm expression
[INFO] [stderr]   --> src/segment.rs:92:25
[INFO] [stderr]    |
[INFO] [stderr] 92 |         (true, x, y) => (segment[x] & y != 0),
[INFO] [stderr]    |                         ^                   ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 92 -         (true, x, y) => (segment[x] & y != 0),
[INFO] [stderr] 92 +         (true, x, y) => segment[x] & y != 0,
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/sieve/mod.rs:22:10
[INFO] [stderr]    |
[INFO] [stderr] 22 |         0...5 => 12,
[INFO] [stderr]    |          ^^^ help: use `..=` for an inclusive range
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `set_on` is never used
[INFO] [stderr]    --> src/segment.rs:107:8
[INFO] [stderr]     |
[INFO] [stderr] 107 | pub fn set_on(segment: &mut [u64], idx: u64) {
[INFO] [stderr]     |        ^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]   --> src/iterator.rs:30:37
[INFO] [stderr]    |
[INFO] [stderr] 30 |     pub fn new(sieve: &'a [u64]) -> SieveIterator {
[INFO] [stderr]    |                        --           ^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                        |
[INFO] [stderr]    |                        the lifetime is named here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: consistently use `'a`
[INFO] [stderr]    |
[INFO] [stderr] 30 |     pub fn new(sieve: &'a [u64]) -> SieveIterator<'a> {
[INFO] [stderr]    |                                                  ++++
[INFO] [stderr] 
[INFO] [stderr] warning: `primesieve` (lib) generated 4 warnings (run `cargo fix --lib -p primesieve` to apply 3 suggestions)
[INFO] [stderr] warning: `primesieve` (lib test) generated 3 warnings (3 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/primesieve-59638708dbc11063)
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test iterator::tests::test_empty ... ok
[INFO] [stdout] test segment::tests::set_large_values ... ok
[INFO] [stdout] test iterator::tests::test_medium ... ok
[INFO] [stdout] test iterator::tests::test_small ... ok
[INFO] [stdout] test wheel::tests::test_wheel ... ok
[INFO] [stdout] test segsieve::test_small_primes ... ok
[INFO] [stdout] test segsieve::tests::test_small_segmented_sieve ... ok
[INFO] [stdout] test segment::tests::set_small_values ... ok
[INFO] [stdout] test segsieve::tests::test_large_segmented_sieve ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.41s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests primesieve
[INFO] [stderr] warning: unnecessary parentheses around match arm expression
[INFO] [stderr]   --> src/segment.rs:92:25
[INFO] [stderr]    |
[INFO] [stderr] 92 |         (true, x, y) => (segment[x] & y != 0),
[INFO] [stderr]    |                         ^                   ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 92 -         (true, x, y) => (segment[x] & y != 0),
[INFO] [stderr] 92 +         (true, x, y) => segment[x] & y != 0,
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/sieve/mod.rs:22:10
[INFO] [stderr]    |
[INFO] [stderr] 22 |         0...5 => 12,
[INFO] [stderr]    |          ^^^ help: use `..=` for an inclusive range
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: 2 warnings emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test src/sieve/primefuncs.rs - sieve::primefuncs::Sieve::is_prime (line 29) ... ok
[INFO] [stdout] test src/sieve/mod.rs - sieve::Sieve::nth_prime (line 110) ... ok
[INFO] [stdout] test src/sieve/primefuncs.rs - sieve::primefuncs::Sieve::factorise (line 73) ... ok
[INFO] [stdout] test src/sieve/primefuncs.rs - sieve::primefuncs::Sieve::euler_phi (line 137) ... ok
[INFO] [stdout] test src/sieve/mod.rs - sieve::Sieve::limit (line 84) ... ok
[INFO] [stdout] test src/sieve/mod.rs - sieve::Sieve::num_primes (line 97) ... ok
[INFO] [stdout] test src/sieve/primefuncs.rs - sieve::primefuncs::Sieve::number_of_divisors (line 173) ... ok
[INFO] [stdout] test src/sieve/mod.rs - sieve::Sieve::iter (line 165) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.48s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "0d111a2accb7b6e05d8636462d24da3250ea2d9def17ffb3b7c13559aaf250a6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0d111a2accb7b6e05d8636462d24da3250ea2d9def17ffb3b7c13559aaf250a6", kill_on_drop: false }`
[INFO] [stdout] 0d111a2accb7b6e05d8636462d24da3250ea2d9def17ffb3b7c13559aaf250a6
