[INFO] cloning repository https://github.com/cdriehuys/raytracer
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/cdriehuys/raytracer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcdriehuys%2Fraytracer", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcdriehuys%2Fraytracer'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 7b0e67003d172f1b3ea571b39db133f3926a277a
[INFO] testing cdriehuys/raytracer against beta-2021-08-01 for beta-1.55-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcdriehuys%2Fraytracer" "/workspace/builds/worker-91/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-91/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/cdriehuys/raytracer on toolchain beta-2021-08-01
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-08-01" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/cdriehuys/raytracer
[INFO] finished tweaking git repo https://github.com/cdriehuys/raytracer
[INFO] tweaked toml for git repo https://github.com/cdriehuys/raytracer written to /workspace/builds/worker-91/source/Cargo.toml
[INFO] crate git repo https://github.com/cdriehuys/raytracer already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2021-08-01" "fetch" "--manifest-path" "Cargo.toml", 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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-91/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-91/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2d6a494d204cdb24dcc5744b3aee64196ad5364f29a84363fe9256776c2bd334
[INFO] running `Command { std: "docker" "start" "-a" "2d6a494d204cdb24dcc5744b3aee64196ad5364f29a84363fe9256776c2bd334", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2d6a494d204cdb24dcc5744b3aee64196ad5364f29a84363fe9256776c2bd334", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2d6a494d204cdb24dcc5744b3aee64196ad5364f29a84363fe9256776c2bd334", kill_on_drop: false }`
[INFO] [stdout] 2d6a494d204cdb24dcc5744b3aee64196ad5364f29a84363fe9256776c2bd334
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-91/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-91/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 28ae8ff32fb00c66c64aa0be0a2ec38fd17a038496dbfc3f03c13c9dd0afae62
[INFO] running `Command { std: "docker" "start" "-a" "28ae8ff32fb00c66c64aa0be0a2ec38fd17a038496dbfc3f03c13c9dd0afae62", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling float-cmp v0.8.0
[INFO] [stderr]    Compiling raytracer v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 1m 25s
[INFO] running `Command { std: "docker" "inspect" "28ae8ff32fb00c66c64aa0be0a2ec38fd17a038496dbfc3f03c13c9dd0afae62", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "28ae8ff32fb00c66c64aa0be0a2ec38fd17a038496dbfc3f03c13c9dd0afae62", kill_on_drop: false }`
[INFO] [stdout] 28ae8ff32fb00c66c64aa0be0a2ec38fd17a038496dbfc3f03c13c9dd0afae62
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-91/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-91/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0596c28923565dc511347eeac52f1de843d56543a2f4c02fb69dc1464b229efb
[INFO] running `Command { std: "docker" "start" "-a" "0596c28923565dc511347eeac52f1de843d56543a2f4c02fb69dc1464b229efb", kill_on_drop: false }`
[INFO] [stderr]    Compiling raytracer v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> tests/canvas_renderer_tests.rs:10:28
[INFO] [stdout]    |
[INFO] [stdout] 10 |         Err(err) => panic!(err),
[INFO] [stdout]    |                            ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stdout]    = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to Display the message
[INFO] [stdout]    |
[INFO] [stdout] 10 |         Err(err) => panic!("{}", err),
[INFO] [stdout]    |                            ^^^^^
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 10 |         Err(err) => std::panic::panic_any(err),
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> tests/canvas_renderer_tests.rs:47:28
[INFO] [stdout]    |
[INFO] [stdout] 47 |         Err(err) => panic!(err),
[INFO] [stdout]    |                            ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to Display the message
[INFO] [stdout]    |
[INFO] [stdout] 47 |         Err(err) => panic!("{}", err),
[INFO] [stdout]    |                            ^^^^^
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 47 |         Err(err) => std::panic::panic_any(err),
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]   --> tests/canvas_renderer_tests.rs:81:28
[INFO] [stdout]    |
[INFO] [stdout] 81 |         Err(err) => panic!(err),
[INFO] [stdout]    |                            ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to Display the message
[INFO] [stdout]    |
[INFO] [stdout] 81 |         Err(err) => panic!("{}", err),
[INFO] [stdout]    |                            ^^^^^
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]    |
[INFO] [stdout] 81 |         Err(err) => std::panic::panic_any(err),
[INFO] [stdout]    |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> tests/canvas_renderer_tests.rs:101:28
[INFO] [stdout]     |
[INFO] [stdout] 101 |         Err(err) => panic!(err),
[INFO] [stdout]     |                            ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout] help: add a "{}" format string to Display the message
[INFO] [stdout]     |
[INFO] [stdout] 101 |         Err(err) => panic!("{}", err),
[INFO] [stdout]     |                            ^^^^^
[INFO] [stdout] help: or use std::panic::panic_any instead
[INFO] [stdout]     |
[INFO] [stdout] 101 |         Err(err) => std::panic::panic_any(err),
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.91s
[INFO] running `Command { std: "docker" "inspect" "0596c28923565dc511347eeac52f1de843d56543a2f4c02fb69dc1464b229efb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0596c28923565dc511347eeac52f1de843d56543a2f4c02fb69dc1464b229efb", kill_on_drop: false }`
[INFO] [stdout] 0596c28923565dc511347eeac52f1de843d56543a2f4c02fb69dc1464b229efb
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-91/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-91/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:34b6a614d2c27851fe6cbf88fbd1137609cefab8b10d0615aaeb6fd47975d74e" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2021-08-01" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] c6aff282759e4a8cd6d6ba7c001700bbb350ccf2c2883e4488c156fb4b615f82
[INFO] running `Command { std: "docker" "start" "-a" "c6aff282759e4a8cd6d6ba7c001700bbb350ccf2c2883e4488c156fb4b615f82", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> tests/canvas_renderer_tests.rs:10:28
[INFO] [stderr]    |
[INFO] [stderr] 10 |         Err(err) => panic!(err),
[INFO] [stderr]    |                            ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(non_fmt_panics)]` on by default
[INFO] [stderr]    = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to Display the message
[INFO] [stderr]    |
[INFO] [stderr] 10 |         Err(err) => panic!("{}", err),
[INFO] [stderr]    |                            ^^^^^
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 10 |         Err(err) => std::panic::panic_any(err),
[INFO] [stderr]    |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> tests/canvas_renderer_tests.rs:47:28
[INFO] [stderr]    |
[INFO] [stderr] 47 |         Err(err) => panic!(err),
[INFO] [stderr]    |                            ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to Display the message
[INFO] [stderr]    |
[INFO] [stderr] 47 |         Err(err) => panic!("{}", err),
[INFO] [stderr]    |                            ^^^^^
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 47 |         Err(err) => std::panic::panic_any(err),
[INFO] [stderr]    |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]   --> tests/canvas_renderer_tests.rs:81:28
[INFO] [stderr]    |
[INFO] [stderr] 81 |         Err(err) => panic!(err),
[INFO] [stderr]    |                            ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to Display the message
[INFO] [stderr]    |
[INFO] [stderr] 81 |         Err(err) => panic!("{}", err),
[INFO] [stderr]    |                            ^^^^^
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]    |
[INFO] [stderr] 81 |         Err(err) => std::panic::panic_any(err),
[INFO] [stderr]    |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: panic message is not a string literal
[INFO] [stderr]    --> tests/canvas_renderer_tests.rs:101:28
[INFO] [stderr]     |
[INFO] [stderr] 101 |         Err(err) => panic!(err),
[INFO] [stderr]     |                            ^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stderr] help: add a "{}" format string to Display the message
[INFO] [stderr]     |
[INFO] [stderr] 101 |         Err(err) => panic!("{}", err),
[INFO] [stderr]     |                            ^^^^^
[INFO] [stderr] help: or use std::panic::panic_any instead
[INFO] [stderr]     |
[INFO] [stderr] 101 |         Err(err) => std::panic::panic_any(err),
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `raytracer` (test "canvas_renderer_tests") generated 4 warnings
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.21s
[INFO] [stderr]      Running unittests (/opt/rustwide/target/debug/deps/raytracer-f65493c9a945287c)
[INFO] [stdout] 
[INFO] [stdout] running 33 tests
[INFO] [stdout] test linear::tuple::tests::equal_mismatched_w ... ok
[INFO] [stdout] test linear::tuple::tests::equal_mismatched_x ... ok
[INFO] [stdout] test linear::tuple::tests::equal_mismatched_y ... ok
[INFO] [stdout] test linear::tuple::tests::equal_mismatched_z ... ok
[INFO] [stdout] test linear::tuple::tests::equal_same_values ... ok
[INFO] [stdout] test linear::tuple::tests::equal_same_values_floating_points ... ok
[INFO] [stdout] test linear::tuple::tests::point_creation ... ok
[INFO] [stdout] test linear::tuple::tests::tuple_divide_by_scalar ... ok
[INFO] [stdout] test linear::tuple::tests::tuple_multiply_by_fractional_scalar ... ok
[INFO] [stdout] test linear::tuple::tests::tuple_multiply_by_scalar ... ok
[INFO] [stdout] test linear::tuple::tests::tuple_negation ... ok
[INFO] [stdout] test linear::tuple::tests::vector_creation ... ok
[INFO] [stdout] test objects::plane::test::intersecct_local_ray_coplanar ... ok
[INFO] [stdout] test objects::plane::test::intersecct_local_ray_parallel_to_plane ... ok
[INFO] [stdout] test objects::plane::test::intersect_local_from_above ... ok
[INFO] [stdout] test objects::plane::test::intersect_local_from_below ... ok
[INFO] [stdout] test objects::plane::test::normal_at_local_is_consistent_everywhere ... ok
[INFO] [stdout] test objects::sphere::test::intersect_local_no_hits ... ok
[INFO] [stdout] test objects::sphere::test::intersect_local_origin_inside_sphere ... ok
[INFO] [stdout] test objects::sphere::test::intersect_local_ray_in_front_of_sphere ... ok
[INFO] [stdout] test objects::sphere::test::intersect_local_tangent ... ok
[INFO] [stdout] test objects::sphere::test::intersect_local_two_points ... ok
[INFO] [stdout] test objects::sphere::test::normal_at_local_is_normalized ... ok
[INFO] [stdout] test objects::sphere::test::normal_at_local_on_x_axis ... ok
[INFO] [stdout] test objects::sphere::test::normal_at_local_non_axial_point ... ok
[INFO] [stdout] test objects::sphere::test::normal_at_local_on_y_axis ... ok
[INFO] [stdout] test objects::sphere::test::normal_at_local_on_z_axis ... ok
[INFO] [stdout] test objects::test_shape::test::intersect_scaled ... ok
[INFO] [stdout] test objects::test_shape::test::intersect_translated ... ok
[INFO] [stdout] test objects::test_shape::test::test_material ... ok
[INFO] [stdout] test objects::test_shape::test::test_transform ... ok
[INFO] [stdout] test objects::test_shape::test::normal_at_translated ... ok
[INFO] [stdout] test objects::test_shape::test::normal_at_transformed_shape ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 33 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests (/opt/rustwide/target/debug/deps/raytracer-835ae55cf1479217)
[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 tests/camera_tests.rs (/opt/rustwide/target/debug/deps/camera_tests-14bba46a0b11780d)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test camera_ray_center_of_canvas ... ok
[INFO] [stdout] test view_transform_arbitrary ... ok
[INFO] [stdout] test camera_ray_camera_has_transform ... ok
[INFO] [stdout] test camera_ray_corner_of_canvas ... ok
[INFO] [stdout] test view_transform_looking_positive_z ... ok
[INFO] [stdout] test view_transform_moves_the_world ... ok
[INFO] [stdout] test camera_render_sanity_check ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/canvas_renderer_tests.rs (/opt/rustwide/target/debug/deps/canvas_renderer_tests-dca80774901b04b3)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test ppm_body ... ok
[INFO] [stdout] test ppm_ends_with_newline ... ok
[INFO] [stdout] test ppm_header ... ok
[INFO] [stdout] test ppm_wrap_lines ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/canvas_tests.rs (/opt/rustwide/target/debug/deps/canvas_tests-19d7d71ba3ef6051)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test write_pixel ... ok
[INFO] [stdout] test create_canvas ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/color_tests.rs (/opt/rustwide/target/debug/deps/color_tests-2482ca3fbc23b96d)
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stderr]      Running tests/intersection_tests.rs (/opt/rustwide/target/debug/deps/intersection_tests-177c25579bf1a13d)
[INFO] [stdout] test add ... ok
[INFO] [stdout] test create_color ... ok
[INFO] [stdout] test equals_floating_point_comparison ... ok
[INFO] [stdout] test equals_mismatched_blue ... ok
[INFO] [stdout] test equals_mismatched_green ... ok
[INFO] [stdout] test equals_mismatched_red ... ok
[INFO] [stdout] test multiply_color ... ok
[INFO] [stdout] test multiply_scalar ... ok
[INFO] [stdout] test subtract ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test hit_all_negative_t ... ok
[INFO] [stdout] test hit_all_positive_t ... ok
[INFO] [stdout] test hit_is_lowest_non_negative ... ok
[INFO] [stdout] test hit_some_negative_t ... ok
[INFO] [stdout] test prepare_info_inside_hit ... ok
[INFO] [stdout] test prepare_info_offset_point ... ok
[INFO] [stdout] test prepare_info_outside_hit ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/material_tests.rs (/opt/rustwide/target/debug/deps/material_tests-fdd237ed6aa77b7d)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test light_eye_between_light_and_surface ... ok
[INFO] [stdout] test light_eye_opposite_surface_with_light_45_offset ... ok
[INFO] [stdout] test light_eye_between_light_and_surface_with_eye_45_offset ... ok
[INFO] [stdout] test light_eye_in_path_of_reflection_vector ... ok
[INFO] [stdout] test light_surface_in_shadow ... ok
[INFO] [stdout] test light_with_light_behind_surface ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/matrix_tests.rs (/opt/rustwide/target/debug/deps/matrix_tests-74537793d48b860b)
[INFO] [stdout] 
[INFO] [stdout] running 24 tests
[INFO] [stdout] test cofactor_3x3 ... ok
[INFO] [stdout] test create_2x2 ... ok
[INFO] [stdout] test create_3x3 ... ok
[INFO] [stdout] test create_4x4 ... ok
[INFO] [stdout] test determinant_2x2 ... ok
[INFO] [stdout] test determinant_3x3 ... ok
[INFO] [stdout] test determinant_4x4 ... ok
[INFO] [stdout] test equal_different_4x4 ... ok
[INFO] [stdout] test equal_same_4x4 ... ok
[INFO] [stdout] test invert_4x4 ... ok
[INFO] [stdout] test invert_4x4_2 ... ok
[INFO] [stdout] test is_invertible_invertible ... ok
[INFO] [stdout] test invert_4x4_3 ... ok
[INFO] [stdout] test invert_multiply_by_inverse ... ok
[INFO] [stdout] test minor_3x3 ... ok
[INFO] [stdout] test is_invertible_noninvertable ... ok
[INFO] [stdout] test multiply_4x4 ... ok
[INFO] [stdout] test multiply_4x4_by_tuple ... ok
[INFO] [stdout] test multiply_4x4_identity ... ok
[INFO] [stdout] test multiply_identity_4_by_tuple ... ok
[INFO] [stdout] test submatrix_3x3 ... ok
[INFO] [stdout] test submatrix_4x4 ... ok
[INFO] [stdout] test transpose_4x4 ... ok
[INFO] [stdout] test transpose_identity_4 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 24 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/transform_tests.rs (/opt/rustwide/target/debug/deps/transform_tests-5baf70e7f3585203)
[INFO] [stdout] 
[INFO] [stdout] running 19 tests
[INFO] [stdout] test rotate_x ... ok
[INFO] [stdout] test rotate_y ... ok
[INFO] [stdout] test rotate_z ... ok
[INFO] [stdout] test rotate_x_inverse ... ok
[INFO] [stdout] test scale_point ... ok
[INFO] [stdout] test scale_reflection ... ok
[INFO] [stdout] test scale_vector ... ok
[INFO] [stdout] test shear_x_in_proportion_to_y ... ok
[INFO] [stdout] test shear_x_in_proportion_to_z ... ok
[INFO] [stdout] test shear_y_in_proportion_to_x ... ok
[INFO] [stdout] test scale_vector_inverse ... ok
[INFO] [stdout] test shear_y_in_proportion_to_z ... ok
[INFO] [stdout] test shear_z_in_proportion_to_x ... ok
[INFO] [stdout] test shear_z_in_proportion_to_y ... ok
[INFO] [stdout] test transform_order_chained ... ok
[INFO] [stdout] test transform_order_sequence ... ok
[INFO] [stdout] test translate_does_not_affect_vectors ... ok
[INFO] [stdout] test translate_point ... ok
[INFO] [stdout] test translate_point_inverse ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 19 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/tuple_tests.rs (/opt/rustwide/target/debug/deps/tuple_tests-3c74ccf51d3f0a1e)
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test dot_product_vectors ... ok
[INFO] [stdout] test cross_product_vectors ... ok
[INFO] [stdout] test magnitude ... ok
[INFO] [stdout] test magnitude_negative_components ... ok
[INFO] [stdout] test normalize_arbitrary_vector ... ok
[INFO] [stdout] test normalize_x_vector ... ok
[INFO] [stdout] test reflected_over_45deg_approach ... ok
[INFO] [stdout] test reflected_over_slanted_surface ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/world_tests.rs (/opt/rustwide/target/debug/deps/world_tests-04db0c6ab62675ac)
[INFO] [stdout] 
[INFO] [stdout] running 11 tests
[INFO] [stdout] test is_shadowed_no_obstruction ... ok
[INFO] [stdout] test intersect_default_world ... ok
[INFO] [stdout] test color_at_miss ... ok
[INFO] [stdout] test is_shadowed_object_behind_light ... ok
[INFO] [stdout] test color_with_intersection_behind_ray ... ok
[INFO] [stdout] test is_shadowed_obstruction ... ok
[INFO] [stdout] test is_shadowed_object_behind_point ... ok
[INFO] [stdout] test color_at_hit ... ok
[INFO] [stdout] test shade_hit ... ok
[INFO] [stdout] test shade_hit_inside ... ok
[INFO] [stdout] test shade_hit_in_shadow ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests raytracer
[INFO] [stdout] 
[INFO] [stdout] running 36 tests
[INFO] [stderr] error: test failed, to rerun pass '--doc'
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `rustdoc --edition=2018 --crate-type lib --crate-name raytracer --test /opt/rustwide/workdir/src/lib.rs -L dependency=/opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern float_cmp=/opt/rustwide/target/debug/deps/libfloat_cmp-3f869ece3f977416.rlib --extern lazy_static=/opt/rustwide/target/debug/deps/liblazy_static-e92083d5a39a8b50.rlib --extern raytracer=/opt/rustwide/target/debug/deps/libraytracer-015d45e4700c1d49.rlib -C embed-bitcode=no --error-format human` (signal: 9, SIGKILL: kill)
[INFO] running `Command { std: "docker" "inspect" "c6aff282759e4a8cd6d6ba7c001700bbb350ccf2c2883e4488c156fb4b615f82", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c6aff282759e4a8cd6d6ba7c001700bbb350ccf2c2883e4488c156fb4b615f82", kill_on_drop: false }`
[INFO] [stdout] c6aff282759e4a8cd6d6ba7c001700bbb350ccf2c2883e4488c156fb4b615f82
