[INFO] cloning repository https://github.com/wormtql/vertin
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/wormtql/vertin" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwormtql%2Fvertin", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwormtql%2Fvertin'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a551583e55c66b5bb2dd9daa1251ffce7f977d5b
[INFO] testing wormtql/vertin/a551583e55c66b5bb2dd9daa1251ffce7f977d5b against master#d98a5da813da67eb189387b8ccfb73cf481275d8+rustflags=-Copt-level=3 for pr-138759
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fwormtql%2Fvertin" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/wormtql/vertin
[INFO] finished tweaking git repo https://github.com/wormtql/vertin
[INFO] tweaked toml for git repo https://github.com/wormtql/vertin written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/wormtql/vertin on toolchain d98a5da813da67eb189387b8ccfb73cf481275d8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/wormtql/vertin 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" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded avif-serialize v0.8.2
[INFO] [stderr]   Downloaded ravif v0.11.11
[INFO] [stderr]   Downloaded built v0.7.5
[INFO] [stderr]   Downloaded image-webp v0.2.0
[INFO] [stderr]   Downloaded anyhow v1.0.94
[INFO] [stderr]   Downloaded cgmath v0.18.0
[INFO] [stderr]   Downloaded png v0.17.15
[INFO] [stderr]   Downloaded libfuzzer-sys v0.4.8
[INFO] [stderr]   Downloaded image v0.25.5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bf49f597f85c5dac3048533b4fec32da4e566559be174eab30a4481faef9b365
[INFO] running `Command { std: "docker" "start" "-a" "bf49f597f85c5dac3048533b4fec32da4e566559be174eab30a4481faef9b365", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bf49f597f85c5dac3048533b4fec32da4e566559be174eab30a4481faef9b365", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bf49f597f85c5dac3048533b4fec32da4e566559be174eab30a4481faef9b365", kill_on_drop: false }`
[INFO] [stdout] bf49f597f85c5dac3048533b4fec32da4e566559be174eab30a4481faef9b365
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0e5c12f45db0cd30724bde77f7a29a8ef2dfa6b115ffac65d1f59cfee2359b0c
[INFO] running `Command { std: "docker" "start" "-a" "0e5c12f45db0cd30724bde77f7a29a8ef2dfa6b115ffac65d1f59cfee2359b0c", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.92
[INFO] [stderr]    Compiling unicode-ident v1.0.14
[INFO] [stderr]    Compiling crossbeam-utils v0.8.20
[INFO] [stderr]    Compiling libc v0.2.168
[INFO] [stderr]    Compiling simd-adler32 v0.3.7
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling anyhow v1.0.94
[INFO] [stderr]    Compiling either v1.13.0
[INFO] [stderr]    Compiling aligned-vec v0.5.0
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling built v0.7.5
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling log v0.4.22
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling miniz_oxide v0.8.0
[INFO] [stderr]    Compiling anstyle-parse v0.2.6
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.1
[INFO] [stderr]    Compiling quick-error v2.0.1
[INFO] [stderr]    Compiling colorchoice v1.0.3
[INFO] [stderr]    Compiling new_debug_unreachable v1.0.6
[INFO] [stderr]    Compiling v_frame v0.3.8
[INFO] [stderr]    Compiling anstyle v1.0.10
[INFO] [stderr]    Compiling bitstream-io v2.6.0
[INFO] [stderr]    Compiling anstyle-query v1.1.2
[INFO] [stderr]    Compiling noop_proc_macro v0.3.0
[INFO] [stderr]    Compiling once_cell v1.20.2
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]    Compiling weezl v0.1.8
[INFO] [stderr]    Compiling imgref v1.11.0
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling anstream v0.6.18
[INFO] [stderr]    Compiling avif-serialize v0.8.2
[INFO] [stderr]    Compiling flate2 v1.0.35
[INFO] [stderr]    Compiling loop9 v0.1.5
[INFO] [stderr]    Compiling fdeflate v0.3.7
[INFO] [stderr]    Compiling zune-inflate v0.2.54
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling rav1e v0.7.1
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling bytemuck v1.20.0
[INFO] [stderr]    Compiling crossbeam-deque v0.8.5
[INFO] [stderr]    Compiling syn v2.0.90
[INFO] [stderr]    Compiling getrandom v0.2.15
[INFO] [stderr]    Compiling color_quant v1.1.0
[INFO] [stderr]    Compiling rgb v0.8.50
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]    Compiling jpeg-decoder v0.3.1
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling clap_lex v0.7.4
[INFO] [stderr]    Compiling lebe v0.5.2
[INFO] [stderr]    Compiling cgmath v0.18.0
[INFO] [stderr]    Compiling bit_field v0.10.2
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling byteorder-lite v0.1.0
[INFO] [stderr]    Compiling zune-core v0.4.12
[INFO] [stderr]    Compiling clap_builder v4.5.23
[INFO] [stderr]    Compiling png v0.17.15
[INFO] [stderr]    Compiling gif v0.13.1
[INFO] [stderr]    Compiling rayon v1.10.0
[INFO] [stderr]    Compiling zune-jpeg v0.4.14
[INFO] [stderr]    Compiling image-webp v0.2.0
[INFO] [stderr]    Compiling exr v1.73.0
[INFO] [stderr]    Compiling qoi v0.4.1
[INFO] [stderr]    Compiling av1-grain v0.2.3
[INFO] [stderr]    Compiling tiff v0.9.1
[INFO] [stderr]    Compiling approx v0.4.0
[INFO] [stderr]    Compiling simd_helpers v0.1.0
[INFO] [stderr]    Compiling maybe-rayon v0.1.1
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling profiling-procmacros v1.0.16
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling arg_enum_proc_macro v0.3.4
[INFO] [stderr]    Compiling clap_derive v4.5.18
[INFO] [stderr]    Compiling profiling v1.0.16
[INFO] [stderr]    Compiling zerocopy v0.7.35
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling ppv-lite86 v0.2.20
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling clap v4.5.23
[INFO] [stderr]    Compiling ravif v0.11.11
[INFO] [stderr]    Compiling image v0.25.5
[INFO] [stderr]    Compiling vertin v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::math::reflect`
[INFO] [stdout]  --> src/math/ggx.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::math::reflect;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Rgb` and `RgbaImage`
[INFO] [stdout]  --> src/pbr/ibl.rs:2:26
[INFO] [stdout]   |
[INFO] [stdout] 2 | use image::{ImageBuffer, Rgb, Rgba, RgbaImage};
[INFO] [stdout]   |                          ^^^        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Rng` and `thread_rng`
[INFO] [stdout]  --> src/pbr/ibl.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rand::{Rng, thread_rng};
[INFO] [stdout]   |            ^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/math/ggx.rs:120:13
[INFO] [stdout]     |
[INFO] [stdout] 120 |         let mut wh = Vector3::new(self.roughness * w.x, self.roughness * w.y, w.z).normalize();
[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: `g1`
[INFO] [stdout]   --> src/pbr/ibl.rs:34:13
[INFO] [stdout]    |
[INFO] [stdout] 34 |         let g1 = ggx.g1(wo);
[INFO] [stdout]    |             ^^ help: if this is intentional, prefix it with an underscore: `_g1`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pdf`
[INFO] [stdout]   --> src/pbr/ibl.rs:44:34
[INFO] [stdout]    |
[INFO] [stdout] 44 |             let (sampled_normal, pdf) = ggx.importance_sample_normal(r1, r2);
[INFO] [stdout]    |                                  ^^^ help: if this is intentional, prefix it with an underscore: `_pdf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pdf`
[INFO] [stdout]   --> src/pbr/ibl.rs:86:34
[INFO] [stdout]    |
[INFO] [stdout] 86 |             let (sampled_normal, pdf) = ggx.importance_sample_visible_normal(wo, r1, r2);
[INFO] [stdout]    |                                  ^^^ help: if this is intentional, prefix it with an underscore: `_pdf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `g1`
[INFO] [stdout]   --> src/pbr/ibl.rs:98:17
[INFO] [stdout]    |
[INFO] [stdout] 98 |             let g1 = ggx.g1(wi);
[INFO] [stdout]    |                 ^^ help: if this is intentional, prefix it with an underscore: `_g1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/pbr/ibl.rs:88:17
[INFO] [stdout]    |
[INFO] [stdout] 88 |             let mut wi = reflect(wo, sampled_normal);
[INFO] [stdout]    |                 ----^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `f64_to_u8` is never used
[INFO] [stdout]    --> src/pbr/ibl.rs:113:8
[INFO] [stdout]     |
[INFO] [stdout] 15  | impl SchlickFresnelBaking {
[INFO] [stdout]     | ------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 113 |     fn f64_to_u8(v: f64) -> u8 {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `roughness`
[INFO] [stdout]  --> src/bin/playground.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let roughness = 63.5 / 64.0;
[INFO] [stdout]   |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_roughness`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 37s
[INFO] running `Command { std: "docker" "inspect" "0e5c12f45db0cd30724bde77f7a29a8ef2dfa6b115ffac65d1f59cfee2359b0c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0e5c12f45db0cd30724bde77f7a29a8ef2dfa6b115ffac65d1f59cfee2359b0c", kill_on_drop: false }`
[INFO] [stdout] 0e5c12f45db0cd30724bde77f7a29a8ef2dfa6b115ffac65d1f59cfee2359b0c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 981d1a44b0cf3b751f36069243d5dcbc84b6a76aba8325120b028a4d0c3ab001
[INFO] running `Command { std: "docker" "start" "-a" "981d1a44b0cf3b751f36069243d5dcbc84b6a76aba8325120b028a4d0c3ab001", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `crate::math::reflect`
[INFO] [stdout]  --> src/math/ggx.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::math::reflect;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling vertin v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `Rgb` and `RgbaImage`
[INFO] [stdout]  --> src/pbr/ibl.rs:2:26
[INFO] [stdout]   |
[INFO] [stdout] 2 | use image::{ImageBuffer, Rgb, Rgba, RgbaImage};
[INFO] [stdout]   |                          ^^^        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Rng` and `thread_rng`
[INFO] [stdout]  --> src/pbr/ibl.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rand::{Rng, thread_rng};
[INFO] [stdout]   |            ^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/math/ggx.rs:120:13
[INFO] [stdout]     |
[INFO] [stdout] 120 |         let mut wh = Vector3::new(self.roughness * w.x, self.roughness * w.y, w.z).normalize();
[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: `g1`
[INFO] [stdout]   --> src/pbr/ibl.rs:34:13
[INFO] [stdout]    |
[INFO] [stdout] 34 |         let g1 = ggx.g1(wo);
[INFO] [stdout]    |             ^^ help: if this is intentional, prefix it with an underscore: `_g1`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pdf`
[INFO] [stdout]   --> src/pbr/ibl.rs:44:34
[INFO] [stdout]    |
[INFO] [stdout] 44 |             let (sampled_normal, pdf) = ggx.importance_sample_normal(r1, r2);
[INFO] [stdout]    |                                  ^^^ help: if this is intentional, prefix it with an underscore: `_pdf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pdf`
[INFO] [stdout]   --> src/pbr/ibl.rs:86:34
[INFO] [stdout]    |
[INFO] [stdout] 86 |             let (sampled_normal, pdf) = ggx.importance_sample_visible_normal(wo, r1, r2);
[INFO] [stdout]    |                                  ^^^ help: if this is intentional, prefix it with an underscore: `_pdf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `g1`
[INFO] [stdout]   --> src/pbr/ibl.rs:98:17
[INFO] [stdout]    |
[INFO] [stdout] 98 |             let g1 = ggx.g1(wi);
[INFO] [stdout]    |                 ^^ help: if this is intentional, prefix it with an underscore: `_g1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/pbr/ibl.rs:88:17
[INFO] [stdout]    |
[INFO] [stdout] 88 |             let mut wi = reflect(wo, sampled_normal);
[INFO] [stdout]    |                 ----^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `f64_to_u8` is never used
[INFO] [stdout]    --> src/pbr/ibl.rs:113:8
[INFO] [stdout]     |
[INFO] [stdout] 15  | impl SchlickFresnelBaking {
[INFO] [stdout]     | ------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 113 |     fn f64_to_u8(v: f64) -> u8 {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::math::reflect`
[INFO] [stdout]  --> src/math/ggx.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::math::reflect;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Rgb` and `RgbaImage`
[INFO] [stdout]  --> src/pbr/ibl.rs:2:26
[INFO] [stdout]   |
[INFO] [stdout] 2 | use image::{ImageBuffer, Rgb, Rgba, RgbaImage};
[INFO] [stdout]   |                          ^^^        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Rng` and `thread_rng`
[INFO] [stdout]  --> src/pbr/ibl.rs:3:12
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rand::{Rng, thread_rng};
[INFO] [stdout]   |            ^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/math/ggx.rs:120:13
[INFO] [stdout]     |
[INFO] [stdout] 120 |         let mut wh = Vector3::new(self.roughness * w.x, self.roughness * w.y, w.z).normalize();
[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: `g1`
[INFO] [stdout]   --> src/pbr/ibl.rs:34:13
[INFO] [stdout]    |
[INFO] [stdout] 34 |         let g1 = ggx.g1(wo);
[INFO] [stdout]    |             ^^ help: if this is intentional, prefix it with an underscore: `_g1`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pdf`
[INFO] [stdout]   --> src/pbr/ibl.rs:44:34
[INFO] [stdout]    |
[INFO] [stdout] 44 |             let (sampled_normal, pdf) = ggx.importance_sample_normal(r1, r2);
[INFO] [stdout]    |                                  ^^^ help: if this is intentional, prefix it with an underscore: `_pdf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pdf`
[INFO] [stdout]   --> src/pbr/ibl.rs:86:34
[INFO] [stdout]    |
[INFO] [stdout] 86 |             let (sampled_normal, pdf) = ggx.importance_sample_visible_normal(wo, r1, r2);
[INFO] [stdout]    |                                  ^^^ help: if this is intentional, prefix it with an underscore: `_pdf`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `g1`
[INFO] [stdout]   --> src/pbr/ibl.rs:98:17
[INFO] [stdout]    |
[INFO] [stdout] 98 |             let g1 = ggx.g1(wi);
[INFO] [stdout]    |                 ^^ help: if this is intentional, prefix it with an underscore: `_g1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/pbr/ibl.rs:88:17
[INFO] [stdout]    |
[INFO] [stdout] 88 |             let mut wi = reflect(wo, sampled_normal);
[INFO] [stdout]    |                 ----^^
[INFO] [stdout]    |                 |
[INFO] [stdout]    |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `f64_to_u8` is never used
[INFO] [stdout]    --> src/pbr/ibl.rs:113:8
[INFO] [stdout]     |
[INFO] [stdout] 15  | impl SchlickFresnelBaking {
[INFO] [stdout]     | ------------------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 113 |     fn f64_to_u8(v: f64) -> u8 {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `roughness`
[INFO] [stdout]  --> src/bin/playground.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let roughness = 63.5 / 64.0;
[INFO] [stdout]   |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_roughness`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.20s
[INFO] running `Command { std: "docker" "inspect" "981d1a44b0cf3b751f36069243d5dcbc84b6a76aba8325120b028a4d0c3ab001", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "981d1a44b0cf3b751f36069243d5dcbc84b6a76aba8325120b028a4d0c3ab001", kill_on_drop: false }`
[INFO] [stdout] 981d1a44b0cf3b751f36069243d5dcbc84b6a76aba8325120b028a4d0c3ab001
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+d98a5da813da67eb189387b8ccfb73cf481275d8" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 770dc8419ee6937d2fbde6d3ef591deb37c5e7d9c04a1016f30f30bec72a7ff4
[INFO] running `Command { std: "docker" "start" "-a" "770dc8419ee6937d2fbde6d3ef591deb37c5e7d9c04a1016f30f30bec72a7ff4", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `crate::math::reflect`
[INFO] [stderr]  --> src/math/ggx.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::math::reflect;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Rgb` and `RgbaImage`
[INFO] [stderr]  --> src/pbr/ibl.rs:2:26
[INFO] [stderr]   |
[INFO] [stderr] 2 | use image::{ImageBuffer, Rgb, Rgba, RgbaImage};
[INFO] [stderr]   |                          ^^^        ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Rng` and `thread_rng`
[INFO] [stderr]  --> src/pbr/ibl.rs:3:12
[INFO] [stderr]   |
[INFO] [stderr] 3 | use rand::{Rng, thread_rng};
[INFO] [stderr]   |            ^^^  ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/math/ggx.rs:120:13
[INFO] [stderr]     |
[INFO] [stderr] 120 |         let mut wh = Vector3::new(self.roughness * w.x, self.roughness * w.y, w.z).normalize();
[INFO] [stderr]     |             ----^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `g1`
[INFO] [stderr]   --> src/pbr/ibl.rs:34:13
[INFO] [stderr]    |
[INFO] [stderr] 34 |         let g1 = ggx.g1(wo);
[INFO] [stderr]    |             ^^ help: if this is intentional, prefix it with an underscore: `_g1`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `pdf`
[INFO] [stderr]   --> src/pbr/ibl.rs:44:34
[INFO] [stderr]    |
[INFO] [stderr] 44 |             let (sampled_normal, pdf) = ggx.importance_sample_normal(r1, r2);
[INFO] [stderr]    |                                  ^^^ help: if this is intentional, prefix it with an underscore: `_pdf`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `pdf`
[INFO] [stderr]   --> src/pbr/ibl.rs:86:34
[INFO] [stderr]    |
[INFO] [stderr] 86 |             let (sampled_normal, pdf) = ggx.importance_sample_visible_normal(wo, r1, r2);
[INFO] [stderr]    |                                  ^^^ help: if this is intentional, prefix it with an underscore: `_pdf`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `g1`
[INFO] [stderr]   --> src/pbr/ibl.rs:98:17
[INFO] [stderr]    |
[INFO] [stderr] 98 |             let g1 = ggx.g1(wi);
[INFO] [stderr]    |                 ^^ help: if this is intentional, prefix it with an underscore: `_g1`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/pbr/ibl.rs:88:17
[INFO] [stderr]    |
[INFO] [stderr] 88 |             let mut wi = reflect(wo, sampled_normal);
[INFO] [stderr]    |                 ----^^
[INFO] [stderr]    |                 |
[INFO] [stderr]    |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `f64_to_u8` is never used
[INFO] [stderr]    --> src/pbr/ibl.rs:113:8
[INFO] [stderr]     |
[INFO] [stderr] 15  | impl SchlickFresnelBaking {
[INFO] [stderr]     | ------------------------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 113 |     fn f64_to_u8(v: f64) -> u8 {
[INFO] [stderr]     |        ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `vertin` (lib) generated 10 warnings (run `cargo fix --lib -p vertin` to apply 5 suggestions)
[INFO] [stderr] warning: `vertin` (lib test) generated 10 warnings (10 duplicates)
[INFO] [stderr] warning: unused variable: `roughness`
[INFO] [stderr]  --> src/bin/playground.rs:6:9
[INFO] [stderr]   |
[INFO] [stderr] 6 |     let roughness = 63.5 / 64.0;
[INFO] [stderr]   |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_roughness`
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `vertin` (bin "playground" test) generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.13s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/vertin-02d85b6c10a23a27)
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/ibl.rs (/opt/rustwide/target/debug/deps/ibl-ac6dba55a8950322)
[INFO] [stderr]      Running unittests src/bin/mlaa.rs (/opt/rustwide/target/debug/deps/mlaa-ccb16088389f33a0)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/playground.rs (/opt/rustwide/target/debug/deps/playground-8c1eb5e2afcebca5)
[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 vertin
[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" "770dc8419ee6937d2fbde6d3ef591deb37c5e7d9c04a1016f30f30bec72a7ff4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "770dc8419ee6937d2fbde6d3ef591deb37c5e7d9c04a1016f30f30bec72a7ff4", kill_on_drop: false }`
[INFO] [stdout] 770dc8419ee6937d2fbde6d3ef591deb37c5e7d9c04a1016f30f30bec72a7ff4
