[INFO] cloning repository https://github.com/k0nserv/rusttracer
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/k0nserv/rusttracer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fk0nserv%2Frusttracer", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fk0nserv%2Frusttracer'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 848de68a76fee7a02e6d280572f3147cc9726368
[INFO] testing k0nserv/rusttracer against beta-2025-09-21 for beta-1.91-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fk0nserv%2Frusttracer" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/k0nserv/rusttracer
[INFO] finished tweaking git repo https://github.com/k0nserv/rusttracer
[INFO] tweaked toml for git repo https://github.com/k0nserv/rusttracer written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/k0nserv/rusttracer on toolchain beta-2025-09-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/k0nserv/rusttracer 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" "+beta-2025-09-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 78f036831c6da0f78ebfd7c7c2437cb91e87a4987800618ffbd4166f97d0a392
[INFO] running `Command { std: "docker" "start" "-a" "78f036831c6da0f78ebfd7c7c2437cb91e87a4987800618ffbd4166f97d0a392", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "78f036831c6da0f78ebfd7c7c2437cb91e87a4987800618ffbd4166f97d0a392", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "78f036831c6da0f78ebfd7c7c2437cb91e87a4987800618ffbd4166f97d0a392", kill_on_drop: false }`
[INFO] [stdout] 78f036831c6da0f78ebfd7c7c2437cb91e87a4987800618ffbd4166f97d0a392
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 6daf251b68e6b0016da7ef2e653026aaaf9a9d7380f45d5047581247611bbcc4
[INFO] running `Command { std: "docker" "start" "-a" "6daf251b68e6b0016da7ef2e653026aaaf9a9d7380f45d5047581247611bbcc4", kill_on_drop: false }`
[INFO] [stderr]    Compiling autocfg v1.3.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.81
[INFO] [stderr]    Compiling unicode-ident v1.0.12
[INFO] [stderr]    Compiling crossbeam-utils v0.8.19
[INFO] [stderr]    Compiling once_cell v1.19.0
[INFO] [stderr]    Compiling libc v0.2.154
[INFO] [stderr]    Compiling simd-adler32 v0.3.7
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling either v1.11.0
[INFO] [stderr]    Compiling log v0.4.21
[INFO] [stderr]    Compiling anyhow v1.0.82
[INFO] [stderr]    Compiling thiserror v1.0.59
[INFO] [stderr]    Compiling adler v1.0.2
[INFO] [stderr]    Compiling crc32fast v1.4.0
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling aligned-vec v0.5.0
[INFO] [stderr]    Compiling built v0.7.2
[INFO] [stderr]    Compiling memchr v2.7.2
[INFO] [stderr]    Compiling arrayvec v0.7.4
[INFO] [stderr]    Compiling paste v1.0.14
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling version_check v0.9.4
[INFO] [stderr]    Compiling bytemuck v1.15.0
[INFO] [stderr]    Compiling miniz_oxide v0.7.2
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]    Compiling tracing-core v0.1.32
[INFO] [stderr]    Compiling serde v1.0.200
[INFO] [stderr]    Compiling imgref v1.10.1
[INFO] [stderr]    Compiling new_debug_unreachable v1.0.6
[INFO] [stderr]    Compiling noop_proc_macro v0.3.0
[INFO] [stderr]    Compiling rav1e v0.7.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling num-bigint v0.4.4
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling ahash v0.8.11
[INFO] [stderr]    Compiling flate2 v1.0.30
[INFO] [stderr]    Compiling weezl v0.1.8
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling bitstream-io v2.2.0
[INFO] [stderr]    Compiling quote v1.0.36
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling syn v2.0.60
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]    Compiling loop9 v0.1.5
[INFO] [stderr]    Compiling rgb v0.8.37
[INFO] [stderr]    Compiling avif-serialize v0.8.1
[INFO] [stderr]    Compiling crossbeam-deque v0.8.5
[INFO] [stderr]    Compiling zune-inflate v0.2.54
[INFO] [stderr]    Compiling fdeflate v0.3.4
[INFO] [stderr]    Compiling simd_helpers v0.1.0
[INFO] [stderr]    Compiling half v2.4.1
[INFO] [stderr]    Compiling color_quant v1.1.0
[INFO] [stderr]    Compiling spin v0.9.8
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling quick-error v2.0.1
[INFO] [stderr]    Compiling byteorder-lite v0.1.0
[INFO] [stderr]    Compiling zune-core v0.4.12
[INFO] [stderr]    Compiling bit_field v0.10.2
[INFO] [stderr]    Compiling serde_json v1.0.116
[INFO] [stderr]    Compiling flume v0.11.0
[INFO] [stderr]    Compiling getrandom v0.2.14
[INFO] [stderr]    Compiling zerocopy v0.7.33
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling lebe v0.5.2
[INFO] [stderr]    Compiling jpeg-decoder v0.3.1
[INFO] [stderr]    Compiling overload v0.1.1
[INFO] [stderr]    Compiling zune-jpeg v0.4.11
[INFO] [stderr]    Compiling png v0.17.13
[INFO] [stderr]    Compiling gif v0.13.1
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling nu-ansi-term v0.46.0
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling qoi v0.4.1
[INFO] [stderr]    Compiling thread_local v1.1.8
[INFO] [stderr]    Compiling unicode-width v0.1.12
[INFO] [stderr]    Compiling ryu v1.0.17
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling v_frame v0.3.8
[INFO] [stderr]    Compiling rayon v1.10.0
[INFO] [stderr]    Compiling exr v1.72.0
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling itoa v1.0.11
[INFO] [stderr]    Compiling pin-project-lite v0.2.14
[INFO] [stderr]    Compiling tracing-subscriber v0.3.18
[INFO] [stderr]    Compiling getopts v0.2.21
[INFO] [stderr]    Compiling tobj v4.0.2
[INFO] [stderr]    Compiling tiff v0.9.1
[INFO] [stderr]    Compiling av1-grain v0.2.3
[INFO] [stderr]    Compiling maybe-rayon v0.1.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.59
[INFO] [stderr]    Compiling profiling-procmacros v1.0.15
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling arg_enum_proc_macro v0.3.4
[INFO] [stderr]    Compiling serde_derive v1.0.200
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]    Compiling profiling v1.0.15
[INFO] [stderr]    Compiling image-webp v0.1.2
[INFO] [stderr]    Compiling tracing v0.1.40
[INFO] [stderr]    Compiling ravif v0.11.5
[INFO] [stderr]    Compiling image v0.25.1
[INFO] [stderr]    Compiling rusttracer v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: field `direction` is never read
[INFO] [stdout]   --> src/light/directional.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Directional {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 12 |     pub direction: Vector3,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/intersection.rs:26:10
[INFO] [stdout]    |
[INFO] [stdout] 20 |         shape: &'a dyn Shape,
[INFO] [stdout]    |                 -- the lifetime is named here
[INFO] [stdout] ...
[INFO] [stdout] 26 |     ) -> Intersection {
[INFO] [stdout]    |          ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 26 |     ) -> Intersection<'a> {
[INFO] [stdout]    |                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/geometry/mod.rs:28:18
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection>;
[INFO] [stdout]    |                  ^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection<'_>>;
[INFO] [stdout]    |                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/geometry/instance.rs:46:18
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection> {
[INFO] [stdout]    |                  ^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection<'_>> {
[INFO] [stdout]    |                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/geometry/mesh.rs:128:18
[INFO] [stdout]     |
[INFO] [stdout] 128 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection> {
[INFO] [stdout]     |                  ^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 128 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection<'_>> {
[INFO] [stdout]     |                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/geometry/plane.rs:33:18
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn intersect(&self, ray: Ray, _: bool) -> Option<Intersection> {
[INFO] [stdout]    |                  ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn intersect(&self, ray: Ray, _: bool) -> Option<Intersection<'_>> {
[INFO] [stdout]    |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/geometry/sphere.rs:36:18
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn intersect(&self, ray: Ray, _: bool) -> Option<Intersection> {
[INFO] [stdout]    |                  ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn intersect(&self, ray: Ray, _: bool) -> Option<Intersection<'_>> {
[INFO] [stdout]    |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/geometry/triangle.rs:94:18
[INFO] [stdout]    |
[INFO] [stdout] 94 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection> {
[INFO] [stdout]    |                  ^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 94 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection<'_>> {
[INFO] [stdout]    |                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/scene.rs:252:22
[INFO] [stdout]     |
[INFO] [stdout] 252 |     pub fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection> {
[INFO] [stdout]     |                      ^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 252 |     pub fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection<'_>> {
[INFO] [stdout]     |                                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/scene.rs:270:31
[INFO] [stdout]     |
[INFO] [stdout] 270 |     pub fn first_intersection(&self, ray: Ray, cull: bool, distance: f32) -> Option<Intersection> {
[INFO] [stdout]     |                               ^^^^^ the lifetime is elided here                     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 270 |     pub fn first_intersection(&self, ray: Ray, cull: bool, distance: f32) -> Option<Intersection<'_>> {
[INFO] [stdout]     |                                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 49.04s
[INFO] running `Command { std: "docker" "inspect" "6daf251b68e6b0016da7ef2e653026aaaf9a9d7380f45d5047581247611bbcc4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6daf251b68e6b0016da7ef2e653026aaaf9a9d7380f45d5047581247611bbcc4", kill_on_drop: false }`
[INFO] [stdout] 6daf251b68e6b0016da7ef2e653026aaaf9a9d7380f45d5047581247611bbcc4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fa4f4b835e31170acd188ac7102692340e9735201430a934320fe512c79b7550
[INFO] running `Command { std: "docker" "start" "-a" "fa4f4b835e31170acd188ac7102692340e9735201430a934320fe512c79b7550", kill_on_drop: false }`
[INFO] [stdout] warning: field `direction` is never read
[INFO] [stdout]   --> src/light/directional.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Directional {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 12 |     pub direction: Vector3,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rusttracer v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/intersection.rs:26:10
[INFO] [stdout]    |
[INFO] [stdout] 20 |         shape: &'a dyn Shape,
[INFO] [stdout]    |                 -- the lifetime is named here
[INFO] [stdout] ...
[INFO] [stdout] 26 |     ) -> Intersection {
[INFO] [stdout]    |          ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 26 |     ) -> Intersection<'a> {
[INFO] [stdout]    |                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/geometry/mod.rs:28:18
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection>;
[INFO] [stdout]    |                  ^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection<'_>>;
[INFO] [stdout]    |                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/geometry/instance.rs:46:18
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection> {
[INFO] [stdout]    |                  ^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection<'_>> {
[INFO] [stdout]    |                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/geometry/mesh.rs:128:18
[INFO] [stdout]     |
[INFO] [stdout] 128 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection> {
[INFO] [stdout]     |                  ^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 128 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection<'_>> {
[INFO] [stdout]     |                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/geometry/plane.rs:33:18
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn intersect(&self, ray: Ray, _: bool) -> Option<Intersection> {
[INFO] [stdout]    |                  ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn intersect(&self, ray: Ray, _: bool) -> Option<Intersection<'_>> {
[INFO] [stdout]    |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/geometry/sphere.rs:36:18
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn intersect(&self, ray: Ray, _: bool) -> Option<Intersection> {
[INFO] [stdout]    |                  ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn intersect(&self, ray: Ray, _: bool) -> Option<Intersection<'_>> {
[INFO] [stdout]    |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/geometry/triangle.rs:94:18
[INFO] [stdout]    |
[INFO] [stdout] 94 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection> {
[INFO] [stdout]    |                  ^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 94 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection<'_>> {
[INFO] [stdout]    |                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/scene.rs:252:22
[INFO] [stdout]     |
[INFO] [stdout] 252 |     pub fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection> {
[INFO] [stdout]     |                      ^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 252 |     pub fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection<'_>> {
[INFO] [stdout]     |                                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/scene.rs:270:31
[INFO] [stdout]     |
[INFO] [stdout] 270 |     pub fn first_intersection(&self, ray: Ray, cull: bool, distance: f32) -> Option<Intersection> {
[INFO] [stdout]     |                               ^^^^^ the lifetime is elided here                     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 270 |     pub fn first_intersection(&self, ray: Ray, cull: bool, distance: f32) -> Option<Intersection<'_>> {
[INFO] [stdout]     |                                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `direction` is never read
[INFO] [stdout]   --> src/light/directional.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Directional {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 12 |     pub direction: Vector3,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/intersection.rs:26:10
[INFO] [stdout]    |
[INFO] [stdout] 20 |         shape: &'a dyn Shape,
[INFO] [stdout]    |                 -- the lifetime is named here
[INFO] [stdout] ...
[INFO] [stdout] 26 |     ) -> Intersection {
[INFO] [stdout]    |          ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 26 |     ) -> Intersection<'a> {
[INFO] [stdout]    |                      ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/geometry/mod.rs:28:18
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection>;
[INFO] [stdout]    |                  ^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 28 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection<'_>>;
[INFO] [stdout]    |                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/geometry/instance.rs:46:18
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection> {
[INFO] [stdout]    |                  ^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 46 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection<'_>> {
[INFO] [stdout]    |                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/geometry/mesh.rs:128:18
[INFO] [stdout]     |
[INFO] [stdout] 128 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection> {
[INFO] [stdout]     |                  ^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 128 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection<'_>> {
[INFO] [stdout]     |                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/geometry/plane.rs:33:18
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn intersect(&self, ray: Ray, _: bool) -> Option<Intersection> {
[INFO] [stdout]    |                  ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 33 |     fn intersect(&self, ray: Ray, _: bool) -> Option<Intersection<'_>> {
[INFO] [stdout]    |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/geometry/sphere.rs:36:18
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn intersect(&self, ray: Ray, _: bool) -> Option<Intersection> {
[INFO] [stdout]    |                  ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 36 |     fn intersect(&self, ray: Ray, _: bool) -> Option<Intersection<'_>> {
[INFO] [stdout]    |                                                                  ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/geometry/triangle.rs:94:18
[INFO] [stdout]    |
[INFO] [stdout] 94 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection> {
[INFO] [stdout]    |                  ^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 94 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection<'_>> {
[INFO] [stdout]    |                                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/scene.rs:252:22
[INFO] [stdout]     |
[INFO] [stdout] 252 |     pub fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection> {
[INFO] [stdout]     |                      ^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 252 |     pub fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection<'_>> {
[INFO] [stdout]     |                                                                         ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/scene.rs:270:31
[INFO] [stdout]     |
[INFO] [stdout] 270 |     pub fn first_intersection(&self, ray: Ray, cull: bool, distance: f32) -> Option<Intersection> {
[INFO] [stdout]     |                               ^^^^^ the lifetime is elided here                     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 270 |     pub fn first_intersection(&self, ray: Ray, cull: bool, distance: f32) -> Option<Intersection<'_>> {
[INFO] [stdout]     |                                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3.30s
[INFO] running `Command { std: "docker" "inspect" "fa4f4b835e31170acd188ac7102692340e9735201430a934320fe512c79b7550", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fa4f4b835e31170acd188ac7102692340e9735201430a934320fe512c79b7550", kill_on_drop: false }`
[INFO] [stdout] fa4f4b835e31170acd188ac7102692340e9735201430a934320fe512c79b7550
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2025-09-21" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 3a9bb7d91f9fd0623ce81f00e3af1595cb4c7107e9fd7c66faf513d7b0882502
[INFO] running `Command { std: "docker" "start" "-a" "3a9bb7d91f9fd0623ce81f00e3af1595cb4c7107e9fd7c66faf513d7b0882502", kill_on_drop: false }`
[INFO] [stderr] warning: field `direction` is never read
[INFO] [stderr]   --> src/light/directional.rs:12:9
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub struct Directional {
[INFO] [stderr]    |            ----------- field in this struct
[INFO] [stderr] 12 |     pub direction: Vector3,
[INFO] [stderr]    |         ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]   --> src/intersection.rs:26:10
[INFO] [stderr]    |
[INFO] [stderr] 20 |         shape: &'a dyn Shape,
[INFO] [stderr]    |                 -- the lifetime is named here
[INFO] [stderr] ...
[INFO] [stderr] 26 |     ) -> Intersection {
[INFO] [stderr]    |          ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: consistently use `'a`
[INFO] [stderr]    |
[INFO] [stderr] 26 |     ) -> Intersection<'a> {
[INFO] [stderr]    |                      ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/geometry/mod.rs:28:18
[INFO] [stderr]    |
[INFO] [stderr] 28 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection>;
[INFO] [stderr]    |                  ^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 28 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection<'_>>;
[INFO] [stderr]    |                                                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/geometry/instance.rs:46:18
[INFO] [stderr]    |
[INFO] [stderr] 46 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection> {
[INFO] [stderr]    |                  ^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 46 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection<'_>> {
[INFO] [stderr]    |                                                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/geometry/mesh.rs:128:18
[INFO] [stderr]     |
[INFO] [stderr] 128 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection> {
[INFO] [stderr]     |                  ^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 128 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection<'_>> {
[INFO] [stderr]     |                                                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/geometry/plane.rs:33:18
[INFO] [stderr]    |
[INFO] [stderr] 33 |     fn intersect(&self, ray: Ray, _: bool) -> Option<Intersection> {
[INFO] [stderr]    |                  ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 33 |     fn intersect(&self, ray: Ray, _: bool) -> Option<Intersection<'_>> {
[INFO] [stderr]    |                                                                  ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/geometry/sphere.rs:36:18
[INFO] [stderr]    |
[INFO] [stderr] 36 |     fn intersect(&self, ray: Ray, _: bool) -> Option<Intersection> {
[INFO] [stderr]    |                  ^^^^^ the lifetime is elided here   ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 36 |     fn intersect(&self, ray: Ray, _: bool) -> Option<Intersection<'_>> {
[INFO] [stderr]    |                                                                  ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/geometry/triangle.rs:94:18
[INFO] [stderr]    |
[INFO] [stderr] 94 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection> {
[INFO] [stderr]    |                  ^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 94 |     fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection<'_>> {
[INFO] [stderr]    |                                                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/scene.rs:252:22
[INFO] [stderr]     |
[INFO] [stderr] 252 |     pub fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection> {
[INFO] [stderr]     |                      ^^^^^ the lifetime is elided here      ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 252 |     pub fn intersect(&self, ray: Ray, cull: bool) -> Option<Intersection<'_>> {
[INFO] [stderr]     |                                                                         ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/scene.rs:270:31
[INFO] [stderr]     |
[INFO] [stderr] 270 |     pub fn first_intersection(&self, ray: Ray, cull: bool, distance: f32) -> Option<Intersection> {
[INFO] [stderr]     |                               ^^^^^ the lifetime is elided here                     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 270 |     pub fn first_intersection(&self, ray: Ray, cull: bool, distance: f32) -> Option<Intersection<'_>> {
[INFO] [stderr]     |                                                                                                 ++++
[INFO] [stderr] 
[INFO] [stderr] warning: `rusttracer` (lib) generated 10 warnings (run `cargo fix --lib -p rusttracer` to apply 9 suggestions)
[INFO] [stderr] warning: `rusttracer` (lib test) generated 10 warnings (10 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.22s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rusttracer-61583c632bdef8d9)
[INFO] [stdout] 
[INFO] [stdout] running 57 tests
[INFO] [stdout] test geometry::aabb::tests::test_intersects_triangle_aabb_edge ... ok
[INFO] [stdout] test geometry::octtree::tests::test_build_octants ... ok
[INFO] [stdout] test geometry::sphere::tests::test_intersection ... ok
[INFO] [stdout] test geometry::aabb::tests::test_intersects_triangle_aabb_vertex_inside ... ok
[INFO] [stdout] test math::matrix4::tests::index_mut ... ok
[INFO] [stdout] test math::matrix4::tests::index ... ok
[INFO] [stdout] test math::matrix4::tests::index_row ... ok
[INFO] [stdout] test math::matrix4::tests::inverse_complex ... ok
[INFO] [stdout] test math::matrix4::tests::inverse_identity ... ok
[INFO] [stdout] test math::matrix4::tests::inverse_moderate ... ok
[INFO] [stdout] test math::matrix4::tests::test_new ... ok
[INFO] [stdout] test math::matrix4::tests::test_translate ... ok
[INFO] [stdout] test math::matrix4::tests::transpose_complex ... ok
[INFO] [stdout] test math::three_dimensions::tests::test_cross ... ok
[INFO] [stdout] test math::three_dimensions::tests::test_dot ... ok
[INFO] [stdout] test math::matrix4::tests::test_rot_x ... ok
[INFO] [stdout] test math::matrix4::tests::transpose_identity ... ok
[INFO] [stdout] test math::three_dimensions::tests::test_normalize_zero_length ... ok
[INFO] [stdout] test math::three_dimensions::tests::test_multiplication ... ok
[INFO] [stdout] test math::three_dimensions::tests::test_normalize ... ok
[INFO] [stdout] test math::three_dimensions::tests::test_rot_x ... ok
[INFO] [stdout] test math::three_dimensions::tests::test_rot_z ... ok
[INFO] [stdout] test math::three_dimensions::tests::test_rot_y ... ok
[INFO] [stdout] test math::three_dimensions::tests::test_scale ... ok
[INFO] [stdout] test math::three_dimensions::tests::test_subtraction ... ok
[INFO] [stdout] test math::three_dimensions::tests::test_translation ... ok
[INFO] [stdout] test math::three_dimensions::tests::test_vector3_mul_simple ... ok
[INFO] [stdout] test math::three_dimensions::tests::test_vector3_mul_complex ... ok
[INFO] [stdout] test math::three_dimensions::tests::test_vector_translation ... ok
[INFO] [stdout] test math::two_dimensions::tests::test_from ... ok
[INFO] [stdout] test math::two_dimensions::tests::test_new ... ok
[INFO] [stdout] test math::two_dimensions::tests::test_point2_as_vector ... ok
[INFO] [stdout] test math::two_dimensions::tests::test_point2_at_origin ... ok
[INFO] [stdout] test math::two_dimensions::tests::test_vector2_addition ... ok
[INFO] [stdout] test math::two_dimensions::tests::test_vector2_as_point ... ok
[INFO] [stdout] test math::two_dimensions::tests::test_vector2_dot ... ok
[INFO] [stdout] test math::two_dimensions::tests::test_vector2_length ... ok
[INFO] [stdout] test math::two_dimensions::tests::test_vector2_multiplication ... ok
[INFO] [stdout] test math::two_dimensions::tests::test_vector2_negation ... ok
[INFO] [stdout] test math::two_dimensions::tests::test_vector2_normalize ... ok
[INFO] [stdout] test math::two_dimensions::tests::test_vector2_substraction ... ok
[INFO] [stdout] test texture::procedural::test::test_lookup ... ok
[INFO] [stdout] test texture::solid::test::test_lookup ... ok
[INFO] [stdout] test geometry::aabb::tests::test_intersects_triangle_aabb_realistic_2 ... ok
[INFO] [stdout] test geometry::aabb::tests::test_intersects_triangle_aabb_realistic_trivial ... ok
[INFO] [stdout] test geometry::sphere::tests::test_intersection_miss ... ok
[INFO] [stdout] test math::matrix4::tests::test_rot_y ... ok
[INFO] [stdout] test math::matrix4::tests::test_rot_z ... ok
[INFO] [stdout] test math::matrix4::tests::test_scale ... ok
[INFO] [stdout] test math::three_dimensions::tests::test_at_origin ... ok
[INFO] [stdout] test math::three_dimensions::tests::test_constructor ... ok
[INFO] [stdout] test math::three_dimensions::tests::test_from ... ok
[INFO] [stdout] test math::three_dimensions::tests::test_length ... ok
[INFO] [stdout] test math::three_dimensions::tests::test_addition ... ok
[INFO] [stdout] test geometry::aabb::tests::test_intersects_triangle_aabb_realistic_1 ... ok
[INFO] [stdout] test math::two_dimensions::tests::test_point2_addition ... ok
[INFO] [stdout] test math::matrix4::tests::test_identity ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 57 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/rusttracer-b4dc3fb10d1d2471)
[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]    Doc-tests rusttracer
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "3a9bb7d91f9fd0623ce81f00e3af1595cb4c7107e9fd7c66faf513d7b0882502", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3a9bb7d91f9fd0623ce81f00e3af1595cb4c7107e9fd7c66faf513d7b0882502", kill_on_drop: false }`
[INFO] [stdout] 3a9bb7d91f9fd0623ce81f00e3af1595cb4c7107e9fd7c66faf513d7b0882502
