[INFO] cloning repository https://github.com/AmityWilder/vector-art-program-1
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/AmityWilder/vector-art-program-1" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAmityWilder%2Fvector-art-program-1", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAmityWilder%2Fvector-art-program-1'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 8baeb9d8cc55f2efd7a586a652103178dcc4aed9
[INFO] building AmityWilder/vector-art-program-1 against master#c7f6aa2869acdbf014d094c6e427e554e160b6db for pr-146237-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAmityWilder%2Fvector-art-program-1" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/AmityWilder/vector-art-program-1
[INFO] finished tweaking git repo https://github.com/AmityWilder/vector-art-program-1
[INFO] tweaked toml for git repo https://github.com/AmityWilder/vector-art-program-1 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/AmityWilder/vector-art-program-1 on toolchain c7f6aa2869acdbf014d094c6e427e554e160b6db
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/AmityWilder/vector-art-program-1 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" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded quote v1.0.39
[INFO] [stderr]   Downloaded specs-derive v0.4.1
[INFO] [stderr]   Downloaded shred v0.10.2
[INFO] [stderr]   Downloaded mopa v0.2.2
[INFO] [stderr]   Downloaded arrayvec v0.5.2
[INFO] [stderr]   Downloaded raylib v5.0.2
[INFO] [stderr]   Downloaded shrev v1.1.3
[INFO] [stderr]   Downloaded nalgebra-macros v0.2.2
[INFO] [stderr]   Downloaded ahash v0.3.8
[INFO] [stderr]   Downloaded rawpointer v0.2.1
[INFO] [stderr]   Downloaded simba v0.9.0
[INFO] [stderr]   Downloaded safe_arch v0.7.4
[INFO] [stderr]   Downloaded wide v0.7.32
[INFO] [stderr]   Downloaded hashbrown v0.7.2
[INFO] [stderr]   Downloaded cc v1.2.16
[INFO] [stderr]   Downloaded specs v0.16.1
[INFO] [stderr]   Downloaded approx v0.4.0
[INFO] [stderr]   Downloaded prettyplease v0.2.30
[INFO] [stderr]   Downloaded num-complex v0.3.1
[INFO] [stderr]   Downloaded bindgen v0.69.5
[INFO] [stderr]   Downloaded syn v2.0.99
[INFO] [stderr]   Downloaded simba v0.4.0
[INFO] [stderr]   Downloaded redox_syscall v0.5.10
[INFO] [stderr]   Downloaded fs_extra v1.3.0
[INFO] [stderr]   Downloaded nalgebra v0.26.2
[INFO] [stderr]   Downloaded hibitset v0.6.4
[INFO] [stderr]   Downloaded log v0.4.26
[INFO] [stderr]   Downloaded matrixmultiply v0.3.9
[INFO] [stderr]   Downloaded nalgebra v0.33.2
[INFO] [stderr]   Downloaded crossbeam-utils v0.7.2
[INFO] [stderr]   Downloaded num-rational v0.3.2
[INFO] [stderr]   Downloaded libloading v0.8.6
[INFO] [stderr]   Downloaded which v4.4.2
[INFO] [stderr]   Downloaded cmake v0.1.54
[INFO] [stderr]   Downloaded crossbeam-queue v0.2.3
[INFO] [stderr]   Downloaded tynm v0.1.10
[INFO] [stderr]   Downloaded tuple_utils v0.3.0
[INFO] [stderr]   Downloaded libc v0.2.170
[INFO] [stderr]   Downloaded raylib-sys v5.0.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f993468e1cb1f89f62feea53e86b7326baee8f1e198ba06b9e9617a58e7c1dd3
[INFO] running `Command { std: "docker" "start" "-a" "f993468e1cb1f89f62feea53e86b7326baee8f1e198ba06b9e9617a58e7c1dd3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f993468e1cb1f89f62feea53e86b7326baee8f1e198ba06b9e9617a58e7c1dd3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f993468e1cb1f89f62feea53e86b7326baee8f1e198ba06b9e9617a58e7c1dd3", kill_on_drop: false }`
[INFO] [stdout] f993468e1cb1f89f62feea53e86b7326baee8f1e198ba06b9e9617a58e7c1dd3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 999d1fe3f10029055ea2b17d76db9e323b30a000f2a8613f67032da08c492d5b
[INFO] running `Command { std: "docker" "start" "-a" "999d1fe3f10029055ea2b17d76db9e323b30a000f2a8613f67032da08c492d5b", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.94
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling glob v0.3.2
[INFO] [stderr]    Compiling prettyplease v0.2.30
[INFO] [stderr]    Compiling libc v0.2.170
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]    Compiling linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling bitflags v2.9.0
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling libloading v0.8.6
[INFO] [stderr]    Compiling serde v1.0.217
[INFO] [stderr]    Compiling home v0.5.11
[INFO] [stderr]    Compiling bindgen v0.69.5
[INFO] [stderr]    Compiling log v0.4.26
[INFO] [stderr]    Compiling itertools v0.12.1
[INFO] [stderr]    Compiling cc v1.2.16
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling matrixmultiply v0.3.9
[INFO] [stderr]    Compiling hashbrown v0.7.2
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]    Compiling smallvec v1.14.0
[INFO] [stderr]    Compiling lazycell v1.3.0
[INFO] [stderr]    Compiling clang-sys v1.8.1
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling num-rational v0.3.2
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling bytemuck v1.22.0
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling ahash v0.3.8
[INFO] [stderr]    Compiling rawpointer v0.2.1
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling quote v1.0.39
[INFO] [stderr]    Compiling safe_arch v0.7.4
[INFO] [stderr]    Compiling syn v2.0.99
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-complex v0.3.1
[INFO] [stderr]    Compiling approx v0.4.0
[INFO] [stderr]    Compiling arrayvec v0.5.2
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling cmake v0.1.54
[INFO] [stderr]    Compiling mopa v0.2.2
[INFO] [stderr]    Compiling wide v0.7.32
[INFO] [stderr]    Compiling approx v0.5.1
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling crossbeam-queue v0.2.3
[INFO] [stderr]    Compiling tuple_utils v0.3.0
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling simba v0.4.0
[INFO] [stderr]    Compiling hibitset v0.6.4
[INFO] [stderr]    Compiling shrev v1.1.3
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]    Compiling specs-derive v0.4.1
[INFO] [stderr]    Compiling which v4.4.2
[INFO] [stderr]    Compiling tynm v0.1.10
[INFO] [stderr]    Compiling simba v0.9.0
[INFO] [stderr]    Compiling shred v0.10.2
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling specs v0.16.1
[INFO] [stderr]    Compiling serde_derive v1.0.217
[INFO] [stderr]    Compiling nalgebra-macros v0.2.2
[INFO] [stderr]    Compiling nalgebra v0.26.2
[INFO] [stderr]    Compiling nalgebra v0.33.2
[INFO] [stderr]    Compiling raylib-sys v5.0.2
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling raylib v5.0.2
[INFO] [stderr]    Compiling vector-art-program-1 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `WeakWidthProfile`
[INFO] [stdout]  --> src/editor.rs:4:77
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::{curve::WeakCurve, document::Document, style::{Style, WeakStyle, WeakWidthProfile}};
[INFO] [stdout]   |                                                                             ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `let_chains` has been stable since 1.88.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/main.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(let_chains, if_let_guard, arbitrary_self_types)]
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `RES` is never used
[INFO] [stdout]    --> src/curve.rs:225:11
[INFO] [stdout]     |
[INFO] [stdout] 224 | trait SamplingHelper: Sized + Iterator {
[INFO] [stdout]     |       -------------- associated constant in this trait
[INFO] [stdout] 225 |     const RES: u16;
[INFO] [stdout]     |           ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/curve.rs:411:18
[INFO] [stdout]     |
[INFO] [stdout] 410 | impl Curve {
[INFO] [stdout]     | ---------- associated function in this implementation
[INFO] [stdout] 411 |     pub const fn new() -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `rasters` and `file_path` are never read
[INFO] [stdout]   --> src/document.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct Document {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub rasters: Vec<StrongRenderTexture2D>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub file_path: Option<PathBuf>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Document` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `create_raster` is never used
[INFO] [stdout]   --> src/document.rs:85:12
[INFO] [stdout]    |
[INFO] [stdout] 67 | impl Document {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 85 |     pub fn create_raster(&mut self, rtex: RenderTexture2D) -> &StrongRenderTexture2D {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/editor.rs:25:11
[INFO] [stdout]    |
[INFO] [stdout] 25 |     Paths(Vec<WeakCurve>),
[INFO] [stdout]    |     ----- ^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Selection` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 25 -     Paths(Vec<WeakCurve>),
[INFO] [stdout] 25 +     Paths(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Points` is never constructed
[INFO] [stdout]   --> src/editor.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub enum Selection {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 20 |     Points(Vec<(WeakCurve, Vec<std::ops::Range<u32>>)>),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Selection` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `VectorPen` is never constructed
[INFO] [stdout]   --> src/editor.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub enum Tool {
[INFO] [stdout]    |          ---- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 52 |     VectorPen,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Tool` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `selection` is never read
[INFO] [stdout]   --> src/editor.rs:88:9
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct Editor {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 88 |     pub selection: Selection,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Editor` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `color_irreversible` is never read
[INFO] [stdout]   --> src/engine.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct EngineTheme {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub color_irreversible: Color,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `EngineTheme` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `editors`, `editors_mut`, `editor`, `editor_mut`, and `unfocus_editor` are never used
[INFO] [stdout]    --> src/engine.rs:84:12
[INFO] [stdout]     |
[INFO] [stdout]  56 | impl Engine {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  84 |     pub fn editors(&self) -> &[Editor] {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |     pub fn editors_mut(&mut self) -> &mut [Editor] {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn editor(&self, idx: u32) -> Option<&Editor> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn editor_mut(&mut self, idx: u32) -> Option<&mut Editor> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn unfocus_editor(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `WeakRenderTexture2D` is never used
[INFO] [stdout]  --> src/layer.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub type WeakRenderTexture2D   = Weak<ReentrantMutex<RefCell<RenderTexture2D>>>;
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `layers` is never read
[INFO] [stdout]   --> src/layer.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Group {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] 12 |     /// The layers in the group
[INFO] [stdout] 13 |     pub layers: Vec<Layer>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Group` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Group` is never constructed
[INFO] [stdout]   --> src/layer.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum LayerContent {
[INFO] [stdout]    |          ------------ variant in this enum
[INFO] [stdout] 19 |     Group(Group),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LayerContent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `style` are never read
[INFO] [stdout]   --> src/layer.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Layer {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 25 |     /// The name of the layer, shown in the layer panel
[INFO] [stdout] 26 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub style: WeakStyle,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Layer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/style.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 |     Solid(Color),
[INFO] [stdout]    |     ----- ^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Pattern` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 10 -     Solid(Color),
[INFO] [stdout] 10 +     Solid(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Texture` is never constructed
[INFO] [stdout]   --> src/style.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub enum Pattern {
[INFO] [stdout]    |          ------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 16 |     Texture(WeakRenderTexture2D),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Pattern` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `speed_in`, `thick`, and `speed_out` are never read
[INFO] [stdout]   --> src/style.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct WidthProfileVertex {
[INFO] [stdout]    |            ------------------ fields in this struct
[INFO] [stdout] 35 |     /// The entry intensity of the thickness
[INFO] [stdout] 36 |     pub speed_in: f32,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub thick: f32,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub speed_out: f32,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `WidthProfileVertex` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new` and `flat` are never used
[INFO] [stdout]   --> src/style.rs:47:18
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl WidthProfileVertex {
[INFO] [stdout]    | ----------------------- associated functions in this implementation
[INFO] [stdout] 46 |     /// Construct an empty vertex
[INFO] [stdout] 47 |     pub const fn new() -> Self {
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub const fn flat(thick: f32) -> Self {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `t`, `inner`, and `outer` are never read
[INFO] [stdout]   --> src/style.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub struct WidthProfileControl {
[INFO] [stdout]    |            ------------------- fields in this struct
[INFO] [stdout] 67 |     /// The t-value along the curve to which this control relates
[INFO] [stdout] 68 |     pub t: f32,
[INFO] [stdout]    |         ^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub inner: WidthProfileVertex,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub outer: WidthProfileVertex,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `WidthProfileControl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new` and `new_even` are never used
[INFO] [stdout]   --> src/style.rs:79:18
[INFO] [stdout]    |
[INFO] [stdout] 77 | impl WidthProfileControl {
[INFO] [stdout]    | ------------------------ associated functions in this implementation
[INFO] [stdout] 78 |     /// Construct an empty control filled with 0s
[INFO] [stdout] 79 |     pub const fn new() -> Self {
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 88 |     pub fn new_even(t: f32, vert: WidthProfileVertex) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `inner` and `outer` are never read
[INFO] [stdout]    --> src/style.rs:100:16
[INFO] [stdout]     |
[INFO] [stdout] 100 |     Constant { inner: f32, outer: f32 },
[INFO] [stdout]     |     --------   ^^^^^       ^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `WidthProfile` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Variable` is never constructed
[INFO] [stdout]    --> src/style.rs:101:5
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub enum WidthProfile {
[INFO] [stdout]     |          ------------ variant in this enum
[INFO] [stdout] 100 |     Constant { inner: f32, outer: f32 },
[INFO] [stdout] 101 |     Variable(Vec<WidthProfileControl>),
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `WidthProfile` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new_flat` and `new_variable` are never used
[INFO] [stdout]    --> src/style.rs:123:18
[INFO] [stdout]     |
[INFO] [stdout] 111 | impl WidthProfile {
[INFO] [stdout]     | ----------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub const fn new_flat(thick: f32) -> Self {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub const fn new_variable() -> Self {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `pattern` and `width` are never read
[INFO] [stdout]    --> src/style.rs:139:9
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub struct Stroke {
[INFO] [stdout]     |            ------ fields in this struct
[INFO] [stdout] 138 |     /// The color pattern applied to the stroke
[INFO] [stdout] 139 |     pub pattern: Pattern,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     pub width: Option<WeakWidthProfile>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Stroke` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Fill` and `Stroke` are never constructed
[INFO] [stdout]    --> src/style.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 166 | pub enum Modifier {
[INFO] [stdout]     |          -------- variants in this enum
[INFO] [stdout] 167 |     /// Applies an additional fill to a path
[INFO] [stdout] 168 |     Fill(Pattern),
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 171 |     Stroke(Stroke),
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Modifier` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `name` is never used
[INFO] [stdout]    --> src/style.rs:179:18
[INFO] [stdout]     |
[INFO] [stdout] 176 | impl Modifier {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 179 |     pub const fn name(&self) -> &'static str {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `modifier` are never read
[INFO] [stdout]    --> src/style.rs:192:9
[INFO] [stdout]     |
[INFO] [stdout] 190 | pub struct StyleItem {
[INFO] [stdout]     |            --------- fields in this struct
[INFO] [stdout] 191 |     /// If [`None`], defaults to the modifier variant
[INFO] [stdout] 192 |     pub name: Option<String>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub modifier: Modifier,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `StyleItem` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `name` are never used
[INFO] [stdout]    --> src/style.rs:200:18
[INFO] [stdout]     |
[INFO] [stdout] 198 | impl StyleItem {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 199 |     /// Construct an unnamed style item
[INFO] [stdout] 200 |     pub const fn new(modifier: Modifier) -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |     pub fn name(&self) -> &str {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `fill`, `stroke`, and `items` are never read
[INFO] [stdout]    --> src/style.rs:226:9
[INFO] [stdout]     |
[INFO] [stdout] 222 | pub struct Style {
[INFO] [stdout]     |            ----- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 226 |     pub fill: Pattern,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 231 |     pub stroke: Stroke,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 236 |     pub items: Vec<StyleItem>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Style` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 13s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nalgebra v0.26.2
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "999d1fe3f10029055ea2b17d76db9e323b30a000f2a8613f67032da08c492d5b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "999d1fe3f10029055ea2b17d76db9e323b30a000f2a8613f67032da08c492d5b", kill_on_drop: false }`
[INFO] [stdout] 999d1fe3f10029055ea2b17d76db9e323b30a000f2a8613f67032da08c492d5b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+c7f6aa2869acdbf014d094c6e427e554e160b6db" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e6cc8a3e0cc0f460db7b5dd215973db8f16d619dbf5e8e989551818a8ab89d5b
[INFO] running `Command { std: "docker" "start" "-a" "e6cc8a3e0cc0f460db7b5dd215973db8f16d619dbf5e8e989551818a8ab89d5b", kill_on_drop: false }`
[INFO] [stderr]    Compiling vector-art-program-1 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `crate::make_curve`
[INFO] [stdout]    --> src/curve.rs:551:9
[INFO] [stdout]     |
[INFO] [stdout] 551 |     use crate::make_curve;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `WeakWidthProfile`
[INFO] [stdout]  --> src/editor.rs:4:77
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::{curve::WeakCurve, document::Document, style::{Style, WeakStyle, WeakWidthProfile}};
[INFO] [stdout]   |                                                                             ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `let_chains` has been stable since 1.88.0 and no longer requires an attribute to enable
[INFO] [stdout]  --> src/main.rs:1:12
[INFO] [stdout]   |
[INFO] [stdout] 1 | #![feature(let_chains, if_let_guard, arbitrary_self_types)]
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constant `RES` is never used
[INFO] [stdout]    --> src/curve.rs:225:11
[INFO] [stdout]     |
[INFO] [stdout] 224 | trait SamplingHelper: Sized + Iterator {
[INFO] [stdout]     |       -------------- associated constant in this trait
[INFO] [stdout] 225 |     const RES: u16;
[INFO] [stdout]     |           ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/curve.rs:411:18
[INFO] [stdout]     |
[INFO] [stdout] 410 | impl Curve {
[INFO] [stdout]     | ---------- associated function in this implementation
[INFO] [stdout] 411 |     pub const fn new() -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `rasters` and `file_path` are never read
[INFO] [stdout]   --> src/document.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct Document {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub rasters: Vec<StrongRenderTexture2D>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 52 |     pub file_path: Option<PathBuf>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Document` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `create_raster` is never used
[INFO] [stdout]   --> src/document.rs:85:12
[INFO] [stdout]    |
[INFO] [stdout] 67 | impl Document {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 85 |     pub fn create_raster(&mut self, rtex: RenderTexture2D) -> &StrongRenderTexture2D {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/editor.rs:25:11
[INFO] [stdout]    |
[INFO] [stdout] 25 |     Paths(Vec<WeakCurve>),
[INFO] [stdout]    |     ----- ^^^^^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Selection` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 25 -     Paths(Vec<WeakCurve>),
[INFO] [stdout] 25 +     Paths(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Points` is never constructed
[INFO] [stdout]   --> src/editor.rs:20:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub enum Selection {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 20 |     Points(Vec<(WeakCurve, Vec<std::ops::Range<u32>>)>),
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Selection` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `VectorPen` is never constructed
[INFO] [stdout]   --> src/editor.rs:52:5
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub enum Tool {
[INFO] [stdout]    |          ---- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 52 |     VectorPen,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Tool` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `selection` is never read
[INFO] [stdout]   --> src/editor.rs:88:9
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub struct Editor {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 88 |     pub selection: Selection,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Editor` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `color_irreversible` is never read
[INFO] [stdout]   --> src/engine.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub struct EngineTheme {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub color_irreversible: Color,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `EngineTheme` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `editors`, `editors_mut`, `editor`, `editor_mut`, and `unfocus_editor` are never used
[INFO] [stdout]    --> src/engine.rs:84:12
[INFO] [stdout]     |
[INFO] [stdout]  56 | impl Engine {
[INFO] [stdout]     | ----------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  84 |     pub fn editors(&self) -> &[Editor] {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  90 |     pub fn editors_mut(&mut self) -> &mut [Editor] {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn editor(&self, idx: u32) -> Option<&Editor> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |     pub fn editor_mut(&mut self, idx: u32) -> Option<&mut Editor> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub fn unfocus_editor(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `WeakRenderTexture2D` is never used
[INFO] [stdout]  --> src/layer.rs:7:10
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub type WeakRenderTexture2D   = Weak<ReentrantMutex<RefCell<RenderTexture2D>>>;
[INFO] [stdout]   |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `layers` is never read
[INFO] [stdout]   --> src/layer.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct Group {
[INFO] [stdout]    |            ----- field in this struct
[INFO] [stdout] 12 |     /// The layers in the group
[INFO] [stdout] 13 |     pub layers: Vec<Layer>,
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Group` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Group` is never constructed
[INFO] [stdout]   --> src/layer.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum LayerContent {
[INFO] [stdout]    |          ------------ variant in this enum
[INFO] [stdout] 19 |     Group(Group),
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LayerContent` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `style` are never read
[INFO] [stdout]   --> src/layer.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub struct Layer {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] 25 |     /// The name of the layer, shown in the layer panel
[INFO] [stdout] 26 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub style: WeakStyle,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Layer` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/style.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 |     Solid(Color),
[INFO] [stdout]    |     ----- ^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Pattern` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 10 -     Solid(Color),
[INFO] [stdout] 10 +     Solid(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Texture` is never constructed
[INFO] [stdout]   --> src/style.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub enum Pattern {
[INFO] [stdout]    |          ------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 16 |     Texture(WeakRenderTexture2D),
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Pattern` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `speed_in`, `thick`, and `speed_out` are never read
[INFO] [stdout]   --> src/style.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 34 | pub struct WidthProfileVertex {
[INFO] [stdout]    |            ------------------ fields in this struct
[INFO] [stdout] 35 |     /// The entry intensity of the thickness
[INFO] [stdout] 36 |     pub speed_in: f32,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub thick: f32,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub speed_out: f32,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `WidthProfileVertex` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new` and `flat` are never used
[INFO] [stdout]   --> src/style.rs:47:18
[INFO] [stdout]    |
[INFO] [stdout] 45 | impl WidthProfileVertex {
[INFO] [stdout]    | ----------------------- associated functions in this implementation
[INFO] [stdout] 46 |     /// Construct an empty vertex
[INFO] [stdout] 47 |     pub const fn new() -> Self {
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub const fn flat(thick: f32) -> Self {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `t`, `inner`, and `outer` are never read
[INFO] [stdout]   --> src/style.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 66 | pub struct WidthProfileControl {
[INFO] [stdout]    |            ------------------- fields in this struct
[INFO] [stdout] 67 |     /// The t-value along the curve to which this control relates
[INFO] [stdout] 68 |     pub t: f32,
[INFO] [stdout]    |         ^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub inner: WidthProfileVertex,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 74 |     pub outer: WidthProfileVertex,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `WidthProfileControl` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new` and `new_even` are never used
[INFO] [stdout]   --> src/style.rs:79:18
[INFO] [stdout]    |
[INFO] [stdout] 77 | impl WidthProfileControl {
[INFO] [stdout]    | ------------------------ associated functions in this implementation
[INFO] [stdout] 78 |     /// Construct an empty control filled with 0s
[INFO] [stdout] 79 |     pub const fn new() -> Self {
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 88 |     pub fn new_even(t: f32, vert: WidthProfileVertex) -> Self {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `inner` and `outer` are never read
[INFO] [stdout]    --> src/style.rs:100:16
[INFO] [stdout]     |
[INFO] [stdout] 100 |     Constant { inner: f32, outer: f32 },
[INFO] [stdout]     |     --------   ^^^^^       ^^^^^
[INFO] [stdout]     |     |
[INFO] [stdout]     |     fields in this variant
[INFO] [stdout]     |
[INFO] [stdout]     = note: `WidthProfile` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Variable` is never constructed
[INFO] [stdout]    --> src/style.rs:101:5
[INFO] [stdout]     |
[INFO] [stdout]  99 | pub enum WidthProfile {
[INFO] [stdout]     |          ------------ variant in this enum
[INFO] [stdout] 100 |     Constant { inner: f32, outer: f32 },
[INFO] [stdout] 101 |     Variable(Vec<WidthProfileControl>),
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `WidthProfile` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new_flat` and `new_variable` are never used
[INFO] [stdout]    --> src/style.rs:123:18
[INFO] [stdout]     |
[INFO] [stdout] 111 | impl WidthProfile {
[INFO] [stdout]     | ----------------- associated functions in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 123 |     pub const fn new_flat(thick: f32) -> Self {
[INFO] [stdout]     |                  ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 128 |     pub const fn new_variable() -> Self {
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `pattern` and `width` are never read
[INFO] [stdout]    --> src/style.rs:139:9
[INFO] [stdout]     |
[INFO] [stdout] 137 | pub struct Stroke {
[INFO] [stdout]     |            ------ fields in this struct
[INFO] [stdout] 138 |     /// The color pattern applied to the stroke
[INFO] [stdout] 139 |     pub pattern: Pattern,
[INFO] [stdout]     |         ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 142 |     pub width: Option<WeakWidthProfile>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Stroke` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Fill` and `Stroke` are never constructed
[INFO] [stdout]    --> src/style.rs:168:5
[INFO] [stdout]     |
[INFO] [stdout] 166 | pub enum Modifier {
[INFO] [stdout]     |          -------- variants in this enum
[INFO] [stdout] 167 |     /// Applies an additional fill to a path
[INFO] [stdout] 168 |     Fill(Pattern),
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 171 |     Stroke(Stroke),
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Modifier` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `name` is never used
[INFO] [stdout]    --> src/style.rs:179:18
[INFO] [stdout]     |
[INFO] [stdout] 176 | impl Modifier {
[INFO] [stdout]     | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 179 |     pub const fn name(&self) -> &'static str {
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `modifier` are never read
[INFO] [stdout]    --> src/style.rs:192:9
[INFO] [stdout]     |
[INFO] [stdout] 190 | pub struct StyleItem {
[INFO] [stdout]     |            --------- fields in this struct
[INFO] [stdout] 191 |     /// If [`None`], defaults to the modifier variant
[INFO] [stdout] 192 |     pub name: Option<String>,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |     pub modifier: Modifier,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `StyleItem` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `name` are never used
[INFO] [stdout]    --> src/style.rs:200:18
[INFO] [stdout]     |
[INFO] [stdout] 198 | impl StyleItem {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 199 |     /// Construct an unnamed style item
[INFO] [stdout] 200 |     pub const fn new(modifier: Modifier) -> Self {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 211 |     pub fn name(&self) -> &str {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `fill`, `stroke`, and `items` are never read
[INFO] [stdout]    --> src/style.rs:226:9
[INFO] [stdout]     |
[INFO] [stdout] 222 | pub struct Style {
[INFO] [stdout]     |            ----- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 226 |     pub fill: Pattern,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 231 |     pub stroke: Stroke,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 236 |     pub items: Vec<StyleItem>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Style` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.20s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nalgebra v0.26.2
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] running `Command { std: "docker" "inspect" "e6cc8a3e0cc0f460db7b5dd215973db8f16d619dbf5e8e989551818a8ab89d5b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e6cc8a3e0cc0f460db7b5dd215973db8f16d619dbf5e8e989551818a8ab89d5b", kill_on_drop: false }`
[INFO] [stdout] e6cc8a3e0cc0f460db7b5dd215973db8f16d619dbf5e8e989551818a8ab89d5b
