[INFO] fetching crate fishers_exact 1.0.1... [INFO] linting fishers_exact-1.0.1 against nightly for clippy-nonminimal_bool-denied [INFO] extracting crate fishers_exact 1.0.1 into /workspace/builds/worker-2-tc1/source [INFO] started tweaking crates.io crate fishers_exact 1.0.1 [INFO] finished tweaking crates.io crate fishers_exact 1.0.1 [INFO] tweaked toml for crates.io crate fishers_exact 1.0.1 written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate fishers_exact 1.0.1 on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "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" "+nightly" "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" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 8add8533118b3d06fb1bb7f70f23d5488ead83b3e737b3076f7a53c834e713ec [INFO] running `Command { std: "docker" "start" "-a" "8add8533118b3d06fb1bb7f70f23d5488ead83b3e737b3076f7a53c834e713ec", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8add8533118b3d06fb1bb7f70f23d5488ead83b3e737b3076f7a53c834e713ec", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8add8533118b3d06fb1bb7f70f23d5488ead83b3e737b3076f7a53c834e713ec", kill_on_drop: false }` [INFO] [stdout] 8add8533118b3d06fb1bb7f70f23d5488ead83b3e737b3076f7a53c834e713ec [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-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" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 53cbe3abd035d962173c15a8986cb673ef1523a0a2bf261cfb2e73372fca38ce [INFO] running `Command { std: "docker" "start" "-a" "53cbe3abd035d962173c15a8986cb673ef1523a0a2bf261cfb2e73372fca38ce", kill_on_drop: false }` [INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024` [INFO] [stderr] Checking fishers_exact v1.0.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: float has excessive precision [INFO] [stdout] --> src/lib.rs:41:14 [INFO] [stdout] | [INFO] [stdout] 41 | x.ln() - 5.58106146679532777 - z + (z - 0.5) * (z + 6.5).ln() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stdout] = note: `#[warn(clippy::excessive_precision)]` on by default [INFO] [stdout] help: consider changing the type or truncating it to [INFO] [stdout] | [INFO] [stdout] 41 - x.ln() - 5.58106146679532777 - z + (z - 0.5) * (z + 6.5).ln() [INFO] [stdout] 41 + x.ln() - 5.581_061_466_795_328 - z + (z - 0.5) * (z + 6.5).ln() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/lib.rs:87:12 [INFO] [stdout] | [INFO] [stdout] 87 | if !(n11i % 10 == 0) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try: `(n11i % 10 != 0)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | return s.prob; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 110 - return s.prob; [INFO] [stdout] 110 + s.prob [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:171:5 [INFO] [stdout] | [INFO] [stdout] 171 | return (prob, sleft, sright, sless, slarg); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 171 - return (prob, sleft, sright, sless, slarg); [INFO] [stdout] 171 + (prob, sleft, sright, sless, slarg) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/lib.rs:122:5 [INFO] [stdout] | [INFO] [stdout] 122 | let prob: f64; [INFO] [stdout] | ^^^^^^^^^^^^^^ created here [INFO] [stdout] ... [INFO] [stdout] 135 | prob = hyper0(&mut s, n11, n1_, n_1, n); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ initialised here [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] = note: `#[warn(clippy::needless_late_init)]` on by default [INFO] [stdout] help: move the declaration `prob` here [INFO] [stdout] | [INFO] [stdout] 122 ~ [INFO] [stdout] 123 | let mut max = n1_; [INFO] [stdout] ... [INFO] [stdout] 134 | let mut s = HyperState::new(); [INFO] [stdout] 135 ~ let prob: f64 = hyper0(&mut s, n11, n1_, n_1, n); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric constant [INFO] [stdout] --> src/lib.rs:208:80 [INFO] [stdout] | [INFO] [stdout] 208 | write!(f, "all integers passed to fishers_exact must be less than {}", std::i32::MAX) [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] = note: `#[warn(clippy::legacy_numeric_constants)]` on by default [INFO] [stdout] help: use the associated constant instead [INFO] [stdout] | [INFO] [stdout] 208 - write!(f, "all integers passed to fishers_exact must be less than {}", std::i32::MAX) [INFO] [stdout] 208 + write!(f, "all integers passed to fishers_exact must be less than {}", i32::MAX) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:232:5 [INFO] [stdout] | [INFO] [stdout] 232 | / return FishersExactPvalues { [INFO] [stdout] 233 | | two_tail_pvalue: twotail, [INFO] [stdout] 234 | | less_pvalue: left, [INFO] [stdout] 235 | | greater_pvalue: right, [INFO] [stdout] 236 | | }; [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 232 ~ FishersExactPvalues { [INFO] [stdout] 233 + two_tail_pvalue: twotail, [INFO] [stdout] 234 + less_pvalue: left, [INFO] [stdout] 235 + greater_pvalue: right, [INFO] [stdout] 236 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric constant [INFO] [stdout] --> src/lib.rs:263:34 [INFO] [stdout] | [INFO] [stdout] 263 | if table.iter().any(|&x| x > std::i32::MAX as u32) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] help: use the associated constant instead [INFO] [stdout] | [INFO] [stdout] 263 - if table.iter().any(|&x| x > std::i32::MAX as u32) { [INFO] [stdout] 263 + if table.iter().any(|&x| x > i32::MAX as u32) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric constant [INFO] [stdout] --> src/lib.rs:421:31 [INFO] [stdout] | [INFO] [stdout] 421 | match fishers_exact(&[std::i32::MAX as u32 + 1, 1, 1, 1]) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] help: use the associated constant instead [INFO] [stdout] | [INFO] [stdout] 421 - match fishers_exact(&[std::i32::MAX as u32 + 1, 1, 1, 1]) { [INFO] [stdout] 421 + match fishers_exact(&[i32::MAX as u32 + 1, 1, 1, 1]) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this assertion is always `false` [INFO] [stdout] --> src/lib.rs:423:18 [INFO] [stdout] | [INFO] [stdout] 423 | _ => assert!(false), // Should have errored. [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: replace this with `panic!()` or `unreachable!()` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assertions_on_constants [INFO] [stdout] = note: `#[warn(clippy::assertions_on_constants)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: float has excessive precision [INFO] [stdout] --> src/lib.rs:41:14 [INFO] [stdout] | [INFO] [stdout] 41 | x.ln() - 5.58106146679532777 - z + (z - 0.5) * (z + 6.5).ln() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#excessive_precision [INFO] [stdout] = note: `#[warn(clippy::excessive_precision)]` on by default [INFO] [stdout] help: consider changing the type or truncating it to [INFO] [stdout] | [INFO] [stdout] 41 - x.ln() - 5.58106146679532777 - z + (z - 0.5) * (z + 6.5).ln() [INFO] [stdout] 41 + x.ln() - 5.581_061_466_795_328 - z + (z - 0.5) * (z + 6.5).ln() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/lib.rs:87:12 [INFO] [stdout] | [INFO] [stdout] 87 | if !(n11i % 10 == 0) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try: `(n11i % 10 != 0)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:110:5 [INFO] [stdout] | [INFO] [stdout] 110 | return s.prob; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 110 - return s.prob; [INFO] [stdout] 110 + s.prob [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:171:5 [INFO] [stdout] | [INFO] [stdout] 171 | return (prob, sleft, sright, sless, slarg); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 171 - return (prob, sleft, sright, sless, slarg); [INFO] [stdout] 171 + (prob, sleft, sright, sless, slarg) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded late initialization [INFO] [stdout] --> src/lib.rs:122:5 [INFO] [stdout] | [INFO] [stdout] 122 | let prob: f64; [INFO] [stdout] | ^^^^^^^^^^^^^^ created here [INFO] [stdout] ... [INFO] [stdout] 135 | prob = hyper0(&mut s, n11, n1_, n_1, n); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ initialised here [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_late_init [INFO] [stdout] = note: `#[warn(clippy::needless_late_init)]` on by default [INFO] [stdout] help: move the declaration `prob` here [INFO] [stdout] | [INFO] [stdout] 122 ~ [INFO] [stdout] 123 | let mut max = n1_; [INFO] [stdout] ... [INFO] [stdout] 134 | let mut s = HyperState::new(); [INFO] [stdout] 135 ~ let prob: f64 = hyper0(&mut s, n11, n1_, n_1, n); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric constant [INFO] [stdout] --> src/lib.rs:208:80 [INFO] [stdout] | [INFO] [stdout] 208 | write!(f, "all integers passed to fishers_exact must be less than {}", std::i32::MAX) [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] = note: `#[warn(clippy::legacy_numeric_constants)]` on by default [INFO] [stdout] help: use the associated constant instead [INFO] [stdout] | [INFO] [stdout] 208 - write!(f, "all integers passed to fishers_exact must be less than {}", std::i32::MAX) [INFO] [stdout] 208 + write!(f, "all integers passed to fishers_exact must be less than {}", i32::MAX) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/lib.rs:232:5 [INFO] [stdout] | [INFO] [stdout] 232 | / return FishersExactPvalues { [INFO] [stdout] 233 | | two_tail_pvalue: twotail, [INFO] [stdout] 234 | | less_pvalue: left, [INFO] [stdout] 235 | | greater_pvalue: right, [INFO] [stdout] 236 | | }; [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 232 ~ FishersExactPvalues { [INFO] [stdout] 233 + two_tail_pvalue: twotail, [INFO] [stdout] 234 + less_pvalue: left, [INFO] [stdout] 235 + greater_pvalue: right, [INFO] [stdout] 236 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of a legacy numeric constant [INFO] [stdout] --> src/lib.rs:263:34 [INFO] [stdout] | [INFO] [stdout] 263 | if table.iter().any(|&x| x > std::i32::MAX as u32) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#legacy_numeric_constants [INFO] [stdout] help: use the associated constant instead [INFO] [stdout] | [INFO] [stdout] 263 - if table.iter().any(|&x| x > std::i32::MAX as u32) { [INFO] [stdout] 263 + if table.iter().any(|&x| x > i32::MAX as u32) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.25s [INFO] running `Command { std: "docker" "inspect" "53cbe3abd035d962173c15a8986cb673ef1523a0a2bf261cfb2e73372fca38ce", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "53cbe3abd035d962173c15a8986cb673ef1523a0a2bf261cfb2e73372fca38ce", kill_on_drop: false }` [INFO] [stdout] 53cbe3abd035d962173c15a8986cb673ef1523a0a2bf261cfb2e73372fca38ce