[INFO] fetching crate ballistics-engine 0.13.1...
[INFO] testing ballistics-engine-0.13.1 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate ballistics-engine 0.13.1 into /workspace/builds/worker-7-tc1/source
[INFO] removed /workspace/builds/worker-7-tc1/source/.cargo/config.toml
[INFO] started tweaking crates.io crate ballistics-engine 0.13.1
[INFO] finished tweaking crates.io crate ballistics-engine 0.13.1
[INFO] tweaked toml for crates.io crate ballistics-engine 0.13.1 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate ballistics-engine 0.13.1 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate ballistics-engine 0.13.1 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded pyo3-macros v0.22.6
[INFO] [stderr]   Downloaded unindent v0.2.4
[INFO] [stderr]   Downloaded serde-wasm-bindgen v0.6.5
[INFO] [stderr]   Downloaded wasm-bindgen-test-macro v0.3.50
[INFO] [stderr]   Downloaded wasm-bindgen-test v0.3.50
[INFO] [stderr]   Downloaded once_cell_polyfill v1.70.1
[INFO] [stderr]   Downloaded pest_generator v2.8.1
[INFO] [stderr]   Downloaded anstream v0.6.20
[INFO] [stderr]   Downloaded target-lexicon v0.12.16
[INFO] [stderr]   Downloaded clap v4.5.45
[INFO] [stderr]   Downloaded cc v1.2.33
[INFO] [stderr]   Downloaded pyo3-ffi v0.22.6
[INFO] [stderr]   Downloaded pest_meta v2.8.1
[INFO] [stderr]   Downloaded zip v0.5.13
[INFO] [stderr]   Downloaded clap_derive v4.5.45
[INFO] [stderr]   Downloaded clap_builder v4.5.44
[INFO] [stderr]   Downloaded pest_derive v2.8.1
[INFO] [stderr]   Downloaded ndarray-npy v0.8.1
[INFO] [stderr]   Downloaded pyo3-build-config v0.22.6
[INFO] [stderr]   Downloaded pyo3-macros-backend v0.22.6
[INFO] [stderr]   Downloaded ndarray v0.15.6
[INFO] [stderr]   Downloaded minicov v0.3.7
[INFO] [stderr]   Downloaded py_literal v0.4.0
[INFO] [stderr]   Downloaded indoc v2.0.7
[INFO] [stderr]   Downloaded pyo3 v0.22.6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] d8d50817ed2baba11ab7932d4a4c5d48a0351bd8f2507f439000d15e1d903fb1
[INFO] running `Command { std: "docker" "start" "-a" "d8d50817ed2baba11ab7932d4a4c5d48a0351bd8f2507f439000d15e1d903fb1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "d8d50817ed2baba11ab7932d4a4c5d48a0351bd8f2507f439000d15e1d903fb1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "d8d50817ed2baba11ab7932d4a4c5d48a0351bd8f2507f439000d15e1d903fb1", kill_on_drop: false }`
[INFO] [stdout] d8d50817ed2baba11ab7932d4a4c5d48a0351bd8f2507f439000d15e1d903fb1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b7db1ee003f1e5d393587ed83e688db7f52138719cf8da1a8ebf9ba16414b59e
[INFO] running `Command { std: "docker" "start" "-a" "b7db1ee003f1e5d393587ed83e688db7f52138719cf8da1a8ebf9ba16414b59e", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.97
[INFO] [stderr]    Compiling thiserror v2.0.14
[INFO] [stderr]    Compiling ucd-trie v0.1.7
[INFO] [stderr]    Compiling bytemuck v1.23.2
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling matrixmultiply v0.3.10
[INFO] [stderr]    Compiling rawpointer v0.2.1
[INFO] [stderr]    Compiling anstyle-parse v0.2.7
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling colorchoice v1.0.4
[INFO] [stderr]    Compiling anstyle-query v1.1.4
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling serde_json v1.0.142
[INFO] [stderr]    Compiling csv-core v0.1.12
[INFO] [stderr]    Compiling anstream v0.6.20
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling safe_arch v0.7.4
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling clap_builder v4.5.44
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling wide v0.7.33
[INFO] [stderr]    Compiling flate2 v1.1.2
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling syn v2.0.104
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling approx v0.5.1
[INFO] [stderr]    Compiling rand_distr v0.4.3
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling ndarray v0.15.6
[INFO] [stderr]    Compiling simba v0.9.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.14
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling clap_derive v4.5.45
[INFO] [stderr]    Compiling nalgebra-macros v0.2.2
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling zip v0.5.13
[INFO] [stderr]    Compiling pest v2.8.1
[INFO] [stderr]    Compiling clap v4.5.45
[INFO] [stderr]    Compiling nalgebra v0.33.2
[INFO] [stderr]    Compiling pest_meta v2.8.1
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling pest_generator v2.8.1
[INFO] [stderr]    Compiling pest_derive v2.8.1
[INFO] [stderr]    Compiling py_literal v0.4.0
[INFO] [stderr]    Compiling ndarray-npy v0.8.1
[INFO] [stderr]    Compiling csv v1.3.1
[INFO] [stderr]    Compiling ballistics-engine v0.13.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Rng`
[INFO] [stdout]     --> src/cli_api.rs:1131:28
[INFO] [stdout]      |
[INFO] [stdout] 1131 |     use rand::{thread_rng, Rng};
[INFO] [stdout]      |                            ^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `atmosphere`
[INFO] [stdout]    --> src/ffi.rs:460:5
[INFO] [stdout]     |
[INFO] [stdout] 460 |     atmosphere: *const FFIAtmosphericConditions,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_atmosphere`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/trajectory_solver.rs:314:9
[INFO] [stdout]     |
[INFO] [stdout] 314 |     let mut wind_drift_m = final_z_m;
[INFO] [stdout]     |         ----^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mach`
[INFO] [stdout]    --> src/stability_advanced.rs:202:9
[INFO] [stdout]     |
[INFO] [stdout] 202 |     let mach = velocity_fps / 1125.0; // Approximate speed of sound in fps
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mach`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mass_kg`
[INFO] [stdout]    --> src/stability_advanced.rs:227:5
[INFO] [stdout]     |
[INFO] [stdout] 227 |     mass_kg: f64,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mass_kg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: useless assignment of field of type `DragModel` to itself
[INFO] [stdout]    --> src/cli_api.rs:286:9
[INFO] [stdout]     |
[INFO] [stdout] 286 |         inputs.bc_type = inputs.bc_type;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: useless assignment of field of type `f64` to itself
[INFO] [stdout]    --> src/cli_api.rs:287:9
[INFO] [stdout]     |
[INFO] [stdout] 287 |         inputs.bc_value = inputs.bc_value;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: useless assignment of field of type `f64` to itself
[INFO] [stdout]    --> src/cli_api.rs:288:9
[INFO] [stdout]     |
[INFO] [stdout] 288 |         inputs.bullet_diameter = inputs.bullet_diameter;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: useless assignment of field of type `f64` to itself
[INFO] [stdout]    --> src/cli_api.rs:289:9
[INFO] [stdout]     |
[INFO] [stdout] 289 |         inputs.bullet_mass = inputs.bullet_mass;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: useless assignment of field of type `f64` to itself
[INFO] [stdout]    --> src/cli_api.rs:290:9
[INFO] [stdout]     |
[INFO] [stdout] 290 |         inputs.muzzle_angle = inputs.muzzle_angle;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `YARDS_TO_METERS` is never used
[INFO] [stdout]  --> src/trajectory_sampling.rs:5:7
[INFO] [stdout]   |
[INFO] [stdout] 5 | const YARDS_TO_METERS: f64 = 0.9144;
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ZERO_FINDING_ACCURACY` is never used
[INFO] [stdout]   --> src/angle_calculations.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | const ZERO_FINDING_ACCURACY: f64 = crate::constants::ROOT_FINDING_TOLERANCE;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prandtl_glauert_correction` is never used
[INFO] [stdout]   --> src/transonic_drag.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn prandtl_glauert_correction(mach: f64) -> f64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FlowRegime` is never used
[INFO] [stdout]   --> src/reynolds.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | enum FlowRegime {
[INFO] [stdout]    |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_flow_regime` is never used
[INFO] [stdout]   --> src/reynolds.rs:53:4
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn get_flow_regime(reynolds_number: f64) -> FlowRegime {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 38.35s
[INFO] running `Command { std: "docker" "inspect" "b7db1ee003f1e5d393587ed83e688db7f52138719cf8da1a8ebf9ba16414b59e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b7db1ee003f1e5d393587ed83e688db7f52138719cf8da1a8ebf9ba16414b59e", kill_on_drop: false }`
[INFO] [stdout] b7db1ee003f1e5d393587ed83e688db7f52138719cf8da1a8ebf9ba16414b59e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 24eac1066183860470c775856a6b06da3a88f41daeff2779ef91d8ee893983c0
[INFO] running `Command { std: "docker" "start" "-a" "24eac1066183860470c775856a6b06da3a88f41daeff2779ef91d8ee893983c0", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.104
[INFO] [stderr]    Compiling libc v0.2.175
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.100
[INFO] [stderr]    Compiling bumpalo v3.19.0
[INFO] [stderr]    Compiling wasm-bindgen v0.2.100
[INFO] [stderr]    Compiling approx v0.5.1
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling simba v0.9.0
[INFO] [stderr]    Compiling getrandom v0.2.16
[INFO] [stderr]    Compiling is-terminal v0.4.16
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling rand_distr v0.4.3
[INFO] [stderr]    Compiling wasm-bindgen-backend v0.2.100
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling thiserror-impl v2.0.14
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling clap_derive v4.5.45
[INFO] [stderr]    Compiling nalgebra-macros v0.2.2
[INFO] [stderr]    Compiling wasm-bindgen-test-macro v0.3.50
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.100
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling zip v0.5.13
[INFO] [stderr]    Compiling nalgebra v0.33.2
[INFO] [stderr]    Compiling thiserror v2.0.14
[INFO] [stderr]    Compiling pest v2.8.1
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.100
[INFO] [stderr]    Compiling clap v4.5.45
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling pest_meta v2.8.1
[INFO] [stderr]    Compiling js-sys v0.3.77
[INFO] [stderr]    Compiling pest_generator v2.8.1
[INFO] [stderr]    Compiling pest_derive v2.8.1
[INFO] [stderr]    Compiling py_literal v0.4.0
[INFO] [stderr]    Compiling ndarray-npy v0.8.1
[INFO] [stderr]    Compiling serde_json v1.0.142
[INFO] [stderr]    Compiling csv v1.3.1
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling wasm-bindgen-futures v0.4.50
[INFO] [stderr]    Compiling wasm-bindgen-test v0.3.50
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling ballistics-engine v0.13.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Rng`
[INFO] [stdout]     --> src/cli_api.rs:1131:28
[INFO] [stdout]      |
[INFO] [stdout] 1131 |     use rand::{thread_rng, Rng};
[INFO] [stdout]      |                            ^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `atmosphere`
[INFO] [stdout]    --> src/ffi.rs:460:5
[INFO] [stdout]     |
[INFO] [stdout] 460 |     atmosphere: *const FFIAtmosphericConditions,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_atmosphere`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/trajectory_solver.rs:314:9
[INFO] [stdout]     |
[INFO] [stdout] 314 |     let mut wind_drift_m = final_z_m;
[INFO] [stdout]     |         ----^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mach`
[INFO] [stdout]    --> src/stability_advanced.rs:202:9
[INFO] [stdout]     |
[INFO] [stdout] 202 |     let mach = velocity_fps / 1125.0; // Approximate speed of sound in fps
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mach`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mass_kg`
[INFO] [stdout]    --> src/stability_advanced.rs:227:5
[INFO] [stdout]     |
[INFO] [stdout] 227 |     mass_kg: f64,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mass_kg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: useless assignment of field of type `DragModel` to itself
[INFO] [stdout]    --> src/cli_api.rs:286:9
[INFO] [stdout]     |
[INFO] [stdout] 286 |         inputs.bc_type = inputs.bc_type;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: useless assignment of field of type `f64` to itself
[INFO] [stdout]    --> src/cli_api.rs:287:9
[INFO] [stdout]     |
[INFO] [stdout] 287 |         inputs.bc_value = inputs.bc_value;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: useless assignment of field of type `f64` to itself
[INFO] [stdout]    --> src/cli_api.rs:288:9
[INFO] [stdout]     |
[INFO] [stdout] 288 |         inputs.bullet_diameter = inputs.bullet_diameter;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: useless assignment of field of type `f64` to itself
[INFO] [stdout]    --> src/cli_api.rs:289:9
[INFO] [stdout]     |
[INFO] [stdout] 289 |         inputs.bullet_mass = inputs.bullet_mass;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: useless assignment of field of type `f64` to itself
[INFO] [stdout]    --> src/cli_api.rs:290:9
[INFO] [stdout]     |
[INFO] [stdout] 290 |         inputs.muzzle_angle = inputs.muzzle_angle;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `YARDS_TO_METERS` is never used
[INFO] [stdout]  --> src/trajectory_sampling.rs:5:7
[INFO] [stdout]   |
[INFO] [stdout] 5 | const YARDS_TO_METERS: f64 = 0.9144;
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ZERO_FINDING_ACCURACY` is never used
[INFO] [stdout]   --> src/angle_calculations.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | const ZERO_FINDING_ACCURACY: f64 = crate::constants::ROOT_FINDING_TOLERANCE;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `prandtl_glauert_correction` is never used
[INFO] [stdout]   --> src/transonic_drag.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn prandtl_glauert_correction(mach: f64) -> f64 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `FlowRegime` is never used
[INFO] [stdout]   --> src/reynolds.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | enum FlowRegime {
[INFO] [stdout]    |      ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_flow_regime` is never used
[INFO] [stdout]   --> src/reynolds.rs:53:4
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn get_flow_regime(reynolds_number: f64) -> FlowRegime {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::DragModel`
[INFO] [stdout]    --> src/derivatives.rs:566:9
[INFO] [stdout]     |
[INFO] [stdout] 566 |     use crate::DragModel;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::DragModel`
[INFO] [stdout]    --> src/angle_calculations.rs:341:9
[INFO] [stdout]     |
[INFO] [stdout] 341 |     use crate::DragModel;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::DragModel`
[INFO] [stdout]    --> src/stability.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout] 113 |     use crate::DragModel;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Rng`
[INFO] [stdout]     --> src/cli_api.rs:1131:28
[INFO] [stdout]      |
[INFO] [stdout] 1131 |     use rand::{thread_rng, Rng};
[INFO] [stdout]      |                            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `atmosphere`
[INFO] [stdout]    --> src/ffi.rs:460:5
[INFO] [stdout]     |
[INFO] [stdout] 460 |     atmosphere: *const FFIAtmosphericConditions,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_atmosphere`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/trajectory_solver.rs:314:9
[INFO] [stdout]     |
[INFO] [stdout] 314 |     let mut wind_drift_m = final_z_m;
[INFO] [stdout]     |         ----^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `coeffs`
[INFO] [stdout]    --> src/pitch_damping.rs:485:13
[INFO] [stdout]     |
[INFO] [stdout] 485 |         let coeffs = PitchDampingCoefficients::from_bullet_type("hunting");
[INFO] [stdout]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_coeffs`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mach`
[INFO] [stdout]    --> src/stability_advanced.rs:202:9
[INFO] [stdout]     |
[INFO] [stdout] 202 |     let mach = velocity_fps / 1125.0; // Approximate speed of sound in fps
[INFO] [stdout]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mach`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mass_kg`
[INFO] [stdout]    --> src/stability_advanced.rs:227:5
[INFO] [stdout]     |
[INFO] [stdout] 227 |     mass_kg: f64,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mass_kg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: useless assignment of field of type `drag_model::DragModel` to itself
[INFO] [stdout]    --> src/cli_api.rs:286:9
[INFO] [stdout]     |
[INFO] [stdout] 286 |         inputs.bc_type = inputs.bc_type;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: useless assignment of field of type `f64` to itself
[INFO] [stdout]    --> src/cli_api.rs:287:9
[INFO] [stdout]     |
[INFO] [stdout] 287 |         inputs.bc_value = inputs.bc_value;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: useless assignment of field of type `f64` to itself
[INFO] [stdout]    --> src/cli_api.rs:288:9
[INFO] [stdout]     |
[INFO] [stdout] 288 |         inputs.bullet_diameter = inputs.bullet_diameter;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: useless assignment of field of type `f64` to itself
[INFO] [stdout]    --> src/cli_api.rs:289:9
[INFO] [stdout]     |
[INFO] [stdout] 289 |         inputs.bullet_mass = inputs.bullet_mass;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: useless assignment of field of type `f64` to itself
[INFO] [stdout]    --> src/cli_api.rs:290:9
[INFO] [stdout]     |
[INFO] [stdout] 290 |         inputs.muzzle_angle = inputs.muzzle_angle;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `YARDS_TO_METERS` is never used
[INFO] [stdout]  --> src/trajectory_sampling.rs:5:7
[INFO] [stdout]   |
[INFO] [stdout] 5 | const YARDS_TO_METERS: f64 = 0.9144;
[INFO] [stdout]   |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ZERO_FINDING_ACCURACY` is never used
[INFO] [stdout]   --> src/angle_calculations.rs:11:7
[INFO] [stdout]    |
[INFO] [stdout] 11 | const ZERO_FINDING_ACCURACY: f64 = crate::constants::ROOT_FINDING_TOLERANCE;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 43.15s
[INFO] running `Command { std: "docker" "inspect" "24eac1066183860470c775856a6b06da3a88f41daeff2779ef91d8ee893983c0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "24eac1066183860470c775856a6b06da3a88f41daeff2779ef91d8ee893983c0", kill_on_drop: false }`
[INFO] [stdout] 24eac1066183860470c775856a6b06da3a88f41daeff2779ef91d8ee893983c0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 5422c18ddff3e8c16765efa7bd56b0363738336cf03764ddea9b575b9dfe3959
[INFO] running `Command { std: "docker" "start" "-a" "5422c18ddff3e8c16765efa7bd56b0363738336cf03764ddea9b575b9dfe3959", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `Rng`
[INFO] [stderr]     --> src/cli_api.rs:1131:28
[INFO] [stderr]      |
[INFO] [stderr] 1131 |     use rand::{thread_rng, Rng};
[INFO] [stderr]      |                            ^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `atmosphere`
[INFO] [stderr]    --> src/ffi.rs:460:5
[INFO] [stderr]     |
[INFO] [stderr] 460 |     atmosphere: *const FFIAtmosphericConditions,
[INFO] [stderr]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_atmosphere`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/trajectory_solver.rs:314:9
[INFO] [stderr]     |
[INFO] [stderr] 314 |     let mut wind_drift_m = final_z_m;
[INFO] [stderr]     |         ----^^^^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `mach`
[INFO] [stderr]    --> src/stability_advanced.rs:202:9
[INFO] [stderr]     |
[INFO] [stderr] 202 |     let mach = velocity_fps / 1125.0; // Approximate speed of sound in fps
[INFO] [stderr]     |         ^^^^ help: if this is intentional, prefix it with an underscore: `_mach`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `mass_kg`
[INFO] [stderr]    --> src/stability_advanced.rs:227:5
[INFO] [stderr]     |
[INFO] [stderr] 227 |     mass_kg: f64,
[INFO] [stderr]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mass_kg`
[INFO] [stderr] 
[INFO] [stderr] warning: useless assignment of field of type `DragModel` to itself
[INFO] [stderr]    --> src/cli_api.rs:286:9
[INFO] [stderr]     |
[INFO] [stderr] 286 |         inputs.bc_type = inputs.bc_type;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: useless assignment of field of type `f64` to itself
[INFO] [stderr]    --> src/cli_api.rs:287:9
[INFO] [stderr]     |
[INFO] [stderr] 287 |         inputs.bc_value = inputs.bc_value;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: useless assignment of field of type `f64` to itself
[INFO] [stderr]    --> src/cli_api.rs:288:9
[INFO] [stderr]     |
[INFO] [stderr] 288 |         inputs.bullet_diameter = inputs.bullet_diameter;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: useless assignment of field of type `f64` to itself
[INFO] [stderr]    --> src/cli_api.rs:289:9
[INFO] [stderr]     |
[INFO] [stderr] 289 |         inputs.bullet_mass = inputs.bullet_mass;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: useless assignment of field of type `f64` to itself
[INFO] [stderr]    --> src/cli_api.rs:290:9
[INFO] [stderr]     |
[INFO] [stderr] 290 |         inputs.muzzle_angle = inputs.muzzle_angle;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `YARDS_TO_METERS` is never used
[INFO] [stderr]  --> src/trajectory_sampling.rs:5:7
[INFO] [stderr]   |
[INFO] [stderr] 5 | const YARDS_TO_METERS: f64 = 0.9144;
[INFO] [stderr]   |       ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `ZERO_FINDING_ACCURACY` is never used
[INFO] [stderr]   --> src/angle_calculations.rs:11:7
[INFO] [stderr]    |
[INFO] [stderr] 11 | const ZERO_FINDING_ACCURACY: f64 = crate::constants::ROOT_FINDING_TOLERANCE;
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `prandtl_glauert_correction` is never used
[INFO] [stderr]   --> src/transonic_drag.rs:37:4
[INFO] [stderr]    |
[INFO] [stderr] 37 | fn prandtl_glauert_correction(mach: f64) -> f64 {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: enum `FlowRegime` is never used
[INFO] [stderr]   --> src/reynolds.rs:10:6
[INFO] [stderr]    |
[INFO] [stderr] 10 | enum FlowRegime {
[INFO] [stderr]    |      ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_flow_regime` is never used
[INFO] [stderr]   --> src/reynolds.rs:53:4
[INFO] [stderr]    |
[INFO] [stderr] 53 | fn get_flow_regime(reynolds_number: f64) -> FlowRegime {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::DragModel`
[INFO] [stderr]    --> src/derivatives.rs:566:9
[INFO] [stderr]     |
[INFO] [stderr] 566 |     use crate::DragModel;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::DragModel`
[INFO] [stderr]    --> src/angle_calculations.rs:341:9
[INFO] [stderr]     |
[INFO] [stderr] 341 |     use crate::DragModel;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::DragModel`
[INFO] [stderr]    --> src/stability.rs:113:9
[INFO] [stderr]     |
[INFO] [stderr] 113 |     use crate::DragModel;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Rng`
[INFO] [stderr]     --> src/cli_api.rs:1131:28
[INFO] [stderr]      |
[INFO] [stderr] 1131 |     use rand::{thread_rng, Rng};
[INFO] [stderr]      |                            ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `coeffs`
[INFO] [stderr]    --> src/pitch_damping.rs:485:13
[INFO] [stderr]     |
[INFO] [stderr] 485 |         let coeffs = PitchDampingCoefficients::from_bullet_type("hunting");
[INFO] [stderr]     |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_coeffs`
[INFO] [stderr] 
[INFO] [stderr] warning: useless assignment of field of type `drag_model::DragModel` to itself
[INFO] [stderr]    --> src/cli_api.rs:286:9
[INFO] [stderr]     |
[INFO] [stderr] 286 |         inputs.bc_type = inputs.bc_type;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `ballistics-engine` (lib) generated 15 warnings (run `cargo fix --lib -p ballistics-engine` to apply 4 suggestions)
[INFO] [stderr] warning: `ballistics-engine` (lib test) generated 16 warnings (10 duplicates) (run `cargo fix --lib -p ballistics-engine --tests` to apply 4 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.20s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/ballistics_engine-69a66c0268f6f365)
[INFO] [stdout] 
[INFO] [stdout] running 139 tests
[INFO] [stdout] test aerodynamic_jump::tests::test_aerodynamic_jump_with_crosswind ... ok
[INFO] [stdout] test aerodynamic_jump::tests::test_aerodynamic_jump_zero_conditions ... ok
[INFO] [stdout] test aerodynamic_jump::tests::test_opposite_twist_direction ... ok
[INFO] [stdout] test aerodynamic_jump::tests::test_crosswind_sensitivity ... ok
[INFO] [stdout] test aerodynamic_jump::tests::test_sight_correction ... ok
[INFO] [stdout] test angle_calculations::tests::test_adjusted_muzzle_velocity_no_sensitivity ... ok
[INFO] [stdout] test angle_calculations::tests::test_brent_root_find_quadratic ... ok
[INFO] [stdout] test angle_calculations::tests::test_adjusted_muzzle_velocity_with_sensitivity ... ok
[INFO] [stdout] test angle_calculations::tests::test_zero_angle_bounds ... ok
[INFO] [stdout] test atmosphere::tests::test_enhanced_atmosphere_sea_level ... ok
[INFO] [stdout] test atmosphere::tests::test_enhanced_atmosphere_with_humidity ... ok
[INFO] [stdout] test atmosphere::tests::test_enhanced_atmosphere_stratosphere ... ok
[INFO] [stdout] test angle_calculations::tests::test_quick_drop_estimate ... ok
[INFO] [stdout] test angle_calculations::tests::test_brent_root_find_no_bracket ... ok
[INFO] [stdout] test angle_calculations::tests::test_brent_root_find_linear ... ok
[INFO] [stdout] test atmosphere::tests::test_enhanced_cimp_density ... ok
[INFO] [stdout] test atmosphere::tests::test_icao_standard_atmosphere ... ok
[INFO] [stdout] test derivatives::tests::test_interpolated_bc_edge_cases ... ok
[INFO] [stdout] test drag::tests::test_drag_table_creation ... ok
[INFO] [stdout] test drag::tests::test_drag_table_empty ... ok
[INFO] [stdout] test derivatives::tests::test_magnus_moment_coefficient ... ok
[INFO] [stdout] test cluster_bc::tests::test_cluster_prediction ... ok
[INFO] [stdout] test drag::tests::test_drag_table_single_point ... ok
[INFO] [stdout] test derivatives::tests::test_interpolated_bc ... ok
[INFO] [stdout] test atmosphere::tests::test_variable_lapse_rates ... ok
[INFO] [stdout] test bc_estimation::tests::test_bc_estimation ... ok
[INFO] [stdout] test derivatives::tests::test_magnus_effect ... ok
[INFO] [stdout] test derivatives::tests::test_compute_derivatives_with_wind ... ok
[INFO] [stdout] test drag::tests::test_drag_coefficient_continuity ... ok
[INFO] [stdout] test bc_estimation::tests::test_sectional_density ... ok
[INFO] [stdout] test cluster_bc::tests::test_apply_correction ... ok
[INFO] [stdout] test drag::tests::test_extrapolation_bounds ... ok
[INFO] [stdout] test drag::tests::test_find_drag_tables_dir ... ok
[INFO] [stdout] test drag::tests::test_known_drag_values ... ok
[INFO] [stdout] test derivatives::tests::test_compute_derivatives_with_coriolis ... ok
[INFO] [stdout] test drag::tests::test_cubic_interpolation ... ok
[INFO] [stdout] test derivatives::tests::test_compute_derivatives_basic ... ok
[INFO] [stdout] test drag::tests::test_drag_table_two_points ... ok
[INFO] [stdout] test bc_estimation::tests::test_bullet_type_identification ... ok
[INFO] [stdout] test drag::tests::test_linear_interpolation ... ok
[INFO] [stdout] test drag::tests::test_g1_drag_coefficient_interpolation ... ok
[INFO] [stdout] test drag::tests::test_load_drag_table_fallback ... ok
[INFO] [stdout] test drag::tests::test_physical_constraints ... ok
[INFO] [stdout] test drag_model::tests::test_drag_model_clone ... ok
[INFO] [stdout] test drag::tests::test_monotonicity_properties ... ok
[INFO] [stdout] test drag_model::tests::test_drag_model_copy ... ok
[INFO] [stdout] test drag_model::tests::test_drag_model_debug ... ok
[INFO] [stdout] test drag_model::tests::test_drag_model_display ... ok
[INFO] [stdout] test drag_model::tests::test_drag_model_equality ... ok
[INFO] [stdout] test drag::tests::test_g7_drag_coefficient_interpolation ... ok
[INFO] [stdout] test drag_model::tests::test_drag_model_from_str ... ok
[INFO] [stdout] test form_factor::tests::test_case_insensitive ... ok
[INFO] [stdout] test drag_model::tests::test_drag_model_from_str_case_insensitive ... ok
[INFO] [stdout] test form_factor::tests::test_g1_form_factors ... ok
[INFO] [stdout] test monte_carlo::tests::test_sample_points ... ok
[INFO] [stdout] test form_factor::tests::test_apply_form_factor ... ok
[INFO] [stdout] test monte_carlo::tests::test_percentile ... ok
[INFO] [stdout] test fast_trajectory::tests::test_fast_solution_interpolation ... ok
[INFO] [stdout] test pitch_damping::tests::test_angular_acceleration ... ok
[INFO] [stdout] test pitch_damping::tests::test_bullet_type_coefficients ... ok
[INFO] [stdout] test pitch_damping::tests::test_default_implementation ... ok
[INFO] [stdout] test pitch_damping::tests::test_damped_yaw_of_repose ... ok
[INFO] [stdout] test pitch_damping::tests::test_mach_interpolation ... ok
[INFO] [stdout] test pitch_damping::tests::test_pitch_damping_coefficient ... ok
[INFO] [stdout] test pitch_damping::tests::test_pitch_damping_moment ... ok
[INFO] [stdout] test pitch_damping::tests::test_pitch_damping_edge_cases ... ok
[INFO] [stdout] test pitch_damping::tests::test_precession_with_damping ... ok
[INFO] [stdout] test pitch_damping::tests::test_transonic_instability ... ok
[INFO] [stdout] test drag_model::tests::test_drag_model_from_str_invalid ... ok
[INFO] [stdout] test fast_trajectory::tests::test_bc_from_velocity_segments ... ok
[INFO] [stdout] test form_factor::tests::test_g7_form_factors ... ok
[INFO] [stdout] test monte_carlo::tests::test_calculate_cep ... ok
[INFO] [stdout] test precession_nutation::tests::test_limit_cycle_yaw ... ok
[INFO] [stdout] test precession_nutation::tests::test_nutation_edge_cases ... ok
[INFO] [stdout] test precession_nutation::tests::test_nutation_frequency ... ok
[INFO] [stdout] test precession_nutation::tests::test_precession_edge_cases ... ok
[INFO] [stdout] test precession_nutation::tests::test_precession_frequency ... ok
[INFO] [stdout] test drag::tests::test_performance_characteristics ... ok
[INFO] [stdout] test precession_nutation::tests::test_stability_effects ... ok
[INFO] [stdout] test reynolds::tests::test_air_viscosity ... ok
[INFO] [stdout] test reynolds::tests::test_flow_regime ... ok
[INFO] [stdout] test reynolds::tests::test_reynolds_correction ... ok
[INFO] [stdout] test reynolds::tests::test_reynolds_number ... ok
[INFO] [stdout] test spin_decay::tests::test_moment_of_inertia ... ok
[INFO] [stdout] test spin_decay::tests::test_default_impl ... ok
[INFO] [stdout] test spin_decay::tests::test_different_bullet_types ... ok
[INFO] [stdout] test spin_decay::tests::test_mass_factor_effects ... ok
[INFO] [stdout] test spin_decay::tests::test_spin_decay_correction_factor ... ok
[INFO] [stdout] test spin_decay::tests::test_moment_of_inertia_shapes ... ok
[INFO] [stdout] test spin_decay::tests::test_spin_decay_parameters ... ok
[INFO] [stdout] test spin_decay::tests::test_spin_damping_moment ... ok
[INFO] [stdout] test spin_decay::tests::test_spin_decay_bounds ... ok
[INFO] [stdout] test spin_decay::tests::test_spin_decay_rate ... ok
[INFO] [stdout] test spin_decay::tests::test_spin_decay_realistic ... ok
[INFO] [stdout] test spin_drift::tests::test_calculate_dynamic_stability ... ok
[INFO] [stdout] test spin_decay::tests::test_velocity_factor_effects ... ok
[INFO] [stdout] test spin_drift::tests::test_calculate_spin_rate ... ok
[INFO] [stdout] test spin_drift::tests::test_calculate_yaw_of_repose ... ok
[INFO] [stdout] test spin_drift_advanced::tests::test_advanced_spin_drift ... ok
[INFO] [stdout] test spin_drift::tests::test_opposite_twist_directions ... ok
[INFO] [stdout] test spin_drift_advanced::tests::test_transonic_correction ... ok
[INFO] [stdout] test stability::tests::test_compute_spin_drift ... ok
[INFO] [stdout] test pitch_damping::tests::test_transverse_moment_of_inertia ... ok
[INFO] [stdout] test stability::tests::test_compute_spin_drift_scaling ... ok
[INFO] [stdout] test precession_nutation::tests::test_angular_state_evolution ... ok
[INFO] [stdout] test monte_carlo::tests::test_calculate_confidence_ellipse ... ok
[INFO] [stdout] test spin_drift::tests::test_enhanced_spin_drift_calculation ... ok
[INFO] [stdout] test precession_nutation::tests::test_combined_angular_motion ... ok
[INFO] [stdout] test stability::tests::test_compute_stability_coefficient ... ok
[INFO] [stdout] test precession_nutation::tests::test_damping_time_evolution ... ok
[INFO] [stdout] test stability::tests::test_compute_stability_coefficient_atmospheric_effects ... ok
[INFO] [stdout] test stability_advanced::tests::test_stability_prediction ... ok
[INFO] [stdout] test stability::tests::test_compute_stability_coefficient_zero_cases ... ok
[INFO] [stdout] test stability_advanced::tests::test_advanced_stability ... ok
[INFO] [stdout] test precession_nutation::tests::test_nutation_amplitude_bounds ... ok
[INFO] [stdout] test precession_nutation::tests::test_default_params ... ok
[INFO] [stdout] test precession_nutation::tests::test_nutation_damping ... ok
[INFO] [stdout] test precession_nutation::tests::test_epicyclic_motion ... ok
[INFO] [stdout] test trajectory_sampling::tests::test_detect_zero_crossings ... ok
[INFO] [stdout] test pitch_damping::tests::test_transonic_jump ... ok
[INFO] [stdout] test stability::tests::test_compute_spin_drift_zero_cases ... ok
[INFO] [stdout] test trajectory_sampling::tests::test_find_closest_sample_index ... ok
[INFO] [stdout] test trajectory_sampling::tests::test_interpolate ... ok
[INFO] [stdout] test trajectory_sampling::tests::test_sample_trajectory_basic ... ok
[INFO] [stdout] test trajectory_solver::tests::test_find_trajectory_apex ... ok
[INFO] [stdout] test trajectory_solver::tests::test_brent_root_find ... ok
[INFO] [stdout] test trajectory_solver::tests::test_interpolate_trajectory_state ... ok
[INFO] [stdout] test transonic_drag::tests::test_critical_mach ... ok
[INFO] [stdout] test transonic_drag::tests::test_transonic_drag_rise ... ok
[INFO] [stdout] test wind::tests::test_wind_sock_empty ... ok
[INFO] [stdout] test transonic_drag::tests::test_prandtl_glauert ... ok
[INFO] [stdout] test wind::tests::test_wind_conversion ... ok
[INFO] [stdout] test transonic_drag::tests::test_projectile_shape_estimation ... ok
[INFO] [stdout] test wind::tests::test_wind_sock_multiple_segments ... ok
[INFO] [stdout] test wind::tests::test_wind_sock_single_segment ... ok
[INFO] [stdout] test wind_shear::tests::test_logarithmic_profile ... ok
[INFO] [stdout] test wind_shear::tests::test_power_law_profile ... ok
[INFO] [stdout] test wind_shear::tests::test_wind_layer ... ok
[INFO] [stderr]    Doc-tests ballistics_engine
[INFO] [stdout] test cluster_bc::tests::test_bc_multiplier ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 139 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.15s
[INFO] [stdout] 
[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" "5422c18ddff3e8c16765efa7bd56b0363738336cf03764ddea9b575b9dfe3959", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5422c18ddff3e8c16765efa7bd56b0363738336cf03764ddea9b575b9dfe3959", kill_on_drop: false }`
[INFO] [stdout] 5422c18ddff3e8c16765efa7bd56b0363738336cf03764ddea9b575b9dfe3959
