[INFO] cloning repository https://github.com/artran/ray-tracer [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/artran/ray-tracer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fartran%2Fray-tracer", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fartran%2Fray-tracer'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 26a6e8c00d5326549c63ee1ee7fc5a5c142131fd [INFO] testing artran/ray-tracer against 1.59.0 for beta-1.60-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fartran%2Fray-tracer" "/workspace/builds/worker-0/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/artran/ray-tracer on toolchain 1.59.0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.59.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/artran/ray-tracer [INFO] finished tweaking git repo https://github.com/artran/ray-tracer [INFO] tweaked toml for git repo https://github.com/artran/ray-tracer written to /workspace/builds/worker-0/source/Cargo.toml [INFO] crate git repo https://github.com/artran/ray-tracer already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+1.59.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+1.59.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 313a6e40d7299b67fdfdf62d7103459cd7864ab19e17773282e399a5e0d5bcb6 [INFO] running `Command { std: "docker" "start" "-a" "313a6e40d7299b67fdfdf62d7103459cd7864ab19e17773282e399a5e0d5bcb6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "313a6e40d7299b67fdfdf62d7103459cd7864ab19e17773282e399a5e0d5bcb6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "313a6e40d7299b67fdfdf62d7103459cd7864ab19e17773282e399a5e0d5bcb6", kill_on_drop: false }` [INFO] [stdout] 313a6e40d7299b67fdfdf62d7103459cd7864ab19e17773282e399a5e0d5bcb6 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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" "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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+1.59.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d073644497ca19d282b805732bee0914c44a53bf382914fd8763ff4bd2b8e98a [INFO] running `Command { std: "docker" "start" "-a" "d073644497ca19d282b805732bee0914c44a53bf382914fd8763ff4bd2b8e98a", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.0.1 [INFO] [stderr] Compiling typenum v1.13.0 [INFO] [stderr] Compiling paste v1.0.5 [INFO] [stderr] Compiling rawpointer v0.2.1 [INFO] [stderr] Compiling matrixmultiply v0.3.1 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Compiling num-integer v0.1.44 [INFO] [stderr] Compiling num-rational v0.3.2 [INFO] [stderr] Compiling num-complex v0.3.1 [INFO] [stderr] Compiling approx v0.4.0 [INFO] [stderr] Compiling simba v0.4.0 [INFO] [stderr] Compiling nalgebra v0.26.2 [INFO] [stderr] Compiling ray-tracer v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: associated function is never used: `pixel_at` [INFO] [stdout] --> src/canvas.rs:26:12 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn pixel_at(&self, x: usize, y: usize) -> Color { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `len` [INFO] [stdout] --> src/intersection.rs:77:12 [INFO] [stdout] | [INFO] [stdout] 77 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/light.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | pub fn new(position: Vector4, intensity: Color) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `with_ambient` [INFO] [stdout] --> src/material.rs:72:12 [INFO] [stdout] | [INFO] [stdout] 72 | pub fn with_ambient(mut self, ambient: f32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `with_shininess` [INFO] [stdout] --> src/material.rs:90:12 [INFO] [stdout] | [INFO] [stdout] 90 | pub fn with_shininess(mut self, shininess: f32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `with_light_source` [INFO] [stdout] --> src/world.rs:79:12 [INFO] [stdout] | [INFO] [stdout] 79 | pub fn with_light_source(mut self, light_source: PointLight) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 6 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 37.33s [INFO] running `Command { std: "docker" "inspect" "d073644497ca19d282b805732bee0914c44a53bf382914fd8763ff4bd2b8e98a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d073644497ca19d282b805732bee0914c44a53bf382914fd8763ff4bd2b8e98a", kill_on_drop: false }` [INFO] [stdout] d073644497ca19d282b805732bee0914c44a53bf382914fd8763ff4bd2b8e98a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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" "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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+1.59.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 11b95b5280b45f6a8227607f5c133a5253f236dc51952a624f058f511112cf2e [INFO] running `Command { std: "docker" "start" "-a" "11b95b5280b45f6a8227607f5c133a5253f236dc51952a624f058f511112cf2e", kill_on_drop: false }` [INFO] [stderr] Compiling ucd-trie v0.1.3 [INFO] [stderr] Compiling libc v0.2.94 [INFO] [stderr] Compiling proc-macro2 v1.0.27 [INFO] [stderr] Compiling rustc-serialize v0.3.24 [INFO] [stderr] Compiling unicode-xid v0.2.2 [INFO] [stderr] Compiling syn v1.0.73 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling num-iter v0.1.42 [INFO] [stderr] Compiling pest v2.1.3 [INFO] [stderr] Compiling quote v1.0.9 [INFO] [stderr] Compiling semver-parser v0.10.2 [INFO] [stderr] Compiling rand v0.4.6 [INFO] [stderr] Compiling num-complex v0.1.43 [INFO] [stderr] Compiling semver v0.11.0 [INFO] [stderr] Compiling num-bigint v0.1.44 [INFO] [stderr] Compiling rustc_version v0.3.3 [INFO] [stderr] Compiling rstest v0.10.0 [INFO] [stderr] Compiling num-rational v0.1.42 [INFO] [stderr] Compiling num v0.1.42 [INFO] [stderr] Compiling spectral v0.6.0 [INFO] [stderr] Compiling ray-tracer v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: associated function is never used: `with_shininess` [INFO] [stdout] --> src/material.rs:90:12 [INFO] [stdout] | [INFO] [stdout] 90 | pub fn with_shininess(mut self, shininess: f32) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 10.87s [INFO] running `Command { std: "docker" "inspect" "11b95b5280b45f6a8227607f5c133a5253f236dc51952a624f058f511112cf2e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "11b95b5280b45f6a8227607f5c133a5253f236dc51952a624f058f511112cf2e", kill_on_drop: false }` [INFO] [stdout] 11b95b5280b45f6a8227607f5c133a5253f236dc51952a624f058f511112cf2e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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" "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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+1.59.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 1a225c639f1553d2229576aa37b1e0d8de284bf85dd3cdf58ea8deb2d6e35605 [INFO] running `Command { std: "docker" "start" "-a" "1a225c639f1553d2229576aa37b1e0d8de284bf85dd3cdf58ea8deb2d6e35605", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] warning: associated function is never used: `with_shininess` [INFO] [stderr] --> src/material.rs:90:12 [INFO] [stderr] | [INFO] [stderr] 90 | pub fn with_shininess(mut self, shininess: f32) -> Self { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `ray-tracer` (bin "ray-tracer" test) generated 1 warning [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 2m 45s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/ray_tracer-81c0f5962921af6e) [INFO] [stdout] [INFO] [stdout] running 148 tests [INFO] [stdout] test camera::tests::constructing_a_ray_through_the_center_of_the_canvas ... ok [INFO] [stdout] test camera::tests::constructing_a_ray_through_a_corner_of_the_canvas ... ok [INFO] [stdout] test camera::tests::the_pixel_size_for_a_horizontal_canvas ... ok [INFO] [stdout] test camera::tests::constructing_a_camera ... ok [INFO] [stdout] test canvas::tests::new_canvas_has_width ... ok [INFO] [stdout] test camera::tests::the_pixel_size_for_a_vertical_canvas ... ok [INFO] [stdout] test canvas::tests::new_canvas_is_black ... ok [INFO] [stdout] test canvas::tests::pixels_can_be_read_from ... ok [INFO] [stdout] test canvas::tests::new_canvas_has_height ... ok [INFO] [stdout] test canvas::tests::pixels_can_be_written_to ... ok [INFO] [stdout] test canvas::tests::saved_canvas_has_correct_image_data ... ok [INFO] [stdout] test canvas::tests::saved_canvas_ends_with_newline_character ... ok [INFO] [stdout] test canvas::tests::saved_canvas_has_correct_magic ... ok [INFO] [stdout] test canvas::tests::saved_canvas_has_correct_lines_less_than_70_chars ... ok [INFO] [stdout] test color::tests::adding_colours ... ok [INFO] [stdout] test color::tests::displaying_colours ... ok [INFO] [stdout] test color::tests::displaying_colours_clamps_to_zero_or_255 ... ok [INFO] [stdout] test canvas::tests::saved_canvas_has_correct_width_and_height ... ok [INFO] [stdout] test color::tests::multiplying_colours ... ok [INFO] [stdout] test color::tests::scaling_colours ... ok [INFO] [stdout] test color::tests::subtracting_colours ... ok [INFO] [stdout] test intersection::tests::an_intersection_encapsulates_t_and_object ... ok [INFO] [stdout] test intersection::tests::aggregating_intersections ... ok [INFO] [stdout] test intersection::tests::precomputing_the_state_of_an_intersection ... ok [INFO] [stdout] test intersection::tests::the_hit_is_always_the_lowest_nonnegative_intersection ... ok [INFO] [stdout] test intersection::tests::the_hit_should_offset_the_point ... ok [INFO] [stdout] test intersection::tests::the_hit_when_all_intersections_have_negative_t ... ok [INFO] [stdout] test intersection::tests::the_hit_when_all_intersections_have_positive_t ... ok [INFO] [stdout] test intersection::tests::the_hit_when_an_intersection_occurs_on_the_inside ... ok [INFO] [stdout] test intersection::tests::the_hit_when_an_intersection_occurs_on_the_outside ... ok [INFO] [stdout] test light::tests::a_point_light_has_a_position_and_intensity ... ok [INFO] [stdout] test intersection::tests::the_hit_when_some_intersections_have_negative_t ... ok [INFO] [stdout] test material::tests::lighting_with_eye_opposite_surface_light_offset_45_deg ... ok [INFO] [stdout] test material::tests::lighting_with_eye_in_the_path_of_the_reflection_vector ... ok [INFO] [stdout] test material::tests::lighting_with_the_eye_between_light_and_surface_eye_offset_45_deg ... ok [INFO] [stdout] test material::tests::lighting_with_the_eye_between_the_light_and_the_surface ... ok [INFO] [stdout] test camera::tests::rendering_a_world_with_a_camera ... ok [INFO] [stdout] test material::tests::lighting_with_the_surface_in_shadow ... ok [INFO] [stdout] test material::tests::lighting_with_the_light_behind_the_surface ... ok [INFO] [stdout] test material::tests::the_default_material ... ok [INFO] [stdout] test matrix::tests::calculating_the_determinant_of_2x2_matrix ... ok [INFO] [stdout] test matrix::tests::calculating_the_determinant_of_a_3x3_matrix ... ok [INFO] [stdout] test matrix::tests::calculating_the_determinant_of_a_4x4_matrix ... ok [INFO] [stdout] test matrix::tests::calculating_the_inverse_of_a_third_matrix ... ok [INFO] [stdout] test matrix::tests::calculating_the_inverse_of_another_matrix ... ok [INFO] [stdout] test matrix::tests::matrices_constructed_from_rows ... ok [INFO] [stdout] test matrix::tests::calculating_the_inverse_of_a_matrix ... ok [INFO] [stdout] test matrix::tests::matrices_indexed_by_row_col ... ok [INFO] [stdout] test matrix::tests::matrices_with_the_different_values_are_not_equal ... ok [INFO] [stdout] test matrix::tests::matrices_with_the_same_values_are_equal ... ok [INFO] [stdout] test matrix::tests::multiplying_a_product_by_its_inverse ... ok [INFO] [stdout] test matrix::tests::multiplying_identity_matrix_by_a_tuple ... ok [INFO] [stdout] test matrix::tests::multiplying_matrices ... ok [INFO] [stdout] test matrix::tests::multiplying_matrices_by_tuples ... ok [INFO] [stdout] test matrix::tests::multiplying_matrix_by_the_identity_matrix ... ok [INFO] [stdout] test matrix::tests::testing_a_noninvertible_matrix_for_invertibility ... ok [INFO] [stdout] test matrix::tests::transposing_a_matrix ... ok [INFO] [stdout] test matrix::tests::testing_an_invertible_matrix_for_invertibility ... ok [INFO] [stdout] test matrix::tests::transposing_the_identity_matrix_return_identity ... 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 ray::tests::scaling_a_ray ... ok [INFO] [stdout] test ray::tests::translating_a_ray ... ok [INFO] [stdout] test sphere::tests::a_ray_intersects_a_sphere_at_two_points ... ok [INFO] [stdout] test sphere::tests::a_ray_misses_a_sphere ... ok [INFO] [stdout] test sphere::tests::a_ray_originates_inside_a_sphere ... ok [INFO] [stdout] test sphere::tests::a_ray_intersects_a_sphere_at_a_tangent ... ok [INFO] [stdout] test sphere::tests::a_sphere_has_a_default_material ... ok [INFO] [stdout] test sphere::tests::a_sphere_may_be_assigned_a_material ... ok [INFO] [stdout] test sphere::tests::a_sphere_is_behind_a_ray ... ok [INFO] [stdout] test sphere::tests::changing_a_spheres_transformation ... ok [INFO] [stdout] test sphere::tests::intersecting_a_translated_sphere_with_a_ray ... ok [INFO] [stdout] test sphere::tests::computing_the_normal_on_a_transformed_sphere ... ok [INFO] [stdout] test sphere::tests::the_normal_on_a_sphere_at_a_non_axial_point ... ok [INFO] [stdout] test sphere::tests::intersecting_a_scaled_sphere_with_a_ray ... ok [INFO] [stdout] test sphere::tests::the_normal_on_a_sphere_at_a_point_on_the_x_axis ... ok [INFO] [stdout] test sphere::tests::a_spheres_default_transformation ... ok [INFO] [stdout] test sphere::tests::the_normal_on_a_sphere_at_a_point_on_the_z_axis ... ok [INFO] [stdout] test transform::tests::a_shearing_transformation_moves_x_in_proportion_to_y ... ok [INFO] [stdout] test sphere::tests::the_normal_is_a_normalized_vector ... ok [INFO] [stdout] test transform::tests::a_shearing_transformation_moves_x_in_proportion_to_z ... ok [INFO] [stdout] test sphere::tests::computing_the_normal_on_a_translated_sphere ... ok [INFO] [stdout] test transform::tests::a_shearing_transformation_moves_z_in_proportion_to_x ... ok [INFO] [stdout] test transform::tests::a_shearing_transformation_moves_y_in_proportion_to_x ... ok [INFO] [stdout] test transform::tests::a_shearing_transformation_moves_z_in_proportion_to_y ... ok [INFO] [stdout] test sphere::tests::the_normal_on_a_sphere_at_a_point_on_the_y_axis ... ok [INFO] [stdout] test transform::tests::an_arbitrary_view_transformation ... ok [INFO] [stdout] test transform::tests::chained_transformations_must_be_applied_in_reverse_order ... ok [INFO] [stdout] test transform::tests::a_view_transformation_matrix_looking_in_positive_z_direction ... ok [INFO] [stdout] test transform::tests::a_shearing_transformation_moves_y_in_proportion_to_z ... ok [INFO] [stdout] test transform::tests::multiplying_by_a_translation_matrix ... ok [INFO] [stdout] test transform::tests::individual_transformations_are_applied_in_sequence ... ok [INFO] [stdout] test transform::tests::rotating_a_point_around_the_x_axis ... ok [INFO] [stdout] test transform::tests::multiplying_by_the_inverse_of_a_translation_matrix ... ok [INFO] [stdout] test transform::tests::reflection_is_scaling_by_a_negative_value ... ok [INFO] [stdout] test transform::tests::scaling_matrix_applied_to_a_point ... ok [INFO] [stdout] test transform::tests::the_transformation_matrix_for_the_default_orientation ... ok [INFO] [stdout] test transform::tests::the_view_transformation_moves_the_world ... ok [INFO] [stdout] test transform::tests::translation_does_not_affect_vectors ... ok [INFO] [stdout] test transform::tests::rotating_a_point_around_the_z_axis ... ok [INFO] [stdout] test tuple::tests::adding_a_vector_to_a_point_returns_a_new_point ... ok [INFO] [stdout] test tuple::tests::cross_product_of_two_vectors_is_not_commutative ... ok [INFO] [stdout] test transform::tests::multiplying_by_the_inverse_of_a_scaling_matrix ... ok [INFO] [stdout] test tuple::tests::cross_product_of_two_vectors_is_vector ... ok [INFO] [stdout] test tuple::tests::multiplying_a_tuple_by_scalar_scales_the_tuple ... ok [INFO] [stdout] test transform::tests::scaling_matrix_applied_to_a_vector ... ok [INFO] [stdout] test transform::tests::rotating_a_point_around_the_y_axis ... ok [INFO] [stdout] test tuple::tests::negative_vector_has_positive_magnitude ... ok [INFO] [stdout] test tuple::tests::normalized_vector_is_a_unit_vector ... ok [INFO] [stdout] test tuple::tests::normalizing_vector_returns_unit_vector_same_direction ... ok [INFO] [stdout] test tuple::tests::dot_product_of_two_vectors_is_scalar ... ok [INFO] [stdout] test tuple::tests::point_has_three_coordinates ... ok [INFO] [stdout] test tuple::tests::normalizing_vector_returns_unit_vector_same_direction2 ... ok [INFO] [stdout] test tuple::tests::multiplying_a_tuple_by_fraction_scales_the_tuple ... ok [INFO] [stdout] test transform::tests::the_inverse_of_an_x_rotation_rotates_in_the_opposite_direction ... ok [INFO] [stdout] test tuple::tests::negating_a_tuple_returns_the_negative_tuple ... ok [INFO] [stdout] test tuple::tests::negating_a_vector_returns_the_negative_vector ... ok [INFO] [stdout] test tuple::tests::point_has_w_of_1 ... ok [INFO] [stdout] test tuple::tests::point_returns_true_for_is_point_false_for_is_vector ... ok [INFO] [stdout] test tuple::tests::reflecting_a_vector_approaching_at_45_deg ... ok [INFO] [stdout] test tuple::tests::subtracting_a_vector_from_a_point_returns_a_new_point ... ok [INFO] [stdout] test tuple::tests::reflecting_a_vector_off_a_slanted_surface ... ok [INFO] [stdout] test tuple::tests::tuple_can_be_indexed ... ok [INFO] [stdout] test tuple::tests::tuple_can_be_indexed_mutably ... ok [INFO] [stdout] test tuple::tests::subtracting_two_points_returns_a_vector ... ok [INFO] [stdout] test tuple::tests::tuple_returns_false_for_is_vector_false_for_is_point ... ok [INFO] [stdout] test tuple::tests::unit_vector_y_has_magnitude_of_1 ... ok [INFO] [stdout] test tuple::tests::unit_vector_z_has_magnitude_of_1 ... ok [INFO] [stdout] test tuple::tests::unit_vector_x_has_magnitude_of_1 ... ok [INFO] [stdout] test tuple::tests::vector_has_three_coordinates ... ok [INFO] [stdout] test tuple::tests::vector_has_w_of_0 ... ok [INFO] [stdout] test tuple::tests::vector_returns_true_for_is_vector_false_for_is_point ... ok [INFO] [stdout] test world::tests::creating_a_world ... ok [INFO] [stdout] test world::tests::shade_hit_is_given_an_intersection_in_shadow ... ok [INFO] [stdout] test tuple::tests::vector_has_magnitude ... ok [INFO] [stdout] test world::tests::test_is_shadowed::case_1 ... ok [INFO] [stdout] test world::tests::test_is_shadowed::case_3 ... ok [INFO] [stdout] test world::tests::shading_an_intersection ... ok [INFO] [stdout] test world::tests::shading_an_intersection_from_the_inside ... ok [INFO] [stdout] test world::tests::test_is_shadowed::case_4 ... ok [INFO] [stdout] test world::tests::the_color_when_a_ray_misses ... ok [INFO] [stdout] test world::tests::the_color_when_a_ray_hits ... ok [INFO] [stdout] test world::tests::the_color_with_an_intersection_behind_the_ray ... ok [INFO] [stdout] test world::tests::test_is_shadowed::case_2 ... ok [INFO] [stdout] test world::tests::intersect_a_world_with_a_ray ... ok [INFO] [stdout] test camera::tests::constructing_a_ray_when_the_camera_is_transformed ... FAILED [INFO] [stdout] test ray::tests::passing_a_point_for_direction_causes_panic - should panic ... ok [INFO] [stdout] test ray::tests::passing_a_vector_for_origin_causes_panic - should panic ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- camera::tests::constructing_a_ray_when_the_camera_is_transformed stdout ---- [INFO] [stdout] thread 'camera::tests::constructing_a_ray_when_the_camera_is_transformed' panicked at ' [INFO] [stdout] expected: [INFO] [stdout] but was:  [INFO] [stdout] [INFO] [stdout] at location: src/camera.rs:223 [INFO] [stdout] ', /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/spectral-0.6.0/src/lib.rs:343:9 [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x55d29ea2a9bc - std::backtrace_rs::backtrace::libunwind::trace::h91c465e73bf6c785 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 [INFO] [stdout] 1: 0x55d29ea2a9bc - std::backtrace_rs::backtrace::trace_unsynchronized::hae9da36f5d58b5f3 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 [INFO] [stdout] 2: 0x55d29ea2a9bc - std::sys_common::backtrace::_print_fmt::h7f499fa126a7effb [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:67:5 [INFO] [stdout] 3: 0x55d29ea2a9bc - ::fmt::h3e2b509ce2ce6007 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:46:22 [INFO] [stdout] 4: 0x55d29ea50fdc - core::fmt::write::h753c7571fa063ecb [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/fmt/mod.rs:1168:17 [INFO] [stdout] 5: 0x55d29ea25c23 - std::io::Write::write_fmt::hb649ab67f71b6655 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/io/mod.rs:1660:15 [INFO] [stdout] 6: 0x55d29ea2d092 - std::sys_common::backtrace::_print::h64941a6fc8b0ed9b [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:49:5 [INFO] [stdout] 7: 0x55d29ea2d092 - std::sys_common::backtrace::print::hcf25e43e1a9b0766 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:36:9 [INFO] [stdout] 8: 0x55d29ea2d092 - std::panicking::default_hook::{{closure}}::h78d3e6cf97fc623d [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:211:50 [INFO] [stdout] 9: 0x55d29ea2cce1 - std::panicking::default_hook::hda898f8d3ad1a5ae [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:225:9 [INFO] [stdout] 10: 0x55d29ea2d6e3 - std::panicking::rust_panic_with_hook::h1a5ea2d6c23051aa [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:606:17 [INFO] [stdout] 11: 0x55d29e9d669f - std::panicking::begin_panic::{{closure}}::h9c66c86955460786 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:526:9 [INFO] [stdout] 12: 0x55d29e9d6d3f - std::sys_common::backtrace::__rust_end_short_backtrace::h206c3dd7322312c9 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:139:18 [INFO] [stdout] 13: 0x55d29e9d6608 - std::panicking::begin_panic::hf6128656a08e9c05 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:525:12 [INFO] [stdout] 14: 0x55d29e9248e5 - spectral::AssertionFailure::fail::h787dd562cd8a22eb [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/spectral-0.6.0/src/lib.rs:343:9 [INFO] [stdout] 15: 0x55d29e92fc04 - spectral::Spec::is_equal_to::h5b695cfd61c69b86 [INFO] [stdout] at /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/spectral-0.6.0/src/lib.rs:428:13 [INFO] [stdout] 16: 0x55d29e98493a - ray_tracer::camera::tests::constructing_a_ray_when_the_camera_is_transformed::h7eefec3ec5b54a58 [INFO] [stdout] at /opt/rustwide/workdir/src/camera.rs:223:9 [INFO] [stdout] 17: 0x55d29e9845ca - ray_tracer::camera::tests::constructing_a_ray_when_the_camera_is_transformed::{{closure}}::h7c13ec3c0ed26580 [INFO] [stdout] at /opt/rustwide/workdir/src/camera.rs:213:5 [INFO] [stdout] 18: 0x55d29e9604fe - core::ops::function::FnOnce::call_once::h7d47b39f43ba5241 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 19: 0x55d29e9c6a43 - core::ops::function::FnOnce::call_once::h1845a80638abc06e [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 20: 0x55d29e9c6a43 - test::__rust_begin_short_backtrace::h4f56ccea01b9889f [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/test/src/lib.rs:574:5 [INFO] [stdout] 21: 0x55d29e9c572f - as core::ops::function::FnOnce>::call_once::h5afedf14a39ffa74 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/alloc/src/boxed.rs:1854:9 [INFO] [stdout] 22: 0x55d29e9c572f - as core::ops::function::FnOnce<()>>::call_once::hd5aaa1b551e9ce71 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 23: 0x55d29e9c572f - std::panicking::try::do_call::h316eebee63f96d32 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:406:40 [INFO] [stdout] 24: 0x55d29e9c572f - std::panicking::try::h662e31e84dd7ce52 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:370:19 [INFO] [stdout] 25: 0x55d29e9c572f - std::panic::catch_unwind::h129c1b23f076663f [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panic.rs:133:14 [INFO] [stdout] 26: 0x55d29e9c572f - test::run_test_in_process::h51d800d572f878ef [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/test/src/lib.rs:597:18 [INFO] [stdout] 27: 0x55d29e9c572f - test::run_test::run_test_inner::{{closure}}::h71a47db430260854 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/test/src/lib.rs:491:39 [INFO] [stdout] 28: 0x55d29e9ceaf1 - test::run_test::run_test_inner::{{closure}}::h02edd5b3e2dab52a [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/test/src/lib.rs:518:37 [INFO] [stdout] 29: 0x55d29e9ceaf1 - std::sys_common::backtrace::__rust_begin_short_backtrace::h0838cfc8b0e995ec [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys_common/backtrace.rs:123:18 [INFO] [stdout] 30: 0x55d29e99b57f - std::thread::Builder::spawn_unchecked::{{closure}}::{{closure}}::h4c2725d7078043cd [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/thread/mod.rs:477:17 [INFO] [stdout] 31: 0x55d29e99b57f - as core::ops::function::FnOnce<()>>::call_once::hdf1aa612eed87270 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/panic/unwind_safe.rs:271:9 [INFO] [stdout] 32: 0x55d29e99b57f - std::panicking::try::do_call::hc72f8de3706d18d6 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:406:40 [INFO] [stdout] 33: 0x55d29e99b57f - std::panicking::try::h63f01f54dbd0fb87 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panicking.rs:370:19 [INFO] [stdout] 34: 0x55d29e99b57f - std::panic::catch_unwind::h58bc464ae9b26453 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/panic.rs:133:14 [INFO] [stdout] 35: 0x55d29e99b57f - std::thread::Builder::spawn_unchecked::{{closure}}::h6c065e19513e33e3 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/thread/mod.rs:476:30 [INFO] [stdout] 36: 0x55d29e99b57f - core::ops::function::FnOnce::call_once{{vtable.shim}}::hd143450c74f35c32 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/core/src/ops/function.rs:227:5 [INFO] [stdout] 37: 0x55d29ea33293 - as core::ops::function::FnOnce>::call_once::h49b6c7c5155a2296 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/alloc/src/boxed.rs:1854:9 [INFO] [stdout] 38: 0x55d29ea33293 - as core::ops::function::FnOnce>::call_once::ha8b5234bfeb15105 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/alloc/src/boxed.rs:1854:9 [INFO] [stdout] 39: 0x55d29ea33293 - std::sys::unix::thread::Thread::new::thread_start::h6f207dd842d64859 [INFO] [stdout] at /rustc/9d1b2106e23b1abd32fce1f17267604a5102f57a/library/std/src/sys/unix/thread.rs:108:17 [INFO] [stdout] 40: 0x7f6843caa609 - start_thread [INFO] [stdout] 41: 0x7f6843a7c293 - clone [INFO] [stdout] 42: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] camera::tests::constructing_a_ray_when_the_camera_is_transformed [INFO] [stdout] [INFO] [stdout] test result: FAILED. 147 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass '--bin ray-tracer' [INFO] running `Command { std: "docker" "inspect" "1a225c639f1553d2229576aa37b1e0d8de284bf85dd3cdf58ea8deb2d6e35605", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1a225c639f1553d2229576aa37b1e0d8de284bf85dd3cdf58ea8deb2d6e35605", kill_on_drop: false }` [INFO] [stdout] 1a225c639f1553d2229576aa37b1e0d8de284bf85dd3cdf58ea8deb2d6e35605