[INFO] fetching crate math-commons 0.1.0...
[INFO] testing math-commons-0.1.0 against beta-2025-10-28 for beta-1.92-2
[INFO] extracting crate math-commons 0.1.0 into /workspace/builds/worker-3-tc2/source
[INFO] started tweaking crates.io crate math-commons 0.1.0
[INFO] finished tweaking crates.io crate math-commons 0.1.0
[INFO] tweaked toml for crates.io crate math-commons 0.1.0 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate math-commons 0.1.0 on toolchain beta-2025-10-28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-10-28" "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" "+beta-2025-10-28" "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" "+beta-2025-10-28" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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" "+beta-2025-10-28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] fc335c67acef78b448dc2898ef4986edb1c95ec242a4492a1548e2faa3d49426
[INFO] running `Command { std: "docker" "start" "-a" "fc335c67acef78b448dc2898ef4986edb1c95ec242a4492a1548e2faa3d49426", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "fc335c67acef78b448dc2898ef4986edb1c95ec242a4492a1548e2faa3d49426", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fc335c67acef78b448dc2898ef4986edb1c95ec242a4492a1548e2faa3d49426", kill_on_drop: false }`
[INFO] [stdout] fc335c67acef78b448dc2898ef4986edb1c95ec242a4492a1548e2faa3d49426
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 15b9c2257e77c107767306d10bf9d64f58c2a1ef03f1ed5b02aacdb54282cebd
[INFO] running `Command { std: "docker" "start" "-a" "15b9c2257e77c107767306d10bf9d64f58c2a1ef03f1ed5b02aacdb54282cebd", kill_on_drop: false }`
[INFO] [stderr]    Compiling math-commons v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::fractions::Fraction`
[INFO] [stdout]  --> src/percentajes/tests.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::fractions::Fraction;
[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 imports: `calc_part`, `calc_percentage`, `calc_proportion_value`, `calc_total`, `is_directly_proportional`, `is_proportion`, `percentage_in_decimal`, and `percentage_of`
[INFO] [stdout]  --> src/percentajes/tests.rs:2:26
[INFO] [stdout]   |
[INFO] [stdout] 2 | ...::{calc_part, calc_percentage, calc_proportion_value, calc_total, is_directly_proportional, is_proportion, percentage_in_decimal, percentage_of};
[INFO] [stdout]   |       ^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/fractions/mod.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |         ( self.a.is_none() || self.b.is_none() )
[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] 25 -         ( self.a.is_none() || self.b.is_none() )
[INFO] [stdout] 25 +         self.a.is_none() || self.b.is_none()
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_proportion` is never used
[INFO] [stdout]  --> src/percentajes/mod.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn is_proportion(f1: Fraction, f2: Fraction) -> bool {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calc_proportion_value` is never used
[INFO] [stdout]   --> src/percentajes/mod.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn calc_proportion_value(f1: Fraction, f2: Fraction) -> f64 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_directly_proportional` is never used
[INFO] [stdout]   --> src/percentajes/mod.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub fn is_directly_proportional(fractions: Vec<Fraction>) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `percentage_in_decimal` is never used
[INFO] [stdout]   --> src/percentajes/mod.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub fn percentage_in_decimal(percentage: u16) -> f32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `percentage_of` is never used
[INFO] [stdout]   --> src/percentajes/mod.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn percentage_of(percentage: u16, num: u16) -> f64 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calc_part` is never used
[INFO] [stdout]   --> src/percentajes/mod.rs:54:8
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub fn calc_part(percentage: u16, total: u16) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calc_percentage` is never used
[INFO] [stdout]   --> src/percentajes/mod.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub fn calc_percentage(total: u16, part: u16) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calc_total` is never used
[INFO] [stdout]   --> src/percentajes/mod.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub fn calc_total(part: u16, percentage: u16) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Fraction` is never constructed
[INFO] [stdout]  --> src/fractions/mod.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Fraction {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `calculate`, `get_a`, `get_b`, and `has_x` are never used
[INFO] [stdout]   --> src/fractions/mod.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl Fraction {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout]  9 |     pub fn new(a: Option<f64>, b: Option<f64>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub fn calculate(&self) -> Option<f64> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn get_a(&self) -> Option<f64> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn get_b(&self) -> Option<f64> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn has_x(&self) -> bool {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.14s
[INFO] running `Command { std: "docker" "inspect" "15b9c2257e77c107767306d10bf9d64f58c2a1ef03f1ed5b02aacdb54282cebd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "15b9c2257e77c107767306d10bf9d64f58c2a1ef03f1ed5b02aacdb54282cebd", kill_on_drop: false }`
[INFO] [stdout] 15b9c2257e77c107767306d10bf9d64f58c2a1ef03f1ed5b02aacdb54282cebd
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 804e082ebf9dab2ec97706273e7a369eba3528605e93ba07507adb73a44418f4
[INFO] running `Command { std: "docker" "start" "-a" "804e082ebf9dab2ec97706273e7a369eba3528605e93ba07507adb73a44418f4", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `crate::fractions::Fraction`
[INFO] [stdout]  --> src/percentajes/tests.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::fractions::Fraction;
[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 imports: `calc_part`, `calc_percentage`, `calc_proportion_value`, `calc_total`, `is_directly_proportional`, `is_proportion`, `percentage_in_decimal`, and `percentage_of`
[INFO] [stdout]  --> src/percentajes/tests.rs:2:26
[INFO] [stdout]   |
[INFO] [stdout] 2 | ...::{calc_part, calc_percentage, calc_proportion_value, calc_total, is_directly_proportional, is_proportion, percentage_in_decimal, percentage_of};
[INFO] [stdout]   |       ^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/fractions/mod.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |         ( self.a.is_none() || self.b.is_none() )
[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] 25 -         ( self.a.is_none() || self.b.is_none() )
[INFO] [stdout] 25 +         self.a.is_none() || self.b.is_none()
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_proportion` is never used
[INFO] [stdout]  --> src/percentajes/mod.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn is_proportion(f1: Fraction, f2: Fraction) -> bool {
[INFO] [stdout]   |        ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calc_proportion_value` is never used
[INFO] [stdout]   --> src/percentajes/mod.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn calc_proportion_value(f1: Fraction, f2: Fraction) -> f64 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_directly_proportional` is never used
[INFO] [stdout]   --> src/percentajes/mod.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub fn is_directly_proportional(fractions: Vec<Fraction>) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `percentage_in_decimal` is never used
[INFO] [stdout]   --> src/percentajes/mod.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 | pub fn percentage_in_decimal(percentage: u16) -> f32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `percentage_of` is never used
[INFO] [stdout]   --> src/percentajes/mod.rs:51:8
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn percentage_of(percentage: u16, num: u16) -> f64 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calc_part` is never used
[INFO] [stdout]   --> src/percentajes/mod.rs:54:8
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub fn calc_part(percentage: u16, total: u16) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calc_percentage` is never used
[INFO] [stdout]   --> src/percentajes/mod.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub fn calc_percentage(total: u16, part: u16) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `calc_total` is never used
[INFO] [stdout]   --> src/percentajes/mod.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub fn calc_total(part: u16, percentage: u16) -> u32 {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Fraction` is never constructed
[INFO] [stdout]  --> src/fractions/mod.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct Fraction {
[INFO] [stdout]   |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `calculate`, `get_a`, `get_b`, and `has_x` are never used
[INFO] [stdout]   --> src/fractions/mod.rs:9:12
[INFO] [stdout]    |
[INFO] [stdout]  8 | impl Fraction {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout]  9 |     pub fn new(a: Option<f64>, b: Option<f64>) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub fn calculate(&self) -> Option<f64> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub fn get_a(&self) -> Option<f64> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub fn get_b(&self) -> Option<f64> {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub fn has_x(&self) -> bool {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling math-commons v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around block return value
[INFO] [stdout]   --> src/fractions/mod.rs:25:9
[INFO] [stdout]    |
[INFO] [stdout] 25 |         ( self.a.is_none() || self.b.is_none() )
[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] 25 -         ( self.a.is_none() || self.b.is_none() )
[INFO] [stdout] 25 +         self.a.is_none() || self.b.is_none()
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.33s
[INFO] running `Command { std: "docker" "inspect" "804e082ebf9dab2ec97706273e7a369eba3528605e93ba07507adb73a44418f4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "804e082ebf9dab2ec97706273e7a369eba3528605e93ba07507adb73a44418f4", kill_on_drop: false }`
[INFO] [stdout] 804e082ebf9dab2ec97706273e7a369eba3528605e93ba07507adb73a44418f4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-10-28" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] adbd9003050f1f8e47f54829747c42798c5b225237399a012ff7936ace92d8a8
[INFO] running `Command { std: "docker" "start" "-a" "adbd9003050f1f8e47f54829747c42798c5b225237399a012ff7936ace92d8a8", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `crate::fractions::Fraction`
[INFO] [stderr]  --> src/percentajes/tests.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::fractions::Fraction;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `calc_part`, `calc_percentage`, `calc_proportion_value`, `calc_total`, `is_directly_proportional`, `is_proportion`, `percentage_in_decimal`, and `percentage_of`
[INFO] [stderr]  --> src/percentajes/tests.rs:2:26
[INFO] [stderr]   |
[INFO] [stderr] 2 | ...::{calc_part, calc_percentage, calc_proportion_value, calc_total, is_directly_proportional, is_proportion, percentage_in_decimal, percentage_of};
[INFO] [stderr]   |       ^^^^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around block return value
[INFO] [stderr]   --> src/fractions/mod.rs:25:9
[INFO] [stderr]    |
[INFO] [stderr] 25 |         ( self.a.is_none() || self.b.is_none() )
[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] 25 -         ( self.a.is_none() || self.b.is_none() )
[INFO] [stderr] 25 +         self.a.is_none() || self.b.is_none()
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_proportion` is never used
[INFO] [stderr]  --> src/percentajes/mod.rs:5:8
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub fn is_proportion(f1: Fraction, f2: Fraction) -> bool {
[INFO] [stderr]   |        ^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `calc_proportion_value` is never used
[INFO] [stderr]   --> src/percentajes/mod.rs:11:8
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub fn calc_proportion_value(f1: Fraction, f2: Fraction) -> f64 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_directly_proportional` is never used
[INFO] [stderr]   --> src/percentajes/mod.rs:35:8
[INFO] [stderr]    |
[INFO] [stderr] 35 | pub fn is_directly_proportional(fractions: Vec<Fraction>) -> bool {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `percentage_in_decimal` is never used
[INFO] [stderr]   --> src/percentajes/mod.rs:48:8
[INFO] [stderr]    |
[INFO] [stderr] 48 | pub fn percentage_in_decimal(percentage: u16) -> f32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `percentage_of` is never used
[INFO] [stderr]   --> src/percentajes/mod.rs:51:8
[INFO] [stderr]    |
[INFO] [stderr] 51 | pub fn percentage_of(percentage: u16, num: u16) -> f64 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `calc_part` is never used
[INFO] [stderr]   --> src/percentajes/mod.rs:54:8
[INFO] [stderr]    |
[INFO] [stderr] 54 | pub fn calc_part(percentage: u16, total: u16) -> u32 {
[INFO] [stderr]    |        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `calc_percentage` is never used
[INFO] [stderr]   --> src/percentajes/mod.rs:57:8
[INFO] [stderr]    |
[INFO] [stderr] 57 | pub fn calc_percentage(total: u16, part: u16) -> u32 {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `calc_total` is never used
[INFO] [stderr]   --> src/percentajes/mod.rs:60:8
[INFO] [stderr]    |
[INFO] [stderr] 60 | pub fn calc_total(part: u16, percentage: u16) -> u32 {
[INFO] [stderr]    |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Fraction` is never constructed
[INFO] [stderr]  --> src/fractions/mod.rs:4:12
[INFO] [stderr]   |
[INFO] [stderr] 4 | pub struct Fraction {
[INFO] [stderr]   |            ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `new`, `calculate`, `get_a`, `get_b`, and `has_x` are never used
[INFO] [stderr]   --> src/fractions/mod.rs:9:12
[INFO] [stderr]    |
[INFO] [stderr]  8 | impl Fraction {
[INFO] [stderr]    | ------------- associated items in this implementation
[INFO] [stderr]  9 |     pub fn new(a: Option<f64>, b: Option<f64>) -> Self {
[INFO] [stderr]    |            ^^^
[INFO] [stderr] ...
[INFO] [stderr] 14 |     pub fn calculate(&self) -> Option<f64> {
[INFO] [stderr]    |            ^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 18 |     pub fn get_a(&self) -> Option<f64> {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 21 |     pub fn get_b(&self) -> Option<f64> {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 24 |     pub fn has_x(&self) -> bool {
[INFO] [stderr]    |            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `math-commons` (lib) generated 13 warnings (run `cargo fix --lib -p math-commons` to apply 3 suggestions)
[INFO] [stderr] warning: `math-commons` (lib test) generated 1 warning (1 duplicate)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/math_commons-9bc49f3b1a3f7deb)
[INFO] [stdout] 
[INFO] [stdout] running 14 tests
[INFO] [stdout] test fractions::tests::calculate ... ok
[INFO] [stdout] test fractions::tests::get_a ... ok
[INFO] [stdout] test fractions::tests::x_in_fraction_calc ... ok
[INFO] [stdout] test percentajes::tests::calc ... ok
[INFO] [stdout] test percentajes::tests::calc_proportion ... ok
[INFO] [stdout] test percentajes::tests::calc_total_test ... ok
[INFO] [stdout] test percentajes::tests::calc_part_test ... ok
[INFO] [stdout] test percentajes::tests::is_directly_proportional_test ... ok
[INFO] [stdout] test percentajes::tests::percentage_of_test ... ok
[INFO] [stdout] test percentajes::tests::not_directly_proportional_test ... ok
[INFO] [stdout] test percentajes::tests::calc_percentage_test ... ok
[INFO] [stdout] test fractions::tests::get_b ... ok
[INFO] [stdout] test tests::it_works ... ok
[INFO] [stdout] test percentajes::tests::percentage_in_decimal_test ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests math_commons
[INFO] [stderr] warning: unnecessary parentheses around block return value
[INFO] [stderr]   --> src/fractions/mod.rs:25:9
[INFO] [stderr]    |
[INFO] [stderr] 25 |         ( self.a.is_none() || self.b.is_none() )
[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] 25 -         ( self.a.is_none() || self.b.is_none() )
[INFO] [stderr] 25 +         self.a.is_none() || self.b.is_none()
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: 1 warning 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" "adbd9003050f1f8e47f54829747c42798c5b225237399a012ff7936ace92d8a8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "adbd9003050f1f8e47f54829747c42798c5b225237399a012ff7936ace92d8a8", kill_on_drop: false }`
[INFO] [stdout] adbd9003050f1f8e47f54829747c42798c5b225237399a012ff7936ace92d8a8
