[INFO] cloning repository https://github.com/joaopcmiranda/forge-engine [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/joaopcmiranda/forge-engine" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjoaopcmiranda%2Fforge-engine", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjoaopcmiranda%2Fforge-engine'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 8ecb059a3c61977752e49024e7a75c8095962cd9 [INFO] testing joaopcmiranda/forge-engine/8ecb059a3c61977752e49024e7a75c8095962cd9 against master#0d162b25edd5bf0dba9a22e83b614f1113e90474 for pr-150681 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjoaopcmiranda%2Fforge-engine" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/joaopcmiranda/forge-engine [INFO] finished tweaking git repo https://github.com/joaopcmiranda/forge-engine [INFO] tweaked toml for git repo https://github.com/joaopcmiranda/forge-engine written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/joaopcmiranda/forge-engine on toolchain 0d162b25edd5bf0dba9a22e83b614f1113e90474 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/joaopcmiranda/forge-engine 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" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 9cb9ce2c557876760e143f11a76b096a070860a9f51c1bc16806b490ef6e235f [INFO] running `Command { std: "docker" "start" "-a" "9cb9ce2c557876760e143f11a76b096a070860a9f51c1bc16806b490ef6e235f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "9cb9ce2c557876760e143f11a76b096a070860a9f51c1bc16806b490ef6e235f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9cb9ce2c557876760e143f11a76b096a070860a9f51c1bc16806b490ef6e235f", kill_on_drop: false }` [INFO] [stdout] 9cb9ce2c557876760e143f11a76b096a070860a9f51c1bc16806b490ef6e235f [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=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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c1ce5613e6f7e4be075df41ca0189f503b2ac750f396026d758c435324291a36 [INFO] running `Command { std: "docker" "start" "-a" "c1ce5613e6f7e4be075df41ca0189f503b2ac750f396026d758c435324291a36", kill_on_drop: false }` [INFO] [stderr] Compiling forge-engine v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `Vec2`, `Vec3`, and `Vec4` [INFO] [stdout] --> src/math/vector/swizzle.rs:1:19 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::math::{Vec2, Vec3, Vec4}; [INFO] [stdout] | ^^^^ ^^^^ ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Quaternion` is never constructed [INFO] [stdout] --> src/math/complex/quaternion/mod.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | pub struct Quaternion { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Quaternion` is never constructed [INFO] [stdout] --> src/math/complex/duonion/mod.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | pub struct Quaternion { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Quaternion` is never constructed [INFO] [stdout] --> src/math/complex/complex_number/mod.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | pub struct Quaternion { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.49s [INFO] running `Command { std: "docker" "inspect" "c1ce5613e6f7e4be075df41ca0189f503b2ac750f396026d758c435324291a36", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c1ce5613e6f7e4be075df41ca0189f503b2ac750f396026d758c435324291a36", kill_on_drop: false }` [INFO] [stdout] c1ce5613e6f7e4be075df41ca0189f503b2ac750f396026d758c435324291a36 [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=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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9bf06b7e18e8400cf31c59b59806dccf8f64a0879a71253197c3d2c556946e5d [INFO] running `Command { std: "docker" "start" "-a" "9bf06b7e18e8400cf31c59b59806dccf8f64a0879a71253197c3d2c556946e5d", kill_on_drop: false }` [INFO] [stdout] warning: unused imports: `Vec2`, `Vec3`, and `Vec4` [INFO] [stdout] --> src/math/vector/swizzle.rs:1:19 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::math::{Vec2, Vec3, Vec4}; [INFO] [stdout] | ^^^^ ^^^^ ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Quaternion` is never constructed [INFO] [stdout] --> src/math/complex/quaternion/mod.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | pub struct Quaternion { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Quaternion` is never constructed [INFO] [stdout] --> src/math/complex/duonion/mod.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | pub struct Quaternion { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Quaternion` is never constructed [INFO] [stdout] --> src/math/complex/complex_number/mod.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | pub struct Quaternion { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling forge-engine v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: struct `Quaternion` is never constructed [INFO] [stdout] --> src/math/complex/quaternion/mod.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | pub struct Quaternion { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Quaternion` is never constructed [INFO] [stdout] --> src/math/complex/duonion/mod.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | pub struct Quaternion { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Quaternion` is never constructed [INFO] [stdout] --> src/math/complex/complex_number/mod.rs:1:13 [INFO] [stdout] | [INFO] [stdout] 1 | pub struct Quaternion { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.35s [INFO] running `Command { std: "docker" "inspect" "9bf06b7e18e8400cf31c59b59806dccf8f64a0879a71253197c3d2c556946e5d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9bf06b7e18e8400cf31c59b59806dccf8f64a0879a71253197c3d2c556946e5d", kill_on_drop: false }` [INFO] [stdout] 9bf06b7e18e8400cf31c59b59806dccf8f64a0879a71253197c3d2c556946e5d [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=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:845e597a41426bbf2703be69acdb67d10b6de511142d05cba7bbe119c898b2c7" "/opt/rustwide/cargo-home/bin/cargo" "+0d162b25edd5bf0dba9a22e83b614f1113e90474" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 59cecdc1a8a9f5792a44b442232be6ccc3a19154767449d8527d25e48f05e1d9 [INFO] running `Command { std: "docker" "start" "-a" "59cecdc1a8a9f5792a44b442232be6ccc3a19154767449d8527d25e48f05e1d9", kill_on_drop: false }` [INFO] [stderr] warning: unused imports: `Vec2`, `Vec3`, and `Vec4` [INFO] [stderr] --> src/math/vector/swizzle.rs:1:19 [INFO] [stderr] | [INFO] [stderr] 1 | use crate::math::{Vec2, Vec3, Vec4}; [INFO] [stderr] | ^^^^ ^^^^ ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: struct `Quaternion` is never constructed [INFO] [stderr] --> src/math/complex/quaternion/mod.rs:1:13 [INFO] [stderr] | [INFO] [stderr] 1 | pub struct Quaternion { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: struct `Quaternion` is never constructed [INFO] [stderr] --> src/math/complex/duonion/mod.rs:1:13 [INFO] [stderr] | [INFO] [stderr] 1 | pub struct Quaternion { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `Quaternion` is never constructed [INFO] [stderr] --> src/math/complex/complex_number/mod.rs:1:13 [INFO] [stderr] | [INFO] [stderr] 1 | pub struct Quaternion { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `forge-engine` (lib) generated 4 warnings (run `cargo fix --lib -p forge-engine` to apply 1 suggestion) [INFO] [stderr] warning: `forge-engine` (lib test) generated 3 warnings (3 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.05s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/forge_engine-dd7a3eda696ce9e3) [INFO] [stdout] [INFO] [stdout] running 224 tests [INFO] [stdout] test math::matrix::mat2::tests::test_accessors ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_conversions ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_determinant ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_default ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_flip_matrices ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_inverse ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_matrix_division ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_matrix_subtraction ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_constants ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_indexing ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_negation ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_multiplication_associativity ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_matrix_multiplication ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_setters ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_scalar_division ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_trace ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_matrix_vector_multiplication ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_arbitrary_axis_rotation ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_utility_operations ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_matrix_addition ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_scalar_multiplication ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_accessors ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_chainable_operations ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_constants ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_constructors ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_matrix_multiplication ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_matrix_subtraction ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_default ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_determinant ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_conversions ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_indexing ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_inverse ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_matrix_addition ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_transpose ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_matrix_division ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_negation ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_scalar_division ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_scalar_multiplication ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_matrix_vector_multiplication ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_setters ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_trace ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_transformation_constructors ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_transpose ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_utility_operations ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_from_cols ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_from_look_at_identity_case ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_from_look_at_orthogonal_basis ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_from_mul_associativity ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_from_mul_non_commutative ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_from_mul_identity ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_from_mul_known_result ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_from_mul_translation_composition ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_from_rows ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_from_rows_from_cols_consistency ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_inverse_transformations ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_new ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_perspective_aspect_ratio ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_perspective_basic_properties ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_out_of_bounds_access - should panic ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_out_of_bounds_set - should panic ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_rotation_arbitrary_axis_90_degrees ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_rotation_arbitrary_axis_identity ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_out_of_bounds_row - should panic ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_rotation_preserves_axis ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_rotation_x_180_degrees ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_out_of_bounds_col_set - should panic ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_rotation_x_90_degrees ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_rotation_x_identity ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_rotation_y_identity ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_scalar_division_by_zero - should panic ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_rotation_z_90_degrees ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_rotation_y_90_degrees ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_rotation_z_identity ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_scaling_basic ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_scaling_identity ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_transformation_composition ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_scaling_transform_point ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_translation_basic ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_out_of_bounds_col_set - should panic ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_translation_identity ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_translation_transform_direction ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_translation_transform_point ... ok [INFO] [stdout] test math::point::point2d::tests::test_conversions ... ok [INFO] [stdout] test math::point::point2d::tests::test_inherited_vec2_methods ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_out_of_bounds_row - should panic ... ok [INFO] [stdout] test math::point::point2d::tests::test_point_creation ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_out_of_bounds_set - should panic ... ok [INFO] [stdout] test math::vector::tests::test_infinity_handling ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_out_of_bounds_access - should panic ... ok [INFO] [stdout] test math::point::point2d::tests::test_point_subtraction ... ok [INFO] [stdout] test math::point::point2d::tests::test_point_translation ... ok [INFO] [stdout] test math::vector::tests::test_angle_between_parallel_vectors ... ok [INFO] [stdout] test math::vector::swizzle::tests::test_szle ... ok [INFO] [stdout] test math::vector::tests::test_magnitude_squared_vs_magnitude ... ok [INFO] [stdout] test math::vector::tests::test_division_by_zero ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_perspective_invalid_aspect - should panic ... ok [INFO] [stdout] test math::vector::tests::test_normalize_zero_vector ... ok [INFO] [stdout] test math::vector::tests::test_reflect_with_non_unit_normal ... ok [INFO] [stdout] test math::vector::tests::test_vector2_to_vector3_conversion ... ok [INFO] [stdout] test math::vector::tests::test_vector3_to_vector2_conversion ... ok [INFO] [stdout] test math::vector::tests::test_vector3_to_vector4_conversion ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_perspective_invalid_far - should panic ... ok [INFO] [stdout] test math::vector::tests::test_vector4_to_vector3_conversion ... ok [INFO] [stdout] test math::vector::tests::test_nan_propagation ... ok [INFO] [stdout] test math::vector::tests::test_operators_produce_same_results_as_functions ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_abs ... ok [INFO] [stdout] test math::vector::tests::test_very_small_vectors ... ok [INFO] [stdout] test math::vector::tests::test_very_large_vectors ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_add ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_perspective_invalid_fov - should panic ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_scalar_division_by_zero - should panic ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_perspective_invalid_near - should panic ... ok [INFO] [stdout] test math::matrix::mat3::tests::test_minor ... ok [INFO] [stdout] test math::vector::tests::test_perpendicular_to_zero ... ok [INFO] [stdout] test math::vector::tests::test_project_onto_zero_vector ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_add_assign ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_angle ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_angle_between ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_clamp ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_constants ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_construction ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_conversions ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_default ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_distance ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_div ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_cross ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_from_angle ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_from_tuple ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_indexing ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_is_normalised ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_is_zero ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_lerp ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_magnitude ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_min_max ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_mul_assign ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_neg ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_mul ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_pow_sqrt ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_project_reject ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_reflect ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_normalized ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_safe_normal ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_perpendicular ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_sub ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_add_assign ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_clamp ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_constants ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_abs ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_cross ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_default ... ok [INFO] [stdout] test math::vector::vec3::tests::test_indexing_in_loops ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_div ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_rotate ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_sub_assign ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_add ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_angle_between ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_dot ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_div_assign ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_equals_default_precision ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_index_out_of_bounds - should panic ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_equals_with_precision_high ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_equals_with_precision_low ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_is_normalised ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_is_zero ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_magnitude ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_lerp ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_mul ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_min_max ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_mul_assign ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_neg ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_from_tuple ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_not_equals ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_normalized ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_reflect ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_safe_normal ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_pow_sqrt ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_sub ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_sub_assign ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_abs ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_add ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_project_reject ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_constants ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_distance ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_add_assign ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_default ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_div ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_dot ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_from_array ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_from_tuple ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_from_vec3 ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_div_assign ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_from_vector2 ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_construction ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_from_vector3 ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_indexing ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_is_zero ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_min_max ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_mul_assign ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_is_normalised ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_neg ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_index_out_of_bounds - should panic ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_lerp ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_magnitude ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_mul ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_indexing ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_normalized ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_normalized_zero ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_reflect ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_project_reject ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_to_array ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_to_tuple ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_pow_sqrt ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_safe_normal ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_sub_assign ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_to_vector3 ... ok [INFO] [stdout] test math::vector::vec4::tests::test_vector4_sub ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_construction ... ok [INFO] [stdout] test math::matrix::mat2::tests::test_constructors ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_div_assign ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_dot ... ok [INFO] [stdout] test math::vector::vec2::tests::test_vector2_index_out_of_bounds - should panic ... ok [INFO] [stdout] test math::vector::vec3::tests::test_vector3_distance ... ok [INFO] [stdout] test math::matrix::mat4::tests::test_rotation_preserves_length ... ok [INFO] [stderr] Doc-tests forge_engine [INFO] [stdout] test math::vector::vec4::tests::test_vector4_clamp ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 224 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 95 tests [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::abs (line 733) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::clamp (line 790) ... ok [INFO] [stdout] test src/math/point/point2d/mod.rs - math::point::point2d::Point2D::translate_mut (line 105) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2 (line 127) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2 (line 18) ... ok [INFO] [stdout] test src/math/point/point2d/mod.rs - math::point::point2d::Point2D::new (line 42) ... ok [INFO] [stdout] test src/math/point/point2d/mod.rs - math::point::point2d::Point2D::from_vec2 (line 179) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2 (line 143) ... ok [INFO] [stdout] test src/math/point/point2d/mod.rs - math::point::point2d::Point2D (line 12) ... ok [INFO] [stdout] test src/math/vector/swizzle.rs - math::vector::swizzle::s (line 6) ... FAILED [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::angle_between (line 664) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::index (line 184) ... ok [INFO] [stdout] test src/math/point/point2d/mod.rs - math::point::point2d::Point2D::to_vec2 (line 160) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::angle (line 639) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::from_angle (line 75) ... ok [INFO] [stdout] test src/math/point/point2d/mod.rs - math::point::point2d::Point2D::midpoint (line 144) ... ok [INFO] [stdout] test src/math/point/point2d/mod.rs - math::point::point2d::Point2D::vector_to (line 124) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::index_mut (line 212) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::is_normalised (line 548) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::dot (line 394) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::distance (line 609) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::cross (line 453) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::perpendicular (line 715) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::is_zero (line 531) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::lerp (line 589) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::max (line 770) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::min (line 751) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::normalized (line 507) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::magnitude (line 472) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::magnitude_squared (line 490) ... ok [INFO] [stdout] test src/math/point/point2d/mod.rs - math::point::point2d::Point2D::translate (line 85) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::reject_from (line 839) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::project_onto (line 812) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::new (line 56) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::pow (line 414) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::safe_normal (line 565) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::reflect (line 861) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3 (line 191) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::rotate (line 689) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::angle_between (line 816) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3 (line 19) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::abs (line 729) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::distance (line 701) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3 (line 173) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3 (line 157) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::index (line 234) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::sqrt (line 430) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::is_normalised (line 640) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::cross (line 534) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::dot (line 475) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::clamp (line 794) ... ok [INFO] [stdout] test src/math/vector/vec2/mod.rs - math::vector::vec2::Vec2::vec3 (line 880) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::index_mut (line 265) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::is_zero (line 623) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::min (line 747) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::pow (line 495) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::new (line 60) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::normalized (line 599) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::magnitude_squared (line 582) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::magnitude (line 558) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::reflect (line 890) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::safe_normal (line 657) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4 (line 191) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::project_onto (line 841) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4 (line 20) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::reject_from (line 868) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4 (line 209) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4 (line 244) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::lerp (line 681) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4 (line 227) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::max (line 770) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4 (line 260) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::abs (line 920) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::dot (line 695) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::is_zero (line 814) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::from_vec3 (line 92) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::is_normalised (line 831) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::distance (line 892) ... ok [INFO] [stdout] test src/math/vector/vec3/mod.rs - math::vector::vec3::Vec3::sqrt (line 511) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::index_mut (line 395) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::lerp (line 872) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::clamp (line 987) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::index (line 361) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::max (line 962) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::magnitude (line 755) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::min (line 938) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::project_onto (line 1009) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::pow (line 715) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::reflect (line 1058) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::sqrt (line 736) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::magnitude_squared (line 773) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::new (line 67) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::normalized (line 790) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::reject_from (line 1036) ... ok [INFO] [stdout] test src/math/vector/vec4/mod.rs - math::vector::vec4::Vec4::safe_normal (line 848) ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- src/math/vector/swizzle.rs - math::vector::swizzle::s (line 6) stdout ---- [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Vec2` [INFO] [stdout] --> src/math/vector/swizzle.rs:12:10 [INFO] [stdout] | [INFO] [stdout] 12 | let xy = s!(v, x y); // Vec2(1.0, 2.0) [INFO] [stdout] | ^^^^^^^^^^ use of undeclared type `Vec2` [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `s` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: a struct with a similar name exists [INFO] [stdout] | [INFO] [stdout] 25 - Vec2::new(s!(@get $v, $c1), s!(@get $v, $c2)) [INFO] [stdout] 25 + Vec::new(s!(@get $v, $c1), s!(@get $v, $c2)) [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 5 + use forge_engine::math::Vec2; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Vec3` [INFO] [stdout] --> src/math/vector/swizzle.rs:13:11 [INFO] [stdout] | [INFO] [stdout] 13 | let zyx = s!(v, z y x); // Vec3(3.0, 2.0, 1.0) [INFO] [stdout] | ^^^^^^^^^^^^ use of undeclared type `Vec3` [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `s` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: a struct with a similar name exists [INFO] [stdout] | [INFO] [stdout] 29 - Vec3::new(s!(@get $v, $c1), s!(@get $v, $c2), s!(@get $v, $c3)) [INFO] [stdout] 29 + Vec::new(s!(@get $v, $c1), s!(@get $v, $c2), s!(@get $v, $c3)) [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 5 + use forge_engine::math::Vec3; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error[E0433]: failed to resolve: use of undeclared type `Vec3` [INFO] [stdout] --> src/math/vector/swizzle.rs:15:14 [INFO] [stdout] | [INFO] [stdout] 15 | let padded = s!(v, x 0 z); [INFO] [stdout] | ^^^^^^^^^^^^ use of undeclared type `Vec3` [INFO] [stdout] | [INFO] [stdout] = note: this error originates in the macro `s` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: a struct with a similar name exists [INFO] [stdout] | [INFO] [stdout] 29 - Vec3::new(s!(@get $v, $c1), s!(@get $v, $c2), s!(@get $v, $c3)) [INFO] [stdout] 29 + Vec::new(s!(@get $v, $c1), s!(@get $v, $c2), s!(@get $v, $c3)) [INFO] [stdout] | [INFO] [stdout] help: consider importing this struct [INFO] [stdout] | [INFO] [stdout] 5 + use forge_engine::math::Vec3; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0433`. [INFO] [stdout] Couldn't compile the test. [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] src/math/vector/swizzle.rs - math::vector::swizzle::s (line 6) [INFO] [stdout] [INFO] [stdout] test result: FAILED. 94 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.67s [INFO] [stdout] [INFO] [stdout] all doctests ran in 4.06s; merged doctests compilation took 0.38s [INFO] [stderr] error: doctest failed, to rerun pass `--doc` [INFO] running `Command { std: "docker" "inspect" "59cecdc1a8a9f5792a44b442232be6ccc3a19154767449d8527d25e48f05e1d9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "59cecdc1a8a9f5792a44b442232be6ccc3a19154767449d8527d25e48f05e1d9", kill_on_drop: false }` [INFO] [stdout] 59cecdc1a8a9f5792a44b442232be6ccc3a19154767449d8527d25e48f05e1d9