[INFO] cloning repository https://github.com/tplive/rtc-rs [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/tplive/rtc-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftplive%2Frtc-rs", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftplive%2Frtc-rs'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 0bf515b44253322be5ad028047dcc41a967e9733 [INFO] testing tplive/rtc-rs against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ftplive%2Frtc-rs" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/tplive/rtc-rs [INFO] finished tweaking git repo https://github.com/tplive/rtc-rs [INFO] tweaked toml for git repo https://github.com/tplive/rtc-rs written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/tplive/rtc-rs 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 git repo https://github.com/tplive/rtc-rs 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] Downloading crates ... [INFO] [stderr] Downloaded indicatif v0.17.9 [INFO] [stderr] Downloaded nalgebra-macros v0.2.2 [INFO] [stderr] Downloaded safe_arch v0.7.2 [INFO] [stderr] Downloaded simba v0.9.0 [INFO] [stderr] Downloaded wide v0.7.28 [INFO] [stderr] Downloaded sysinfo v0.33.0 [INFO] [stderr] Downloaded png v0.17.15 [INFO] [stderr] Downloaded nalgebra v0.33.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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] 05f03067cbed274a1a594b808404edb1d158bf716404b26e5f41ebb2f7d350ae [INFO] running `Command { std: "docker" "start" "-a" "05f03067cbed274a1a594b808404edb1d158bf716404b26e5f41ebb2f7d350ae", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "05f03067cbed274a1a594b808404edb1d158bf716404b26e5f41ebb2f7d350ae", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "05f03067cbed274a1a594b808404edb1d158bf716404b26e5f41ebb2f7d350ae", kill_on_drop: false }` [INFO] [stdout] 05f03067cbed274a1a594b808404edb1d158bf716404b26e5f41ebb2f7d350ae [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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] b2b41bc66eb50371b96c29f6adef55017659a2d6e7cb6fa22009c1e10ef660dc [INFO] running `Command { std: "docker" "start" "-a" "b2b41bc66eb50371b96c29f6adef55017659a2d6e7cb6fa22009c1e10ef660dc", kill_on_drop: false }` [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Compiling proc-macro2 v1.0.89 [INFO] [stderr] Compiling bytemuck v1.19.0 [INFO] [stderr] Compiling matrixmultiply v0.3.9 [INFO] [stderr] Compiling portable-atomic v1.10.0 [INFO] [stderr] Compiling miniz_oxide v0.8.2 [INFO] [stderr] Compiling either v1.13.0 [INFO] [stderr] Compiling rawpointer v0.2.1 [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Compiling console v0.15.8 [INFO] [stderr] Compiling unicode-width v0.2.0 [INFO] [stderr] Compiling number_prefix v0.4.0 [INFO] [stderr] Compiling rand_core v0.9.3 [INFO] [stderr] Compiling safe_arch v0.7.2 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling flate2 v1.0.35 [INFO] [stderr] Compiling rand v0.9.1 [INFO] [stderr] Compiling wide v0.7.28 [INFO] [stderr] Compiling png v0.17.15 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling indicatif v0.17.9 [INFO] [stderr] Compiling quote v1.0.37 [INFO] [stderr] Compiling crossbeam-deque v0.8.6 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Compiling approx v0.5.1 [INFO] [stderr] Compiling num-complex v0.4.6 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling syn v2.0.87 [INFO] [stderr] Compiling num-rational v0.4.2 [INFO] [stderr] Compiling rayon v1.10.0 [INFO] [stderr] Compiling simba v0.9.0 [INFO] [stderr] Compiling sysinfo v0.33.0 [INFO] [stderr] Compiling nalgebra-macros v0.2.2 [INFO] [stderr] Compiling nalgebra v0.33.2 [INFO] [stderr] Compiling rtc-rs v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `render` [INFO] [stdout] --> src/bin/chapter_08.rs:15:14 [INFO] [stdout] | [INFO] [stdout] 15 | render::{render, render_parallel}, [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: `render` [INFO] [stdout] --> src/bin/chapter_07.rs:15:14 [INFO] [stdout] | [INFO] [stdout] 15 | render::{render, render_parallel}, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 26.76s [INFO] running `Command { std: "docker" "inspect" "b2b41bc66eb50371b96c29f6adef55017659a2d6e7cb6fa22009c1e10ef660dc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b2b41bc66eb50371b96c29f6adef55017659a2d6e7cb6fa22009c1e10ef660dc", kill_on_drop: false }` [INFO] [stdout] b2b41bc66eb50371b96c29f6adef55017659a2d6e7cb6fa22009c1e10ef660dc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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] 8241c2d00deba2979f1db3e1077bd56d30f77703357b8f84901998dbf621d663 [INFO] running `Command { std: "docker" "start" "-a" "8241c2d00deba2979f1db3e1077bd56d30f77703357b8f84901998dbf621d663", kill_on_drop: false }` [INFO] [stderr] Compiling rtc-rs v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `render` [INFO] [stdout] --> src/bin/chapter_08.rs:15:14 [INFO] [stdout] | [INFO] [stdout] 15 | render::{render, render_parallel}, [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: `render` [INFO] [stdout] --> src/bin/chapter_07.rs:15:14 [INFO] [stdout] | [INFO] [stdout] 15 | render::{render, render_parallel}, [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: `p` [INFO] [stdout] --> src/pattern.rs:95:13 [INFO] [stdout] | [INFO] [stdout] 95 | let p = StripePattern::new(Color::white(), Color::black()); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_p` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `object` [INFO] [stdout] --> src/pattern.rs:99:13 [INFO] [stdout] | [INFO] [stdout] 99 | let object = Sphere::new(t.get(), m); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_object` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 2.63s [INFO] running `Command { std: "docker" "inspect" "8241c2d00deba2979f1db3e1077bd56d30f77703357b8f84901998dbf621d663", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8241c2d00deba2979f1db3e1077bd56d30f77703357b8f84901998dbf621d663", kill_on_drop: false }` [INFO] [stdout] 8241c2d00deba2979f1db3e1077bd56d30f77703357b8f84901998dbf621d663 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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] 1f2c9abc98fd2d904ac9b9e1b77023ec78137bd4d279cabf70dde1355926cb1c [INFO] running `Command { std: "docker" "start" "-a" "1f2c9abc98fd2d904ac9b9e1b77023ec78137bd4d279cabf70dde1355926cb1c", kill_on_drop: false }` [INFO] [stderr] warning: unused variable: `p` [INFO] [stderr] --> src/pattern.rs:95:13 [INFO] [stderr] | [INFO] [stderr] 95 | let p = StripePattern::new(Color::white(), Color::black()); [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_p` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `object` [INFO] [stderr] --> src/pattern.rs:99:13 [INFO] [stderr] | [INFO] [stderr] 99 | let object = Sphere::new(t.get(), m); [INFO] [stderr] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_object` [INFO] [stderr] [INFO] [stderr] warning: `rtc-rs` (lib test) generated 2 warnings (run `cargo fix --lib -p rtc-rs --tests` to apply 2 suggestions) [INFO] [stderr] warning: unused import: `render` [INFO] [stderr] --> src/bin/chapter_08.rs:15:14 [INFO] [stderr] | [INFO] [stderr] 15 | render::{render, render_parallel}, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `render` [INFO] [stderr] --> src/bin/chapter_07.rs:15:14 [INFO] [stderr] | [INFO] [stderr] 15 | render::{render, render_parallel}, [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default [INFO] [stderr] [INFO] [stderr] warning: `rtc-rs` (bin "chapter_08" test) generated 1 warning (run `cargo fix --bin "chapter_08" -p rtc-rs --tests` to apply 1 suggestion) [INFO] [stderr] warning: `rtc-rs` (bin "chapter_07" test) generated 1 warning (run `cargo fix --bin "chapter_07" -p rtc-rs --tests` to apply 1 suggestion) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rtc_rs-0c3902531eec2060) [INFO] [stdout] [INFO] [stdout] running 154 tests [INFO] [stdout] test canvas::tests::constructing_ppm_header ... ok [INFO] [stdout] test canvas::tests::constructing_ppm_pixel_data ... ok [INFO] [stdout] test canvas::tests::creating_a_canvas ... ok [INFO] [stdout] test canvas::tests::splitting_long_lines_in_ppm_files ... ok [INFO] [stdout] test color::tests::adding_colors ... ok [INFO] [stdout] test canvas::tests::writing_pixels_to_a_canvas ... ok [INFO] [stdout] test color::tests::multiply_color_by_scalar ... ok [INFO] [stdout] test color::tests::multiply_two_colors ... ok [INFO] [stdout] test color::tests::subtracting_colors ... ok [INFO] [stdout] test computation::tests::the_hit_when_intersection_occurs_outside ... ok [INFO] [stdout] test computation::tests::precompute_state_of_intersection ... ok [INFO] [stdout] test intersections::tests::color_when_ray_misses ... ok [INFO] [stdout] test intersections::tests::color_with_intersection_behind_ray ... ok [INFO] [stdout] test color::tests::colors_are_rgb_tuples ... ok [INFO] [stdout] test camera::tests::pixel_size_horizontal_canvas ... ok [INFO] [stdout] test camera::tests::constructing_camera ... ok [INFO] [stdout] test intersections::tests::the_hit_should_offset_the_point ... ok [INFO] [stdout] test light::tests::a_point_light_has_position_and_intensity ... ok [INFO] [stdout] test intersections::tests::shading_an_intersection_from_the_inside ... ok [INFO] [stdout] test camera::tests::construct_ray_through_center_of_canvas ... ok [INFO] [stdout] test light::tests::lighting_with_eye_between_light_and_surface_eye_offset_45_degrees ... ok [INFO] [stdout] test light::tests::lighting_with_eye_oposite_surface_light_offset_45_degrees ... ok [INFO] [stdout] test light::tests::lighting_with_light_behind_surface ... ok [INFO] [stdout] test intersections::tests::shading_an_intersection ... ok [INFO] [stdout] test camera::tests::pixel_size_vertical_canvas ... ok [INFO] [stdout] test light::tests::lighting_with_surface_in_shadow ... ok [INFO] [stdout] test light::tests::lighting_with_eye_between_light_and_surface ... ok [INFO] [stdout] test matrix::tests::calculating_inverse_of_another_matrix ... ok [INFO] [stdout] test matrix::tests::calculating_inverse_of_a_third_matrix ... ok [INFO] [stdout] test matrix::tests::can_make_2x2_matrix ... ok [INFO] [stdout] test matrix::tests::calculating_inverse_of_matrix ... ok [INFO] [stdout] test matrix::tests::constructing_and_inspecting_a_4x4_matrix ... ok [INFO] [stdout] test matrix::tests::matrix_inequality ... ok [INFO] [stdout] test matrix::tests::matrix_equality ... ok [INFO] [stdout] test matrix::tests::matrix_multiplied_by_tuple ... ok [INFO] [stdout] test matrix::tests::multiply_identity_matrix_by_tuple ... ok [INFO] [stdout] test matrix::tests::multiply_matrices ... ok [INFO] [stdout] test matrix::tests::multiply_matrix_by_identity_matrix ... ok [INFO] [stdout] test matrix::tests::submatrix_of_3x3_is_2x2 ... ok [INFO] [stdout] test matrix::tests::multiply_product_by_inverse ... ok [INFO] [stdout] test matrix::tests::testing_a_non_invertible_matrix_for_invertibility ... ok [INFO] [stdout] test matrix::tests::testing_an_invertible_matrix_for_invertibility ... ok [INFO] [stdout] test matrix::tests::trait_submatrix_of_3x3_is_2x2 ... ok [INFO] [stdout] test matrix::tests::transposing_a_matrix ... ok [INFO] [stdout] test matrix::tests::transposing_identity_matrix ... ok [INFO] [stdout] test matrix::tests::trait_submatrix_of_4x4_is_3x3 ... ok [INFO] [stdout] test pattern::tests::creating_stripe_pattern ... ok [INFO] [stdout] test matrix::tests::calculate_determinant_of_3x3_matrix ... ok [INFO] [stdout] test matrix::tests::calculate_determinant_of_4x4_matrix ... ok [INFO] [stdout] test pattern::tests::stripe_pattern_is_constant_in_z ... ok [INFO] [stdout] test matrix::tests::calculate_minor_of_3x3_matrix ... ok [INFO] [stdout] test pattern::tests::stripes_with_object_transformation ... ok [INFO] [stdout] test plane::tests::intersect_with_ray_parallel_to_plane ... ok [INFO] [stdout] test matrix::tests::can_make_3x32_matrix ... ok [INFO] [stdout] test plane::tests::ray_intersecting_plane_from_above ... ok [INFO] [stdout] test pattern::tests::stripe_pattern_alternates_in_x ... ok [INFO] [stdout] test pattern::tests::stripe_pattern_is_constant_in_y ... ok [INFO] [stdout] test plane::tests::intersect_with_coplanar_ray ... ok [INFO] [stdout] test plane::tests::ray_intersecting_plane_from_below ... ok [INFO] [stdout] test plane::tests::the_normal_of_a_plane_is_constant_everywhere ... ok [INFO] [stdout] test ray::tests::computing_a_point_from_a_distance ... ok [INFO] [stdout] test ray::tests::creating_and_querying_a_ray ... ok [INFO] [stdout] test intersections::tests::color_when_ray_hits ... ok [INFO] [stdout] test ray::tests::ray_intersects_sphere_at_tangent ... ok [INFO] [stdout] test ray::tests::intersect_sets_the_object_on_the_intersection ... ok [INFO] [stdout] test ray::tests::ray_intersects_sphere_to_two_points ... ok [INFO] [stdout] test ray::tests::intersection_encapsulates_t_value_and_object ... ok [INFO] [stdout] test ray::tests::ray_originates_inside_sphere ... ok [INFO] [stdout] test ray::tests::ray_misses_sphere ... ok [INFO] [stdout] test ray::tests::scaling_a_ray ... ok [INFO] [stdout] test ray::tests::sphere_is_behind_ray ... ok [INFO] [stdout] test ray::tests::aggregating_intersections ... ok [INFO] [stdout] test ray::tests::the_hit_when_all_intersections_have_negative_t_value ... ok [INFO] [stdout] test ray::tests::the_hit_is_always_the_lowest_nonnegative_intersection ... ok [INFO] [stdout] test ray::tests::the_hit_when_all_intersections_have_positive_t_value ... ok [INFO] [stdout] test ray::tests::translating_a_ray ... ok [INFO] [stdout] test ray::tests::the_hit_when_some_intersections_have_negative_t_value ... ok [INFO] [stdout] test sphere::tests::changing_spheres_transform ... ok [INFO] [stdout] test material::tests::lighting_with_pattern_applied ... ok [INFO] [stdout] test sphere::tests::computing_normal_on_translated_sphere ... ok [INFO] [stdout] test material::tests::the_default_material ... ok [INFO] [stdout] test sphere::tests::computing_normal_on_transformed_sphere ... ok [INFO] [stdout] test matrix::tests::calculate_cofactor_of_3x3_matrix ... ok [INFO] [stdout] test matrix::tests::calculate_determinant_of_2x2_matrix ... ok [INFO] [stdout] test sphere::tests::creating_a_sphere ... ok [INFO] [stdout] test canvas::tests::ppm_ends_in_newline ... ok [INFO] [stdout] test shape::tests::the_default_transformation ... ok [INFO] [stdout] test sphere::tests::intersect_scaled_sphere_with_ray ... ok [INFO] [stdout] test light::tests::lighting_with_eye_in_path_of_reflection_vector ... ok [INFO] [stdout] test sphere::tests::a_sphere_has_default_material ... ok [INFO] [stdout] test sphere::tests::intersect_translated_sphere_with_ray ... ok [INFO] [stdout] test sphere::tests::normal_on_a_sphere_at_a_point_on_the_y_axis ... ok [INFO] [stdout] test sphere::tests::normal_on_a_sphere_at_a_point_on_the_x_axis ... ok [INFO] [stdout] test sphere::tests::sphere_may_be_assigned_a_material ... ok [INFO] [stdout] test sphere::tests::spheres_default_transform_is_identity_matrix ... ok [INFO] [stdout] test sphere::tests::the_normal_is_a_normalized_vector ... ok [INFO] [stdout] test transformation::tests::chaining_transformations_in_reverse_sequence ... ok [INFO] [stdout] test transformation::tests::individual_transformations_are_applied_in_sequence ... ok [INFO] [stdout] test transformation::tests::chained_transformation_must_be_applied_in_reverse_order ... ok [INFO] [stdout] test transformation::tests::inverse_of_x_rotation_goes_opposite_direction ... ok [INFO] [stdout] test sphere::tests::normal_on_a_sphere_at_a_non_axial_point ... ok [INFO] [stdout] test sphere::tests::normal_on_a_sphere_at_a_point_on_the_z_axis ... ok [INFO] [stdout] test transformation::tests::rotating_point_around_x_axis ... ok [INFO] [stdout] test transformation::tests::rotating_point_around_y_axis ... ok [INFO] [stdout] test transformation::tests::reflection_is_scaling_by_negative_value ... ok [INFO] [stdout] test transformation::tests::rotating_point_around_z_axis ... ok [INFO] [stdout] test transformation::tests::scaling_matrix_applied_to_vector ... ok [INFO] [stdout] test transformation::tests::shearing_x_in_proportion_to_y ... ok [INFO] [stdout] test transformation::tests::scaling_matrix_applied_to_point ... ok [INFO] [stdout] test transformation::tests::shearing_y_in_proportion_to_x ... ok [INFO] [stdout] test transformation::tests::shearing_x_in_proportion_to_z ... ok [INFO] [stdout] test transformation::tests::shearing_y_in_proportion_to_z ... ok [INFO] [stdout] test transformation::tests::multiplying_by_translation_matrix ... ok [INFO] [stdout] test transformation::tests::shearing_z_in_proportion_to_x ... ok [INFO] [stdout] test transformation::tests::shearing_z_in_proportion_to_y ... ok [INFO] [stdout] test transformation::tests::translation_does_not_affect_vectors ... ok [INFO] [stdout] test tuples::tests::a_tuple_with_w_0_0_is_a_vector ... ok [INFO] [stdout] test tuples::tests::dividing_tuple_by_scalar ... ok [INFO] [stdout] test transformation::tests::multiply_shortcut_translations_right_order ... ok [INFO] [stdout] test transformation::tests::multiply_by_inverse_of_scaling_matrix ... ok [INFO] [stdout] test tuples::tests::dot_product_of_two_vectors ... ok [INFO] [stdout] test tuples::tests::compute_magnitude_of_vector ... ok [INFO] [stdout] test tuples::tests::cross_product_of_two_vectors ... ok [INFO] [stdout] test tuples::tests::a_tuple_with_w_1_0_is_a_point ... ok [INFO] [stdout] test tuples::tests::multiply_tuple_by_scalar ... ok [INFO] [stdout] test transformation::tests::multiplying_by_inverse_of_translation_matrix ... ok [INFO] [stdout] test tuples::tests::subtract_two_points ... ok [INFO] [stdout] test tuples::tests::negate_tuple ... ok [INFO] [stdout] test tuples::tests::multiply_tuple_by_fraction ... ok [INFO] [stdout] test tuples::tests::subtract_two_vectors ... ok [INFO] [stdout] test tuples::tests::normalize_vector ... ok [INFO] [stdout] test tuples::tests::point_creates_tuple_with_w_1_0 ... ok [INFO] [stdout] test tuples::tests::test_point ... ok [INFO] [stdout] test tuples::tests::subtract_vector_from_point ... ok [INFO] [stdout] test world::tests::creating_a_world ... ok [INFO] [stdout] test world::tests::intersect_world_with_ray ... ok [INFO] [stdout] test world::tests::arbitrary_view_transformation ... ok [INFO] [stdout] test world::tests::no_shadow_when_object_behind_light ... ok [INFO] [stdout] test world::tests::no_shadow_when_nothing_colinear_with_point_and_light ... ok [INFO] [stdout] test tuples::tests::subtract_vector_from_zero_vector ... ok [INFO] [stdout] test tuples::tests::test_vector ... ok [INFO] [stdout] test world::tests::view_transformation_matrix_looking_in_positive_z_direction ... ok [INFO] [stdout] test world::tests::view_transformation_moves_the_world ... ok [INFO] [stdout] test world::tests::transformation_matrix_for_default_orientation ... ok [INFO] [stdout] test world::tests::shade_hit_is_given_an_intersection_in_shadow ... ok [INFO] [stdout] test world::tests::shadow_when_object_between_point_and_light ... ok [INFO] [stdout] test world::tests::the_default_world ... ok [INFO] [stdout] test tuples::tests::reflect_vector_off_slanted_surface ... ok [INFO] [stdout] test world::tests::no_shadow_when_object_behind_point ... ok [INFO] [stdout] test tuples::tests::adding_two_points_should_fail ... ok [INFO] [stdout] test tuples::tests::adding_two_tuples ... ok [INFO] [stdout] test tuples::tests::reflect_vector_approaching_at_45_degrees ... ok [INFO] [stderr] Running unittests src/bin/chapter_01.rs (/opt/rustwide/target/debug/deps/chapter_01-9c067850104d2df8) [INFO] [stdout] test tuples::tests::vector_creates_tuple_with_w_0_0 ... ok [INFO] [stdout] test computation::tests::the_hit_when_intersection_occurs_inside ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 154 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s [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] [stderr] Running unittests src/bin/chapter_02.rs (/opt/rustwide/target/debug/deps/chapter_02-8b81daa30a6efd6f) [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] [stderr] Running unittests src/bin/chapter_04.rs (/opt/rustwide/target/debug/deps/chapter_04-b71eb26b8af89ebe) [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] [stderr] Running unittests src/bin/chapter_05.rs (/opt/rustwide/target/debug/deps/chapter_05-0b4231e3c0a30ccd) [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] [stderr] Running unittests src/bin/chapter_06.rs (/opt/rustwide/target/debug/deps/chapter_06-6218e10c7e7e5dd4) [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] [stderr] Running unittests src/bin/chapter_06_par.rs (/opt/rustwide/target/debug/deps/chapter_06_par-8d281fb39610d03b) [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] [stderr] Running unittests src/bin/chapter_07.rs (/opt/rustwide/target/debug/deps/chapter_07-d69907fdbf2808d5) [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] [stderr] Running unittests src/bin/chapter_08.rs (/opt/rustwide/target/debug/deps/chapter_08-97be8a2fd22dcf50) [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] [stderr] Running unittests src/bin/chapter_09.rs (/opt/rustwide/target/debug/deps/chapter_09-dc2f569b79122fbd) [INFO] [stderr] Doc-tests rtc_rs [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] [stdout] [INFO] [stdout] running 1 test [INFO] [stdout] test src/util.rs - util::image_dimensions (line 25) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.27s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "1f2c9abc98fd2d904ac9b9e1b77023ec78137bd4d279cabf70dde1355926cb1c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1f2c9abc98fd2d904ac9b9e1b77023ec78137bd4d279cabf70dde1355926cb1c", kill_on_drop: false }` [INFO] [stdout] 1f2c9abc98fd2d904ac9b9e1b77023ec78137bd4d279cabf70dde1355926cb1c