[INFO] cloning repository https://github.com/jimmiejams/raytracer [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jimmiejams/raytracer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjimmiejams%2Fraytracer", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjimmiejams%2Fraytracer'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 76adb3ee34647f2b48f345f71a2194bce6f5e7ef [INFO] testing jimmiejams/raytracer against master#caccb4d0368bd918ef6668af8e13834d07040417 for pr-146098-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjimmiejams%2Fraytracer" "/workspace/builds/worker-0-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/jimmiejams/raytracer [INFO] finished tweaking git repo https://github.com/jimmiejams/raytracer [INFO] tweaked toml for git repo https://github.com/jimmiejams/raytracer written to /workspace/builds/worker-0-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/jimmiejams/raytracer on toolchain caccb4d0368bd918ef6668af8e13834d07040417 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+caccb4d0368bd918ef6668af8e13834d07040417" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/jimmiejams/raytracer 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" "+caccb4d0368bd918ef6668af8e13834d07040417" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded zerocopy-derive v0.8.0-alpha.6 [INFO] [stderr] Downloaded indicatif v0.17.8 [INFO] [stderr] Downloaded rand_core v0.9.0-alpha.1 [INFO] [stderr] Downloaded bytemuck v1.15.0 [INFO] [stderr] Downloaded thiserror v1.0.58 [INFO] [stderr] Downloaded built v0.7.1 [INFO] [stderr] Downloaded plotters-backend v0.3.5 [INFO] [stderr] Downloaded jobserver v0.1.28 [INFO] [stderr] Downloaded bitstream-io v2.2.0 [INFO] [stderr] Downloaded crc32fast v1.4.0 [INFO] [stderr] Downloaded image-webp v0.1.1 [INFO] [stderr] Downloaded serde v1.0.198 [INFO] [stderr] Downloaded plotters v0.3.5 [INFO] [stderr] Downloaded serde_derive v1.0.198 [INFO] [stderr] Downloaded winnow v0.6.5 [INFO] [stderr] Downloaded bumpalo v3.15.4 [INFO] [stderr] Downloaded half v2.4.0 [INFO] [stderr] Downloaded zerocopy v0.8.0-alpha.6 [INFO] [stderr] Downloaded serde_json v1.0.116 [INFO] [stderr] Downloaded portable-atomic v1.6.0 [INFO] [stderr] Downloaded rand v0.9.0-alpha.1 [INFO] [stderr] Downloaded toml v0.8.12 [INFO] [stderr] Downloaded anyhow v1.0.81 [INFO] [stderr] Downloaded toml_edit v0.22.9 [INFO] [stderr] Downloaded target-lexicon v0.12.14 [INFO] [stderr] Downloaded cfg-expr v0.15.7 [INFO] [stderr] Downloaded ravif v0.11.5 [INFO] [stderr] Downloaded thiserror-impl v1.0.58 [INFO] [stderr] Downloaded autocfg v1.2.0 [INFO] [stderr] Downloaded plotters-svg v0.3.5 [INFO] [stderr] Downloaded rand_chacha v0.9.0-alpha.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "+caccb4d0368bd918ef6668af8e13834d07040417" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 87cd25ef2e5c2446bc8b22f9ee8409352d5c4435693cab219f22181425fa441c [INFO] running `Command { std: "docker" "start" "-a" "87cd25ef2e5c2446bc8b22f9ee8409352d5c4435693cab219f22181425fa441c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "87cd25ef2e5c2446bc8b22f9ee8409352d5c4435693cab219f22181425fa441c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "87cd25ef2e5c2446bc8b22f9ee8409352d5c4435693cab219f22181425fa441c", kill_on_drop: false }` [INFO] [stdout] 87cd25ef2e5c2446bc8b22f9ee8409352d5c4435693cab219f22181425fa441c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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" "-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" "+caccb4d0368bd918ef6668af8e13834d07040417" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3033379bd37679f3841bdc502eeb3818a9989773eae0e8739ecb917ed1d9e080 [INFO] running `Command { std: "docker" "start" "-a" "3033379bd37679f3841bdc502eeb3818a9989773eae0e8739ecb917ed1d9e080", kill_on_drop: false }` [INFO] [stderr] Compiling autocfg v1.2.0 [INFO] [stderr] Compiling proc-macro2 v1.0.79 [INFO] [stderr] Compiling libc v0.2.153 [INFO] [stderr] Compiling crossbeam-utils v0.8.19 [INFO] [stderr] Compiling anyhow v1.0.81 [INFO] [stderr] Compiling thiserror v1.0.58 [INFO] [stderr] Compiling either v1.10.0 [INFO] [stderr] Compiling crc32fast v1.4.0 [INFO] [stderr] Compiling memchr v2.7.1 [INFO] [stderr] Compiling aligned-vec v0.5.0 [INFO] [stderr] Compiling zerocopy v0.8.0-alpha.6 [INFO] [stderr] Compiling miniz_oxide v0.7.2 [INFO] [stderr] Compiling built v0.7.1 [INFO] [stderr] Compiling paste v1.0.14 [INFO] [stderr] Compiling arrayvec v0.7.4 [INFO] [stderr] Compiling bytemuck v1.15.0 [INFO] [stderr] Compiling utf8parse v0.2.1 [INFO] [stderr] Compiling itertools v0.12.1 [INFO] [stderr] Compiling anstyle-parse v0.2.3 [INFO] [stderr] Compiling anstyle v1.0.6 [INFO] [stderr] Compiling anstyle-query v1.0.2 [INFO] [stderr] Compiling noop_proc_macro v0.3.0 [INFO] [stderr] Compiling num-traits v0.2.18 [INFO] [stderr] Compiling num-bigint v0.4.4 [INFO] [stderr] Compiling num-rational v0.4.1 [INFO] [stderr] Compiling lock_api v0.4.11 [INFO] [stderr] Compiling rav1e v0.7.1 [INFO] [stderr] Compiling imgref v1.10.1 [INFO] [stderr] Compiling flate2 v1.0.28 [INFO] [stderr] Compiling crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling portable-atomic v1.6.0 [INFO] [stderr] Compiling quote v1.0.35 [INFO] [stderr] Compiling new_debug_unreachable v1.0.6 [INFO] [stderr] Compiling bitstream-io v2.2.0 [INFO] [stderr] Compiling colorchoice v1.0.0 [INFO] [stderr] Compiling loop9 v0.1.5 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Compiling spin v0.9.8 [INFO] [stderr] Compiling anstream v0.6.13 [INFO] [stderr] Compiling syn v2.0.55 [INFO] [stderr] Compiling rgb v0.8.37 [INFO] [stderr] Compiling crossbeam-deque v0.8.5 [INFO] [stderr] Compiling simd_helpers v0.1.0 [INFO] [stderr] Compiling flume v0.11.0 [INFO] [stderr] Compiling avif-serialize v0.8.1 [INFO] [stderr] Compiling half v2.4.0 [INFO] [stderr] Compiling quick-error v2.0.1 [INFO] [stderr] Compiling getrandom v0.2.12 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Compiling unicode-width v0.1.11 [INFO] [stderr] Compiling zune-core v0.4.12 [INFO] [stderr] Compiling clap_lex v0.7.0 [INFO] [stderr] Compiling smallvec v1.13.2 [INFO] [stderr] Compiling tiff v0.9.1 [INFO] [stderr] Compiling png v0.17.13 [INFO] [stderr] Compiling console v0.15.8 [INFO] [stderr] Compiling qoi v0.4.1 [INFO] [stderr] Compiling zune-jpeg v0.4.11 [INFO] [stderr] Compiling clap_builder v4.5.2 [INFO] [stderr] Compiling rand_core v0.9.0-alpha.1 [INFO] [stderr] Compiling number_prefix v0.4.0 [INFO] [stderr] Compiling rayon v1.10.0 [INFO] [stderr] Compiling exr v1.72.0 [INFO] [stderr] Compiling rand_chacha v0.9.0-alpha.1 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling v_frame v0.3.8 [INFO] [stderr] Compiling rand v0.9.0-alpha.1 [INFO] [stderr] Compiling indicatif v0.17.8 [INFO] [stderr] Compiling av1-grain v0.2.3 [INFO] [stderr] Compiling maybe-rayon v0.1.1 [INFO] [stderr] Compiling thiserror-impl v1.0.58 [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 clap_derive v4.5.4 [INFO] [stderr] Compiling profiling v1.0.15 [INFO] [stderr] Compiling image-webp v0.1.1 [INFO] [stderr] Compiling clap v4.5.4 [INFO] [stderr] Compiling ravif v0.11.5 [INFO] [stderr] Compiling image v0.25.0 [INFO] [stderr] Compiling raytracer v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0583]: file not found for module `aabb` [INFO] [stdout] --> src/lib.rs:16:1 [INFO] [stdout] | [INFO] [stdout] 16 | pub mod aabb; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: to create the module `aabb`, create file "src/aabb.rs" or "src/aabb/mod.rs" [INFO] [stdout] = note: if there is a `mod aabb` elsewhere in the crate already, import it with `use crate::...` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/hittable_list.rs:38:17 [INFO] [stdout] | [INFO] [stdout] 37 | let hit = match i { [INFO] [stdout] | - this expression has type `&Arc` [INFO] [stdout] 38 | HittableObject::Sphere(s) => s.hit(r, &Interval::new(ray_t.min, closest_so_far)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Arc`, found `HittableObject` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Arc` [INFO] [stdout] found enum `HittableObject` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `(dyn Hittable + 'static)` cannot be shared between threads safely [INFO] [stdout] --> src/raytracer.rs:73:77 [INFO] [stdout] | [INFO] [stdout] 73 | (0..self.output_image_params.image_height).into_par_iter().for_each(|y| { [INFO] [stdout] | ____________________________________________________________________--------_^ [INFO] [stdout] | | | [INFO] [stdout] | | required by a bound introduced by this call [INFO] [stdout] 74 | | for x in 0..self.output_image_params.image_width { [INFO] [stdout] 75 | | let mut pixel_colour: Colour = Colour::new(0.0, 0.0, 0.0); [INFO] [stdout] 76 | | for _ in 0..self.output_image_params.samples_per_pixel { [INFO] [stdout] ... | [INFO] [stdout] 83 | | pb.inc(1); [INFO] [stdout] 84 | | }); [INFO] [stdout] | |_________^ `(dyn Hittable + 'static)` cannot be shared between threads safely [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sync` is not implemented for `(dyn Hittable + 'static)` [INFO] [stdout] = note: required for `Arc<(dyn Hittable + 'static)>` to implement `Sync` [INFO] [stdout] note: required because it appears within the type `PhantomData>` [INFO] [stdout] --> /rustc/caccb4d0368bd918ef6668af8e13834d07040417/library/core/src/marker.rs:822:12 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec>` [INFO] [stdout] --> /rustc/caccb4d0368bd918ef6668af8e13834d07040417/library/alloc/src/raw_vec/mod.rs:74:19 [INFO] [stdout] note: required because it appears within the type `Vec>` [INFO] [stdout] --> /rustc/caccb4d0368bd918ef6668af8e13834d07040417/library/alloc/src/vec/mod.rs:434:12 [INFO] [stdout] note: required because it appears within the type `HittableList` [INFO] [stdout] --> src/hittable_list.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct HittableList { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] note: required because it appears within the type `Raytracer` [INFO] [stdout] --> src/raytracer.rs:49:12 [INFO] [stdout] | [INFO] [stdout] 49 | pub struct Raytracer { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] = note: required because it appears within the type `&Raytracer` [INFO] [stdout] note: required because it's used within this closure [INFO] [stdout] --> src/raytracer.rs:73:77 [INFO] [stdout] | [INFO] [stdout] 73 | (0..self.output_image_params.image_height).into_par_iter().for_each(|y| { [INFO] [stdout] | ^^^ [INFO] [stdout] note: required by a bound in `rayon::iter::ParallelIterator::for_each` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-1.10.0/src/iter/mod.rs:384:30 [INFO] [stdout] | [INFO] [stdout] 382 | fn for_each(self, op: OP) [INFO] [stdout] | -------- required by a bound in this associated function [INFO] [stdout] 383 | where [INFO] [stdout] 384 | OP: Fn(Self::Item) + Sync + Send, [INFO] [stdout] | ^^^^ required by this bound in `ParallelIterator::for_each` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `(dyn Hittable + 'static)` cannot be sent between threads safely [INFO] [stdout] --> src/raytracer.rs:73:77 [INFO] [stdout] | [INFO] [stdout] 73 | (0..self.output_image_params.image_height).into_par_iter().for_each(|y| { [INFO] [stdout] | ____________________________________________________________________--------_^ [INFO] [stdout] | | | [INFO] [stdout] | | required by a bound introduced by this call [INFO] [stdout] 74 | | for x in 0..self.output_image_params.image_width { [INFO] [stdout] 75 | | let mut pixel_colour: Colour = Colour::new(0.0, 0.0, 0.0); [INFO] [stdout] 76 | | for _ in 0..self.output_image_params.samples_per_pixel { [INFO] [stdout] ... | [INFO] [stdout] 83 | | pb.inc(1); [INFO] [stdout] 84 | | }); [INFO] [stdout] | |_________^ `(dyn Hittable + 'static)` cannot be sent between threads safely [INFO] [stdout] | [INFO] [stdout] = help: the trait `Send` is not implemented for `(dyn Hittable + 'static)` [INFO] [stdout] = note: required for `Arc<(dyn Hittable + 'static)>` to implement `Sync` [INFO] [stdout] note: required because it appears within the type `PhantomData>` [INFO] [stdout] --> /rustc/caccb4d0368bd918ef6668af8e13834d07040417/library/core/src/marker.rs:822:12 [INFO] [stdout] note: required because it appears within the type `alloc::raw_vec::RawVec>` [INFO] [stdout] --> /rustc/caccb4d0368bd918ef6668af8e13834d07040417/library/alloc/src/raw_vec/mod.rs:74:19 [INFO] [stdout] note: required because it appears within the type `Vec>` [INFO] [stdout] --> /rustc/caccb4d0368bd918ef6668af8e13834d07040417/library/alloc/src/vec/mod.rs:434:12 [INFO] [stdout] note: required because it appears within the type `HittableList` [INFO] [stdout] --> src/hittable_list.rs:13:12 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct HittableList { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] note: required because it appears within the type `Raytracer` [INFO] [stdout] --> src/raytracer.rs:49:12 [INFO] [stdout] | [INFO] [stdout] 49 | pub struct Raytracer { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] = note: required because it appears within the type `&Raytracer` [INFO] [stdout] note: required because it's used within this closure [INFO] [stdout] --> src/raytracer.rs:73:77 [INFO] [stdout] | [INFO] [stdout] 73 | (0..self.output_image_params.image_height).into_par_iter().for_each(|y| { [INFO] [stdout] | ^^^ [INFO] [stdout] note: required by a bound in `rayon::iter::ParallelIterator::for_each` [INFO] [stdout] --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/rayon-1.10.0/src/iter/mod.rs:384:30 [INFO] [stdout] | [INFO] [stdout] 382 | fn for_each(self, op: OP) [INFO] [stdout] | -------- required by a bound in this associated function [INFO] [stdout] 383 | where [INFO] [stdout] 384 | OP: Fn(Self::Item) + Sync + Send, [INFO] [stdout] | ^^^^ required by this bound in `ParallelIterator::for_each` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/random_world.rs:15:24 [INFO] [stdout] | [INFO] [stdout] 15 | world.objects.push(HittableObject::Sphere(Sphere::new(Vec3::new(0.0, -1000.0, 0.0), 1000.0, Arc::clone(&material_ground)))); [INFO] [stdout] | ---- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `Arc`, found `HittableObject` [INFO] [stdout] | | [INFO] [stdout] | arguments to this method are incorrect [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Arc<(dyn Hittable + 'static)>` [INFO] [stdout] found enum `HittableObject` [INFO] [stdout] note: method defined here [INFO] [stdout] --> /rustc/caccb4d0368bd918ef6668af8e13834d07040417/library/alloc/src/vec/mod.rs:2544:12 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/random_world.rs:31:25 [INFO] [stdout] | [INFO] [stdout] 30 | world.objects.push( [INFO] [stdout] | ---- arguments to this method are incorrect [INFO] [stdout] 31 | / HittableObject::Sphere( [INFO] [stdout] 32 | | Sphere::new_moving(centre, centre2, 0.2, Arc::clone(&sphere_material)) [INFO] [stdout] 33 | | ) [INFO] [stdout] | |_________________________^ expected `Arc`, found `HittableObject` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Arc<(dyn Hittable + 'static)>` [INFO] [stdout] found enum `HittableObject` [INFO] [stdout] note: method defined here [INFO] [stdout] --> /rustc/caccb4d0368bd918ef6668af8e13834d07040417/library/alloc/src/vec/mod.rs:2544:12 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/random_world.rs:40:25 [INFO] [stdout] | [INFO] [stdout] 39 | world.objects.push( [INFO] [stdout] | ---- arguments to this method are incorrect [INFO] [stdout] 40 | / HittableObject::Sphere( [INFO] [stdout] 41 | | Sphere::new(centre, 0.2, Arc::clone(&sphere_material)) [INFO] [stdout] 42 | | ) [INFO] [stdout] | |_________________________^ expected `Arc`, found `HittableObject` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Arc<(dyn Hittable + 'static)>` [INFO] [stdout] found enum `HittableObject` [INFO] [stdout] note: method defined here [INFO] [stdout] --> /rustc/caccb4d0368bd918ef6668af8e13834d07040417/library/alloc/src/vec/mod.rs:2544:12 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/random_world.rs:47:25 [INFO] [stdout] | [INFO] [stdout] 46 | world.objects.push( [INFO] [stdout] | ---- arguments to this method are incorrect [INFO] [stdout] 47 | / HittableObject::Sphere( [INFO] [stdout] 48 | | Sphere::new(centre, 0.2, Arc::clone(&sphere_material)) [INFO] [stdout] 49 | | ) [INFO] [stdout] | |_________________________^ expected `Arc`, found `HittableObject` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Arc<(dyn Hittable + 'static)>` [INFO] [stdout] found enum `HittableObject` [INFO] [stdout] note: method defined here [INFO] [stdout] --> /rustc/caccb4d0368bd918ef6668af8e13834d07040417/library/alloc/src/vec/mod.rs:2544:12 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/random_world.rs:58:9 [INFO] [stdout] | [INFO] [stdout] 57 | world.objects.push( [INFO] [stdout] | ---- arguments to this method are incorrect [INFO] [stdout] 58 | / HittableObject::Sphere( [INFO] [stdout] 59 | | Sphere::new(Vec3::new(0.0, 1.0, 0.0), 1.0, Arc::clone(&material1)) [INFO] [stdout] 60 | | ) [INFO] [stdout] | |_________^ expected `Arc`, found `HittableObject` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Arc<(dyn Hittable + 'static)>` [INFO] [stdout] found enum `HittableObject` [INFO] [stdout] note: method defined here [INFO] [stdout] --> /rustc/caccb4d0368bd918ef6668af8e13834d07040417/library/alloc/src/vec/mod.rs:2544:12 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/random_world.rs:65:9 [INFO] [stdout] | [INFO] [stdout] 64 | world.objects.push( [INFO] [stdout] | ---- arguments to this method are incorrect [INFO] [stdout] 65 | / HittableObject::Sphere( [INFO] [stdout] 66 | | Sphere::new(Vec3::new(-4.0, 1.0, 0.0), 1.0, Arc::clone(&material2)) [INFO] [stdout] 67 | | ) [INFO] [stdout] | |_________^ expected `Arc`, found `HittableObject` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Arc<(dyn Hittable + 'static)>` [INFO] [stdout] found enum `HittableObject` [INFO] [stdout] note: method defined here [INFO] [stdout] --> /rustc/caccb4d0368bd918ef6668af8e13834d07040417/library/alloc/src/vec/mod.rs:2544:12 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/random_world.rs:72:9 [INFO] [stdout] | [INFO] [stdout] 71 | world.objects.push( [INFO] [stdout] | ---- arguments to this method are incorrect [INFO] [stdout] 72 | / HittableObject::Sphere( [INFO] [stdout] 73 | | Sphere::new(Vec3::new(4.0, 1.0, 0.0), 1.0, Arc::clone(&material3)) [INFO] [stdout] 74 | | ) [INFO] [stdout] | |_________^ expected `Arc`, found `HittableObject` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Arc<(dyn Hittable + 'static)>` [INFO] [stdout] found enum `HittableObject` [INFO] [stdout] note: method defined here [INFO] [stdout] --> /rustc/caccb4d0368bd918ef6668af8e13834d07040417/library/alloc/src/vec/mod.rs:2544:12 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the trait bound `BVHNode: std::default::Default` is not satisfied [INFO] [stdout] --> src/bvh_node.rs:22:37 [INFO] [stdout] | [INFO] [stdout] 22 | let mut new_node: BVHNode = Default::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ unsatisfied trait bound [INFO] [stdout] | [INFO] [stdout] help: the trait `std::default::Default` is not implemented for `BVHNode` [INFO] [stdout] --> src/bvh_node.rs:10:1 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct BVHNode { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `bounding_box` found for struct `Arc` in the current scope [INFO] [stdout] --> src/bvh_node.rs:36:41 [INFO] [stdout] | [INFO] [stdout] 36 | let a_axis_interval = a.bounding_box().axis_interval(axis); [INFO] [stdout] | ^^^^^^^^^^^^ method not found in `Arc` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] note: `Hittable` defines an item `bounding_box`, perhaps you need to implement it [INFO] [stdout] --> src/hittable.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | pub trait Hittable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `bounding_box` found for struct `Arc` in the current scope [INFO] [stdout] --> src/bvh_node.rs:37:41 [INFO] [stdout] | [INFO] [stdout] 37 | let b_axis_interval = b.bounding_box().axis_interval(axis); [INFO] [stdout] | ^^^^^^^^^^^^ method not found in `Arc` [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] note: `Hittable` defines an item `bounding_box`, perhaps you need to implement it [INFO] [stdout] --> src/hittable.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | pub trait Hittable { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/bvh_node.rs:40:61 [INFO] [stdout] | [INFO] [stdout] 40 | let objects_slice: &mut [Arc] = &mut world.objects[start..end]; [INFO] [stdout] | -------------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `&mut [Arc]`, found `&mut [Arc]` [INFO] [stdout] | | [INFO] [stdout] | expected due to this [INFO] [stdout] | [INFO] [stdout] = note: expected mutable reference `&mut [Arc]` [INFO] [stdout] found mutable reference `&mut [Arc<(dyn Hittable + 'static)>]` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0631]: type mismatch in closure arguments [INFO] [stdout] --> src/bvh_node.rs:41:35 [INFO] [stdout] | [INFO] [stdout] 35 | let sort_by = |a: Arc, b: Arc| { [INFO] [stdout] | ------------------------------------------------ found signature defined here [INFO] [stdout] ... [INFO] [stdout] 41 | objects_slice.sort_by(sort_by); [INFO] [stdout] | ------- ^^^^^^^ expected due to this [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = note: expected closure signature `for<'a, 'b> fn(&'a Arc<_>, &'b Arc<_>) -> _` [INFO] [stdout] found closure signature `fn(Arc<_>, Arc<_>) -> _` [INFO] [stdout] note: required by a bound in `std::slice::::sort_by` [INFO] [stdout] --> /rustc/caccb4d0368bd918ef6668af8e13834d07040417/library/alloc/src/slice.rs:190:5 [INFO] [stdout] help: consider wrapping the function in a closure [INFO] [stdout] | [INFO] [stdout] 41 | objects_slice.sort_by(|arg0: &Arc, arg1: &Arc| sort_by(*arg0, *arg1)); [INFO] [stdout] | ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++ [INFO] [stdout] help: consider adjusting the signature so it borrows its arguments [INFO] [stdout] | [INFO] [stdout] 35 | let sort_by = |a: &Arc, b: &Arc| { [INFO] [stdout] | + + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `left` found for reference `&BVHNode` in the current scope [INFO] [stdout] --> src/bvh_node.rs:56:29 [INFO] [stdout] | [INFO] [stdout] 56 | let hit_left = self.left(&r, &ray_t); [INFO] [stdout] | ^^^^------------ help: remove the arguments [INFO] [stdout] | | [INFO] [stdout] | field, not a method [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following trait defines an item `left`, perhaps you need to implement it: [INFO] [stdout] candidate #1: `itertools::merge_join::OrderingOrBool` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `right` found for reference `&BVHNode` in the current scope [INFO] [stdout] --> src/bvh_node.rs:58:30 [INFO] [stdout] | [INFO] [stdout] 58 | let hit_right = self.right(&r, &right_ray); [INFO] [stdout] | ^^^^^---------------- help: remove the arguments [INFO] [stdout] | | [INFO] [stdout] | field, not a method [INFO] [stdout] | [INFO] [stdout] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stdout] = note: the following trait defines an item `right`, perhaps you need to implement it: [INFO] [stdout] candidate #1: `itertools::merge_join::OrderingOrBool` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0277, E0308, E0583, E0599, E0631. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0277`. [INFO] [stdout] [INFO] [stderr] error: could not compile `raytracer` (lib) due to 18 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] running `Command { std: "docker" "inspect" "3033379bd37679f3841bdc502eeb3818a9989773eae0e8739ecb917ed1d9e080", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3033379bd37679f3841bdc502eeb3818a9989773eae0e8739ecb917ed1d9e080", kill_on_drop: false }` [INFO] [stdout] 3033379bd37679f3841bdc502eeb3818a9989773eae0e8739ecb917ed1d9e080