[INFO] cloning repository https://github.com/mattboran/RustRT [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mattboran/RustRT" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmattboran%2FRustRT", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmattboran%2FRustRT'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] acf5898a7404b60faaa955a19940f1be986fb871 [INFO] checking mattboran/RustRT against try#f47dd4da3ae8c32c9e65d307bfe640b143e674df for pr-77526 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmattboran%2FRustRT" "/workspace/builds/worker-9/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-9/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/mattboran/RustRT on toolchain f47dd4da3ae8c32c9e65d307bfe640b143e674df [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/mattboran/RustRT [INFO] finished tweaking git repo https://github.com/mattboran/RustRT [INFO] tweaked toml for git repo https://github.com/mattboran/RustRT written to /workspace/builds/worker-9/source/Cargo.toml [INFO] crate git repo https://github.com/mattboran/RustRT already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 96ac1cc0a0ab8e9e5489143a059a2dee072542e51e12e1730763c7ce114c545d [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "96ac1cc0a0ab8e9e5489143a059a2dee072542e51e12e1730763c7ce114c545d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "96ac1cc0a0ab8e9e5489143a059a2dee072542e51e12e1730763c7ce114c545d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "96ac1cc0a0ab8e9e5489143a059a2dee072542e51e12e1730763c7ce114c545d", kill_on_drop: false }` [INFO] [stdout] 96ac1cc0a0ab8e9e5489143a059a2dee072542e51e12e1730763c7ce114c545d [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+f47dd4da3ae8c32c9e65d307bfe640b143e674df" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9bb32bacfd93846de102ba5e4e8c43ac8974d381213991f7283753ed97ee5c83 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "9bb32bacfd93846de102ba5e4e8c43ac8974d381213991f7283753ed97ee5c83", kill_on_drop: false }` [INFO] [stderr] Checking libc v0.2.17 [INFO] [stderr] Checking rand v0.3.14 [INFO] [stderr] Checking raytracer v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/main.rs:67:19 [INFO] [stdout] | [INFO] [stdout] 67 | let mut img = try!(File::create("render.ppm")); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/main.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 68 | try!(img.write_all(b"Dicks ahoy!"));//TODO: insert function here inside [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Error` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::io::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::mem` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::mem; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ptr` [INFO] [stdout] --> src/main.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::ptr; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Closed01`, `random` [INFO] [stdout] --> src/main.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | use rand::{random, Closed01}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `vec3` should have an upper camel case name [INFO] [stdout] --> src/vec3.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct vec3{ [INFO] [stdout] | ^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Vec3` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `M_PI_2`, `M_PI`, `SAMPLES` [INFO] [stdout] --> src/geom.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use {vec3, ReflT, X_RES, Y_RES, SAMPLES, M_PI, M_PI_2, EPSILON}; [INFO] [stdout] | ^^^^^^^ ^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::mem` [INFO] [stdout] --> src/geom.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::mem; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/main.rs:67:19 [INFO] [stdout] | [INFO] [stdout] 67 | let mut img = try!(File::create("render.ppm")); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/main.rs:68:5 [INFO] [stdout] | [INFO] [stdout] 68 | try!(img.write_all(b"Dicks ahoy!"));//TODO: insert function here inside [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Error` [INFO] [stdout] --> src/main.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | use std::io::Error; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::mem` [INFO] [stdout] --> src/main.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::mem; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ptr` [INFO] [stdout] --> src/main.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::ptr; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Closed01`, `random` [INFO] [stdout] --> src/main.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | use rand::{random, Closed01}; [INFO] [stdout] | ^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `vec3` should have an upper camel case name [INFO] [stdout] --> src/vec3.rs:7:12 [INFO] [stdout] | [INFO] [stdout] 7 | pub struct vec3{ [INFO] [stdout] | ^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Vec3` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `M_PI_2`, `M_PI`, `SAMPLES` [INFO] [stdout] --> src/geom.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use {vec3, ReflT, X_RES, Y_RES, SAMPLES, M_PI, M_PI_2, EPSILON}; [INFO] [stdout] | ^^^^^^^ ^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::mem` [INFO] [stdout] --> src/geom.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use std::mem; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `geom::Intersectable` [INFO] [stdout] --> src/main.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use geom::Intersectable; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `img` [INFO] [stdout] --> src/main.rs:66:17 [INFO] [stdout] | [INFO] [stdout] 66 | fn write_to_ppm(img: &mut Vec) -> Result<(), WriteError>{ [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_img` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mkvec3` [INFO] [stdout] --> src/main.rs:78:9 [INFO] [stdout] | [INFO] [stdout] 78 | let mkvec3: fn(f64, f64, f64) -> vec3::vec3; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_mkvec3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mkray` [INFO] [stdout] --> src/main.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | let mkray: fn(vec3::vec3, vec3::vec3) -> geom::Ray; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_mkray` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mksphere` [INFO] [stdout] --> src/main.rs:84:9 [INFO] [stdout] | [INFO] [stdout] 84 | let mksphere: fn(vec3::vec3, f64) -> geom::Sphere; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mksphere` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mktri` [INFO] [stdout] --> src/main.rs:87:9 [INFO] [stdout] | [INFO] [stdout] 87 | let mktri: fn(vec3::vec3, vec3::vec3, vec3::vec3) -> geom::Triangle; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_mktri` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mkcam` [INFO] [stdout] --> src/main.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 90 | let mkcam: fn(vec3::vec3, vec3::vec3, vec3::vec3, vec3::vec3) -> geom::Camera; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_mkcam` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mkcam` [INFO] [stdout] --> src/main.rs:91:9 [INFO] [stdout] | [INFO] [stdout] 91 | let mkcam = geom::Camera::new; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_mkcam` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sph` [INFO] [stdout] --> src/main.rs:97:9 [INFO] [stdout] | [INFO] [stdout] 97 | let sph = mksphere(mkvec3(0.0, 1.0, 1.0), 0.5); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_sph` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `numpixels` [INFO] [stdout] --> src/main.rs:110:9 [INFO] [stdout] | [INFO] [stdout] 110 | let numpixels = (X_RES * Y_RES) as usize; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_numpixels` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `j` [INFO] [stdout] --> src/main.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | for j in 0..Y_RES{ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_j` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/main.rs:118:13 [INFO] [stdout] | [INFO] [stdout] 118 | for i in 0..X_RES{ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `this_pixel` [INFO] [stdout] --> src/main.rs:119:17 [INFO] [stdout] | [INFO] [stdout] 119 | let mut this_pixel = mkvec3(0.0, 0.0,0.0); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_this_pixel` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/main.rs:60:13 [INFO] [stdout] | [INFO] [stdout] 60 | fn from(e: std::io::Error) -> WriteError{ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dx` [INFO] [stdout] --> src/geom.rs:259:17 [INFO] [stdout] | [INFO] [stdout] 259 | let dx: f64 = r1.sqrt() - 1.0; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_dx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dx` [INFO] [stdout] --> src/geom.rs:261:17 [INFO] [stdout] | [INFO] [stdout] 261 | let dx: f64 = 1.0 - ((2.0 - r1).sqrt()); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_dx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dy` [INFO] [stdout] --> src/geom.rs:264:17 [INFO] [stdout] | [INFO] [stdout] 264 | let dy: f64 = r2.sqrt() - 1.0; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_dy` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dy` [INFO] [stdout] --> src/geom.rs:266:17 [INFO] [stdout] | [INFO] [stdout] 266 | let dy: f64 = 1.0 - ((2.0 - r1).sqrt()); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_dy` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `j` [INFO] [stdout] --> src/geom.rs:249:39 [INFO] [stdout] | [INFO] [stdout] 249 | pub fn compute_ray(&self, i: i32, j: i32) -> Ray{ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_j` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:119:17 [INFO] [stdout] | [INFO] [stdout] 119 | let mut this_pixel = mkvec3(0.0, 0.0,0.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: variable does not need to be mutable [INFO] [stdout] --> src/geom.rs:256:13 [INFO] [stdout] | [INFO] [stdout] 256 | let mut dx = 0.0; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/geom.rs:257:13 [INFO] [stdout] | [INFO] [stdout] 257 | let mut dy = 0.0; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `clamp` [INFO] [stdout] --> src/vec3.rs:102:8 [INFO] [stdout] | [INFO] [stdout] 102 | pub fn clamp(val: f64) -> f64{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gamma_correct` [INFO] [stdout] --> src/vec3.rs:114:8 [INFO] [stdout] | [INFO] [stdout] 114 | pub fn gamma_correct(input: f64) -> i32{ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `position` [INFO] [stdout] --> src/geom.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | position: vec3::vec3, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `direction` [INFO] [stdout] --> src/geom.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | direction: vec3::vec3, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `up` [INFO] [stdout] --> src/geom.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | up: vec3::vec3, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `right` [INFO] [stdout] --> src/geom.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | right: vec3::vec3 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `p` [INFO] [stdout] --> src/geom.rs:60:5 [INFO] [stdout] | [INFO] [stdout] 60 | p: [i32;3] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `compute_ray` [INFO] [stdout] --> src/geom.rs:249:12 [INFO] [stdout] | [INFO] [stdout] 249 | pub fn compute_ray(&self, i: i32, j: i32) -> Ray{ [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static is never used: `SAMPLES` [INFO] [stdout] --> src/main.rs:28:1 [INFO] [stdout] | [INFO] [stdout] 28 | static SAMPLES: i32 = 50; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static is never used: `USE_MULTI_THREADING` [INFO] [stdout] --> src/main.rs:29:1 [INFO] [stdout] | [INFO] [stdout] 29 | static USE_MULTI_THREADING: bool = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static is never used: `M_PI` [INFO] [stdout] --> src/main.rs:32:1 [INFO] [stdout] | [INFO] [stdout] 32 | static M_PI: f64 = 3.14159265359; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static is never used: `M_PI_2` [INFO] [stdout] --> src/main.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | static M_PI_2: f64 = 1.57079632679; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `geom::Intersectable` [INFO] [stdout] --> src/main.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | use geom::Intersectable; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `img` [INFO] [stdout] --> src/main.rs:66:17 [INFO] [stdout] | [INFO] [stdout] 66 | fn write_to_ppm(img: &mut Vec) -> Result<(), WriteError>{ [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_img` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mkvec3` [INFO] [stdout] --> src/main.rs:78:9 [INFO] [stdout] | [INFO] [stdout] 78 | let mkvec3: fn(f64, f64, f64) -> vec3::vec3; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_mkvec3` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mkray` [INFO] [stdout] --> src/main.rs:81:9 [INFO] [stdout] | [INFO] [stdout] 81 | let mkray: fn(vec3::vec3, vec3::vec3) -> geom::Ray; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_mkray` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mksphere` [INFO] [stdout] --> src/main.rs:84:9 [INFO] [stdout] | [INFO] [stdout] 84 | let mksphere: fn(vec3::vec3, f64) -> geom::Sphere; [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_mksphere` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mktri` [INFO] [stdout] --> src/main.rs:87:9 [INFO] [stdout] | [INFO] [stdout] 87 | let mktri: fn(vec3::vec3, vec3::vec3, vec3::vec3) -> geom::Triangle; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_mktri` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mkcam` [INFO] [stdout] --> src/main.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 90 | let mkcam: fn(vec3::vec3, vec3::vec3, vec3::vec3, vec3::vec3) -> geom::Camera; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_mkcam` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `mkcam` [INFO] [stdout] --> src/main.rs:91:9 [INFO] [stdout] | [INFO] [stdout] 91 | let mkcam = geom::Camera::new; [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_mkcam` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `sph` [INFO] [stdout] --> src/main.rs:97:9 [INFO] [stdout] | [INFO] [stdout] 97 | let sph = mksphere(mkvec3(0.0, 1.0, 1.0), 0.5); [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_sph` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `numpixels` [INFO] [stdout] --> src/main.rs:110:9 [INFO] [stdout] | [INFO] [stdout] 110 | let numpixels = (X_RES * Y_RES) as usize; [INFO] [stdout] | ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_numpixels` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `j` [INFO] [stdout] --> src/main.rs:117:9 [INFO] [stdout] | [INFO] [stdout] 117 | for j in 0..Y_RES{ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_j` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/main.rs:118:13 [INFO] [stdout] | [INFO] [stdout] 118 | for i in 0..X_RES{ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `this_pixel` [INFO] [stdout] --> src/main.rs:119:17 [INFO] [stdout] | [INFO] [stdout] 119 | let mut this_pixel = mkvec3(0.0, 0.0,0.0); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_this_pixel` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `e` [INFO] [stdout] --> src/main.rs:60:13 [INFO] [stdout] | [INFO] [stdout] 60 | fn from(e: std::io::Error) -> WriteError{ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_e` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dx` [INFO] [stdout] --> src/geom.rs:259:17 [INFO] [stdout] | [INFO] [stdout] 259 | let dx: f64 = r1.sqrt() - 1.0; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_dx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dx` [INFO] [stdout] --> src/geom.rs:261:17 [INFO] [stdout] | [INFO] [stdout] 261 | let dx: f64 = 1.0 - ((2.0 - r1).sqrt()); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_dx` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dy` [INFO] [stdout] --> src/geom.rs:264:17 [INFO] [stdout] | [INFO] [stdout] 264 | let dy: f64 = r2.sqrt() - 1.0; [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_dy` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `dy` [INFO] [stdout] --> src/geom.rs:266:17 [INFO] [stdout] | [INFO] [stdout] 266 | let dy: f64 = 1.0 - ((2.0 - r1).sqrt()); [INFO] [stdout] | ^^ help: if this is intentional, prefix it with an underscore: `_dy` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `j` [INFO] [stdout] --> src/geom.rs:249:39 [INFO] [stdout] | [INFO] [stdout] 249 | pub fn compute_ray(&self, i: i32, j: i32) -> Ray{ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_j` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:119:17 [INFO] [stdout] | [INFO] [stdout] 119 | let mut this_pixel = mkvec3(0.0, 0.0,0.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: variable does not need to be mutable [INFO] [stdout] --> src/geom.rs:256:13 [INFO] [stdout] | [INFO] [stdout] 256 | let mut dx = 0.0; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/geom.rs:257:13 [INFO] [stdout] | [INFO] [stdout] 257 | let mut dy = 0.0; [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `clamp` [INFO] [stdout] --> src/vec3.rs:102:8 [INFO] [stdout] | [INFO] [stdout] 102 | pub fn clamp(val: f64) -> f64{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `gamma_correct` [INFO] [stdout] --> src/vec3.rs:114:8 [INFO] [stdout] | [INFO] [stdout] 114 | pub fn gamma_correct(input: f64) -> i32{ [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `position` [INFO] [stdout] --> src/geom.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | position: vec3::vec3, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `direction` [INFO] [stdout] --> src/geom.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | direction: vec3::vec3, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `up` [INFO] [stdout] --> src/geom.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | up: vec3::vec3, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `right` [INFO] [stdout] --> src/geom.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | right: vec3::vec3 [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `p` [INFO] [stdout] --> src/geom.rs:60:5 [INFO] [stdout] | [INFO] [stdout] 60 | p: [i32;3] [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `compute_ray` [INFO] [stdout] --> src/geom.rs:249:12 [INFO] [stdout] | [INFO] [stdout] 249 | pub fn compute_ray(&self, i: i32, j: i32) -> Ray{ [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static is never used: `SAMPLES` [INFO] [stdout] --> src/main.rs:28:1 [INFO] [stdout] | [INFO] [stdout] 28 | static SAMPLES: i32 = 50; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static is never used: `USE_MULTI_THREADING` [INFO] [stdout] --> src/main.rs:29:1 [INFO] [stdout] | [INFO] [stdout] 29 | static USE_MULTI_THREADING: bool = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static is never used: `M_PI` [INFO] [stdout] --> src/main.rs:32:1 [INFO] [stdout] | [INFO] [stdout] 32 | static M_PI: f64 = 3.14159265359; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: static is never used: `M_PI_2` [INFO] [stdout] --> src/main.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | static M_PI_2: f64 = 1.57079632679; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:128:5 [INFO] [stdout] | [INFO] [stdout] 128 | write_to_ppm(&mut img); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `P` should have a snake case name [INFO] [stdout] --> src/geom.rs:174:13 [INFO] [stdout] | [INFO] [stdout] 174 | let P: vec3::vec3 = r.dir.cross(&edge2); [INFO] [stdout] | ^ help: convert the identifier to snake case: `p` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `T` should have a snake case name [INFO] [stdout] --> src/geom.rs:183:13 [INFO] [stdout] | [INFO] [stdout] 183 | let T: vec3::vec3 = r.origin - self.v0; [INFO] [stdout] | ^ help: convert the identifier to snake case: `t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Q` should have a snake case name [INFO] [stdout] --> src/geom.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 190 | let Q: vec3::vec3 = T.cross(&edge1); [INFO] [stdout] | ^ help: convert the identifier to snake case: `q` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `P` should have a snake case name [INFO] [stdout] --> src/geom.rs:211:13 [INFO] [stdout] | [INFO] [stdout] 211 | let P: vec3::vec3 = r.dir.cross(&edge2); [INFO] [stdout] | ^ help: convert the identifier to snake case: `p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `T` should have a snake case name [INFO] [stdout] --> src/geom.rs:220:13 [INFO] [stdout] | [INFO] [stdout] 220 | let T: vec3::vec3 = r.origin - self.v0; [INFO] [stdout] | ^ help: convert the identifier to snake case: `t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Q` should have a snake case name [INFO] [stdout] --> src/geom.rs:227:13 [INFO] [stdout] | [INFO] [stdout] 227 | let Q: vec3::vec3 = T.cross(&edge1); [INFO] [stdout] | ^ help: convert the identifier to snake case: `q` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `float_X_RES` should have a snake case name [INFO] [stdout] --> src/geom.rs:271:13 [INFO] [stdout] | [INFO] [stdout] 271 | let float_X_RES = X_RES as f64; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `float_x_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `float_Y_RES` should have a snake case name [INFO] [stdout] --> src/geom.rs:273:13 [INFO] [stdout] | [INFO] [stdout] 273 | let float_Y_RES = Y_RES as f64; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `float_y_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 52 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `std::result::Result` that must be used [INFO] [stdout] --> src/main.rs:128:5 [INFO] [stdout] | [INFO] [stdout] 128 | write_to_ppm(&mut img); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `P` should have a snake case name [INFO] [stdout] --> src/geom.rs:174:13 [INFO] [stdout] | [INFO] [stdout] 174 | let P: vec3::vec3 = r.dir.cross(&edge2); [INFO] [stdout] | ^ help: convert the identifier to snake case: `p` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `T` should have a snake case name [INFO] [stdout] --> src/geom.rs:183:13 [INFO] [stdout] | [INFO] [stdout] 183 | let T: vec3::vec3 = r.origin - self.v0; [INFO] [stdout] | ^ help: convert the identifier to snake case: `t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Q` should have a snake case name [INFO] [stdout] --> src/geom.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 190 | let Q: vec3::vec3 = T.cross(&edge1); [INFO] [stdout] | ^ help: convert the identifier to snake case: `q` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `P` should have a snake case name [INFO] [stdout] --> src/geom.rs:211:13 [INFO] [stdout] | [INFO] [stdout] 211 | let P: vec3::vec3 = r.dir.cross(&edge2); [INFO] [stdout] | ^ help: convert the identifier to snake case: `p` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `T` should have a snake case name [INFO] [stdout] --> src/geom.rs:220:13 [INFO] [stdout] | [INFO] [stdout] 220 | let T: vec3::vec3 = r.origin - self.v0; [INFO] [stdout] | ^ help: convert the identifier to snake case: `t` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `Q` should have a snake case name [INFO] [stdout] --> src/geom.rs:227:13 [INFO] [stdout] | [INFO] [stdout] 227 | let Q: vec3::vec3 = T.cross(&edge1); [INFO] [stdout] | ^ help: convert the identifier to snake case: `q` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `float_X_RES` should have a snake case name [INFO] [stdout] --> src/geom.rs:271:13 [INFO] [stdout] | [INFO] [stdout] 271 | let float_X_RES = X_RES as f64; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `float_x_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `float_Y_RES` should have a snake case name [INFO] [stdout] --> src/geom.rs:273:13 [INFO] [stdout] | [INFO] [stdout] 273 | let float_Y_RES = Y_RES as f64; [INFO] [stdout] | ^^^^^^^^^^^ help: convert the identifier to snake case: `float_y_res` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 52 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2.30s [INFO] running `Command { std: "docker" "inspect" "9bb32bacfd93846de102ba5e4e8c43ac8974d381213991f7283753ed97ee5c83", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9bb32bacfd93846de102ba5e4e8c43ac8974d381213991f7283753ed97ee5c83", kill_on_drop: false }` [INFO] [stdout] 9bb32bacfd93846de102ba5e4e8c43ac8974d381213991f7283753ed97ee5c83