[INFO] cloning repository https://github.com/jenningsfan/rosemary-renderer [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jenningsfan/rosemary-renderer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjenningsfan%2Frosemary-renderer", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjenningsfan%2Frosemary-renderer'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 491a20faa785a18331a139ee876eb3791cec7b4e [INFO] checking jenningsfan/rosemary-renderer against try#c659ee110de67e82444e4b6c8407c1a9af9c2cf6 for pr-145608-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjenningsfan%2Frosemary-renderer" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/jenningsfan/rosemary-renderer [INFO] finished tweaking git repo https://github.com/jenningsfan/rosemary-renderer [INFO] tweaked toml for git repo https://github.com/jenningsfan/rosemary-renderer written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/jenningsfan/rosemary-renderer on toolchain c659ee110de67e82444e4b6c8407c1a9af9c2cf6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c659ee110de67e82444e4b6c8407c1a9af9c2cf6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/jenningsfan/rosemary-renderer 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" "+c659ee110de67e82444e4b6c8407c1a9af9c2cf6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+c659ee110de67e82444e4b6c8407c1a9af9c2cf6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5f46c52cfa4914762eb1e152c35e0b84094a2621d39abdd7b88afda45fad7f41 [INFO] running `Command { std: "docker" "start" "-a" "5f46c52cfa4914762eb1e152c35e0b84094a2621d39abdd7b88afda45fad7f41", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5f46c52cfa4914762eb1e152c35e0b84094a2621d39abdd7b88afda45fad7f41", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5f46c52cfa4914762eb1e152c35e0b84094a2621d39abdd7b88afda45fad7f41", kill_on_drop: false }` [INFO] [stdout] 5f46c52cfa4914762eb1e152c35e0b84094a2621d39abdd7b88afda45fad7f41 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+c659ee110de67e82444e4b6c8407c1a9af9c2cf6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 74b523f752c74ef8559203599c5106e2bbe55e36fb69050f231974eb3e14dd4e [INFO] running `Command { std: "docker" "start" "-a" "74b523f752c74ef8559203599c5106e2bbe55e36fb69050f231974eb3e14dd4e", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.86 [INFO] [stderr] Compiling libc v0.2.155 [INFO] [stderr] Compiling serde v1.0.210 [INFO] [stderr] Compiling serde_json v1.0.132 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking either v1.13.0 [INFO] [stderr] Checking half v2.4.1 [INFO] [stderr] Compiling convert_case v0.4.0 [INFO] [stderr] Checking clap_lex v0.7.2 [INFO] [stderr] Checking anstyle v1.0.10 [INFO] [stderr] Checking plotters-backend v0.3.7 [INFO] [stderr] Checking regex-syntax v0.8.5 [INFO] [stderr] Checking ciborium-io v0.2.2 [INFO] [stderr] Checking ciborium-ll v0.2.2 [INFO] [stderr] Checking clap_builder v4.5.20 [INFO] [stderr] Checking itertools v0.10.5 [INFO] [stderr] Checking plotters-svg v0.3.7 [INFO] [stderr] Checking cast v0.3.0 [INFO] [stderr] Checking same-file v1.0.6 [INFO] [stderr] Checking rayon v1.10.0 [INFO] [stderr] Checking walkdir v2.5.0 [INFO] [stderr] Checking anes v0.1.6 [INFO] [stderr] Checking oorandom v11.1.4 [INFO] [stderr] Checking once_cell v1.20.2 [INFO] [stderr] Checking regex-automata v0.4.8 [INFO] [stderr] Compiling quote v1.0.36 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Compiling syn v2.0.67 [INFO] [stderr] Checking plotters v0.3.7 [INFO] [stderr] Checking uuid v1.9.1 [INFO] [stderr] Checking is-terminal v0.4.13 [INFO] [stderr] Checking clap v4.5.20 [INFO] [stderr] Checking criterion-plot v0.5.0 [INFO] [stderr] Checking regex v1.11.1 [INFO] [stderr] Compiling serde_derive v1.0.210 [INFO] [stderr] Compiling derive_more v0.99.18 [INFO] [stderr] Checking rosemary-renderer v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::f32::consts::PI` [INFO] [stdout] --> src/types/camera.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::f32::consts::PI; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `colour::Colour` [INFO] [stdout] --> src/types/camera.rs:2:37 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::{types::{canvas::Canvas, colour::Colour, ray::Ray, world::World}, Matrix, Tuple}; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `fov` is never read [INFO] [stdout] --> src/types/camera.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 5 | pub struct Camera { [INFO] [stdout] | ------ field in this struct [INFO] [stdout] ... [INFO] [stdout] 8 | fov: f32, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Camera` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/types/sphere.rs:28:22 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn intersect(&self, ray: &Ray) -> Vec { [INFO] [stdout] | ^^^^^ ------------ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided 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: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 28 | pub fn intersect(&self, ray: &Ray) -> Vec> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/types/intersection.rs:42:18 [INFO] [stdout] | [INFO] [stdout] 42 | pub fn comps(&self, ray: &Ray) -> IntersectionComps { [INFO] [stdout] | ^^^^^ ----------------- the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided 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] 42 | pub fn comps(&self, ray: &Ray) -> IntersectionComps<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/types/world.rs:19:22 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn intersect(&self, ray: &Ray) -> Vec { [INFO] [stdout] | ^^^^^ ------------ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided 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] 19 | pub fn intersect(&self, ray: &Ray) -> Vec> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `total_ticks` [INFO] [stdout] --> src/main.rs:25:13 [INFO] [stdout] | [INFO] [stdout] 25 | let mut total_ticks = 0; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_total_ticks` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | let mut total_ticks = 0; [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `half` [INFO] [stdout] --> src/main.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | let half = (size / 2) as f32; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_half` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `red` [INFO] [stdout] --> src/main.rs:93:9 [INFO] [stdout] | [INFO] [stdout] 93 | let red = Colour::new(1.0, 0.0, 0.0); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_red` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ray_direction` [INFO] [stdout] --> src/main.rs:94:9 [INFO] [stdout] | [INFO] [stdout] 94 | let ray_direction = Tuple::vector(0.0, 0.0, 1.0); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ray_direction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `projectile_fun` is never used [INFO] [stdout] --> src/main.rs:11:4 [INFO] [stdout] | [INFO] [stdout] 11 | fn projectile_fun() { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `matrix_fun` is never used [INFO] [stdout] --> src/main.rs:39:4 [INFO] [stdout] | [INFO] [stdout] 39 | fn matrix_fun() { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clock_fun` is never used [INFO] [stdout] --> src/main.rs:60:4 [INFO] [stdout] | [INFO] [stdout] 60 | fn clock_fun() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sphere_fun` is never used [INFO] [stdout] --> src/main.rs:79:4 [INFO] [stdout] | [INFO] [stdout] 79 | fn sphere_fun() { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking ciborium v0.2.2 [INFO] [stderr] Checking tinytemplate v1.2.1 [INFO] [stderr] Checking criterion v0.5.1 [INFO] [stdout] warning: unused variable: `total_ticks` [INFO] [stdout] --> src/main.rs:25:13 [INFO] [stdout] | [INFO] [stdout] 25 | let mut total_ticks = 0; [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_total_ticks` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:25:9 [INFO] [stdout] | [INFO] [stdout] 25 | let mut total_ticks = 0; [INFO] [stdout] | ----^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `half` [INFO] [stdout] --> src/main.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | let half = (size / 2) as f32; [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_half` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `red` [INFO] [stdout] --> src/main.rs:93:9 [INFO] [stdout] | [INFO] [stdout] 93 | let red = Colour::new(1.0, 0.0, 0.0); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_red` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ray_direction` [INFO] [stdout] --> src/main.rs:94:9 [INFO] [stdout] | [INFO] [stdout] 94 | let ray_direction = Tuple::vector(0.0, 0.0, 1.0); [INFO] [stdout] | ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ray_direction` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `projectile_fun` is never used [INFO] [stdout] --> src/main.rs:11:4 [INFO] [stdout] | [INFO] [stdout] 11 | fn projectile_fun() { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `matrix_fun` is never used [INFO] [stdout] --> src/main.rs:39:4 [INFO] [stdout] | [INFO] [stdout] 39 | fn matrix_fun() { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `clock_fun` is never used [INFO] [stdout] --> src/main.rs:60:4 [INFO] [stdout] | [INFO] [stdout] 60 | fn clock_fun() { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `sphere_fun` is never used [INFO] [stdout] --> src/main.rs:79:4 [INFO] [stdout] | [INFO] [stdout] 79 | fn sphere_fun() { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around closure body [INFO] [stdout] --> benches/matrix.rs:29:23 [INFO] [stdout] | [INFO] [stdout] 29 | |b| b.iter(|| (three.submatrix(black_box(0), black_box(2))))); [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 29 - |b| b.iter(|| (three.submatrix(black_box(0), black_box(2))))); [INFO] [stdout] 29 + |b| b.iter(|| three.submatrix(black_box(0), black_box(2)))); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/types/sphere.rs:28:22 [INFO] [stdout] | [INFO] [stdout] 28 | pub fn intersect(&self, ray: &Ray) -> Vec { [INFO] [stdout] | ^^^^^ ------------ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided 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: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 28 | pub fn intersect(&self, ray: &Ray) -> Vec> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/types/intersection.rs:42:18 [INFO] [stdout] | [INFO] [stdout] 42 | pub fn comps(&self, ray: &Ray) -> IntersectionComps { [INFO] [stdout] | ^^^^^ ----------------- the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided 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] 42 | pub fn comps(&self, ray: &Ray) -> IntersectionComps<'_> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/types/world.rs:19:22 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn intersect(&self, ray: &Ray) -> Vec { [INFO] [stdout] | ^^^^^ ------------ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided 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] 19 | pub fn intersect(&self, ray: &Ray) -> Vec> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 18.59s [INFO] running `Command { std: "docker" "inspect" "74b523f752c74ef8559203599c5106e2bbe55e36fb69050f231974eb3e14dd4e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "74b523f752c74ef8559203599c5106e2bbe55e36fb69050f231974eb3e14dd4e", kill_on_drop: false }` [INFO] [stdout] 74b523f752c74ef8559203599c5106e2bbe55e36fb69050f231974eb3e14dd4e