[INFO] cloning repository https://github.com/Tailored-Alloys/toolpath_viewer
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Tailored-Alloys/toolpath_viewer" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTailored-Alloys%2Ftoolpath_viewer", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTailored-Alloys%2Ftoolpath_viewer'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 7951606cbfcbf3b019d4da7257f4d81ac33f1b8e
[INFO] checking Tailored-Alloys/toolpath_viewer against master#2aabf3ce0569dd7c8c2d2a27944850056dcf2566 for pr-156508
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FTailored-Alloys%2Ftoolpath_viewer" "/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/Tailored-Alloys/toolpath_viewer
[INFO] finished tweaking git repo https://github.com/Tailored-Alloys/toolpath_viewer
[INFO] tweaked toml for git repo https://github.com/Tailored-Alloys/toolpath_viewer written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Tailored-Alloys/toolpath_viewer on toolchain 2aabf3ce0569dd7c8c2d2a27944850056dcf2566
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2aabf3ce0569dd7c8c2d2a27944850056dcf2566" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Tailored-Alloys/toolpath_viewer 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" "+2aabf3ce0569dd7c8c2d2a27944850056dcf2566" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded winresource v0.1.30
[INFO] [stderr]   Downloaded egui_extras v0.27.2
[INFO] [stderr]   Downloaded accesskit v0.12.3
[INFO] [stderr]   Downloaded lucide-icons v0.575.0
[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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+2aabf3ce0569dd7c8c2d2a27944850056dcf2566" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 4e63c101fe538f82e98af58015ad28fec8bf57633478f2568c97377f2377f31a
[INFO] running `Command { std: "docker" "start" "-a" "4e63c101fe538f82e98af58015ad28fec8bf57633478f2568c97377f2377f31a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4e63c101fe538f82e98af58015ad28fec8bf57633478f2568c97377f2377f31a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4e63c101fe538f82e98af58015ad28fec8bf57633478f2568c97377f2377f31a", kill_on_drop: false }`
[INFO] [stdout] 4e63c101fe538f82e98af58015ad28fec8bf57633478f2568c97377f2377f31a
[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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+2aabf3ce0569dd7c8c2d2a27944850056dcf2566" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 81ac88eae43739d86d71c93ee5852405a72884ce73b0efcfcaff4d7bc3a92d25
[INFO] running `Command { std: "docker" "start" "-a" "81ac88eae43739d86d71c93ee5852405a72884ce73b0efcfcaff4d7bc3a92d25", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking rustix v1.1.4
[INFO] [stderr]    Compiling zerocopy v0.8.42
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling cc v1.2.57
[INFO] [stderr]    Compiling toml_parser v1.0.9+spec-1.1.0
[INFO] [stderr]     Checking concurrent-queue v2.5.0
[INFO] [stderr]    Compiling toml_datetime v1.0.0+spec-1.1.0
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]     Checking png v0.17.16
[INFO] [stderr]     Checking kurbo v0.9.5
[INFO] [stderr]    Compiling smithay-client-toolkit v0.18.1
[INFO] [stderr]     Checking event-listener v5.4.1
[INFO] [stderr]     Checking rctree v0.5.0
[INFO] [stderr]    Compiling winit v0.29.15
[INFO] [stderr]    Compiling glutin_egl_sys v0.6.0
[INFO] [stderr]    Compiling glutin_glx_sys v0.5.0
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking simplecss v0.2.2
[INFO] [stderr]     Checking event-listener-strategy v0.5.4
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]     Checking regex-syntax v0.8.10
[INFO] [stderr]     Checking data-url v0.3.2
[INFO] [stderr]     Checking async-channel v2.5.0
[INFO] [stderr]     Checking async-lock v3.4.2
[INFO] [stderr]     Checking async-broadcast v0.7.2
[INFO] [stderr]    Compiling mime_guess2 v2.3.1
[INFO] [stderr]     Checking async-executor v1.14.0
[INFO] [stderr]     Checking xkbcommon-dl v0.4.2
[INFO] [stderr]     Checking blocking v1.6.2
[INFO] [stderr]    Compiling toml_edit v0.25.4+spec-1.1.0
[INFO] [stderr]     Checking svgtypes v0.13.0
[INFO] [stderr]    Compiling glutin v0.31.3
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]     Checking xmlwriter v0.1.0
[INFO] [stderr]    Compiling rustls v0.23.38
[INFO] [stderr]     Checking pico-args v0.5.0
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking crc v3.4.0
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]    Compiling glutin-winit v0.4.2
[INFO] [stderr]     Checking async-fs v2.2.0
[INFO] [stderr]     Checking is-terminal v0.4.17
[INFO] [stderr]     Checking is-docker v0.2.0
[INFO] [stderr]    Compiling zip v2.4.2
[INFO] [stderr]     Checking unicase v2.9.0
[INFO] [stderr]     Checking num-conv v0.2.0
[INFO] [stderr]    Compiling rfd v0.15.4
[INFO] [stderr]     Checking clap_builder v4.6.0
[INFO] [stderr]     Checking is-wsl v0.4.0
[INFO] [stderr]     Checking zopfli v0.8.3
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking pbkdf2 v0.12.2
[INFO] [stderr]     Checking lzma-rs v0.3.0
[INFO] [stderr]     Checking moxcms v0.8.1
[INFO] [stderr]     Checking rayon v1.11.0
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking web-time v0.2.4
[INFO] [stderr]     Checking humantime v2.3.0
[INFO] [stderr]     Checking glow v0.13.1
[INFO] [stderr]     Checking deflate64 v0.1.11
[INFO] [stderr]    Compiling proc-macro-crate v3.5.0
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking pathdiff v0.2.3
[INFO] [stderr]     Checking pollster v0.4.0
[INFO] [stderr]     Checking open v5.3.4
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]     Checking uuid v1.22.0
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking lucide-icons v0.575.0
[INFO] [stderr]    Compiling wayland-backend v0.3.14
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling bzip2-sys v0.1.13+1.0.8
[INFO] [stderr]    Compiling lzma-sys v0.1.20
[INFO] [stderr]     Checking clap v4.6.0
[INFO] [stderr]     Checking oorandom v11.1.5
[INFO] [stderr]     Checking semver v1.0.27
[INFO] [stderr]     Checking criterion-plot v0.5.0
[INFO] [stderr]     Checking xz2 v0.1.7
[INFO] [stderr]     Checking polling v3.11.0
[INFO] [stderr]     Checking gethostname v1.1.0
[INFO] [stderr]     Checking x11rb v0.13.2
[INFO] [stderr]    Compiling toml_datetime v0.7.5+spec-1.1.0
[INFO] [stderr]     Checking async-io v2.6.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling serde_spanned v1.0.4
[INFO] [stderr]    Compiling toml v0.9.12+spec-1.1.0
[INFO] [stderr]     Checking bzip2 v0.5.2
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking wayland-client v0.31.13
[INFO] [stderr]     Checking wayland-csd-frame v0.3.0
[INFO] [stderr]     Checking async-signal v0.2.13
[INFO] [stderr]     Checking async-net v2.0.0
[INFO] [stderr]     Checking async-process v2.5.0
[INFO] [stderr]     Checking env_logger v0.10.2
[INFO] [stderr]    Compiling winresource v0.1.30
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling bytemuck_derive v1.10.2
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling zerocopy-derive v0.8.42
[INFO] [stderr]    Compiling enumflags2_derive v0.7.12
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling zeroize_derive v1.4.3
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]     Checking wayland-protocols v0.32.11
[INFO] [stderr]     Checking wayland-protocols v0.31.2
[INFO] [stderr]     Checking wayland-cursor v0.31.13
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling async-recursion v1.1.1
[INFO] [stderr]     Checking bytemuck v1.25.0
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]     Checking tiny-skia-path v0.11.4
[INFO] [stderr]     Checking rustls-pki-types v1.14.0
[INFO] [stderr]     Checking tiny-skia v0.11.4
[INFO] [stderr]     Checking usvg-tree v0.37.0
[INFO] [stderr]     Checking safe_arch v0.7.4
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking calloop v0.12.4
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]     Checking usvg-parser v0.37.0
[INFO] [stderr]     Checking rgb v0.8.53
[INFO] [stderr]     Checking wide v0.7.33
[INFO] [stderr]     Checking rustls-webpki v0.103.12
[INFO] [stderr]     Checking calloop v0.14.4
[INFO] [stderr]     Checking calloop-wayland-source v0.2.0
[INFO] [stderr]     Checking webpki-roots v1.0.7
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]    Compiling nalgebra-macros v0.2.2
[INFO] [stderr]    Compiling enum-map-derive v0.17.0
[INFO] [stderr]     Checking webpki-roots v0.26.11
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]     Checking image v0.24.9
[INFO] [stderr]    Compiling toolpath_viewer v1.2.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking arboard v3.6.1
[INFO] [stderr]     Checking usvg v0.37.0
[INFO] [stderr]     Checking image v0.25.10
[INFO] [stderr]     Checking calloop-wayland-source v0.4.1
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking zstd v0.13.3
[INFO] [stderr]     Checking resvg v0.37.0
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking simba v0.8.1
[INFO] [stderr]     Checking wayland-protocols-wlr v0.2.0
[INFO] [stderr]     Checking wayland-protocols-plasma v0.2.0
[INFO] [stderr]     Checking emath v0.27.2
[INFO] [stderr]     Checking enumflags2 v0.7.12
[INFO] [stderr]     Checking zvariant_utils v3.3.0
[INFO] [stderr]     Checking ecolor v0.27.2
[INFO] [stderr]     Checking enum-map v2.7.3
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking icu_properties v2.1.2
[INFO] [stderr]    Compiling zvariant_derive v5.10.0
[INFO] [stderr]     Checking wayland-protocols-wlr v0.3.11
[INFO] [stderr]     Checking wayland-protocols-misc v0.3.11
[INFO] [stderr]     Checking wayland-protocols-experimental v20250721.0.1
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]    Compiling zvariant v5.10.0
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking sctk-adwaita v0.8.3
[INFO] [stderr]     Checking smithay-client-toolkit v0.20.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking webbrowser v0.8.15
[INFO] [stderr]     Checking ureq v2.12.1
[INFO] [stderr]     Checking nalgebra v0.32.6
[INFO] [stderr]     Checking epaint v0.27.2
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking criterion v0.5.1
[INFO] [stderr]     Checking smithay-clipboard v0.7.3
[INFO] [stderr]    Compiling zbus_names v4.3.1
[INFO] [stderr]    Compiling zbus_macros v5.14.0
[INFO] [stderr]     Checking egui v0.27.2
[INFO] [stderr]     Checking zbus v5.14.0
[INFO] [stderr]     Checking nalgebra-glm v0.18.0
[INFO] [stderr]     Checking egui-winit v0.27.2
[INFO] [stderr]     Checking egui_extras v0.27.2
[INFO] [stderr]     Checking egui_glow v0.27.2
[INFO] [stderr]     Checking ashpd v0.11.1
[INFO] [stdout] warning: unused import: `VectorType`
[INFO] [stdout]  --> src/domain/entities/layer.rs:5:39
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::domain::entities::{Vector, VectorType};
[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: `Layer`
[INFO] [stdout]  --> src/application/use_cases/navigate_layers.rs:5:31
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::domain::entities::{Layer, SliceStack};
[INFO] [stdout]   |                               ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/theme.rs:152:54
[INFO] [stdout]     |
[INFO] [stdout] 152 |     visuals.widgets.inactive.fg_stroke = Stroke::new(1.0, at.text_primary);
[INFO] [stdout]     |                                                      ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout]     = note: `#[warn(float_literal_f32_fallback)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/theme.rs:155:53
[INFO] [stdout]     |
[INFO] [stdout] 155 |     visuals.widgets.hovered.fg_stroke = Stroke::new(1.0, at.accent);
[INFO] [stdout]     |                                                     ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/theme.rs:158:52
[INFO] [stdout]     |
[INFO] [stdout] 158 |     visuals.widgets.active.fg_stroke = Stroke::new(1.0, if palette.is_dark { Color32::BLACK } else { Color32::WHITE });
[INFO] [stdout]     |                                                    ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/theme.rs:160:60
[INFO] [stdout]     |
[INFO] [stdout] 160 |     visuals.widgets.noninteractive.fg_stroke = Stroke::new(1.0, at.text_primary);
[INFO] [stdout]     |                                                            ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/theme.rs:162:44
[INFO] [stdout]     |
[INFO] [stdout] 162 |     visuals.selection.stroke = Stroke::new(1.0, if palette.is_dark { Color32::BLACK } else { Color32::WHITE });
[INFO] [stdout]     |                                            ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]   --> src/presentation/components/toolbar.rs:64:33
[INFO] [stdout]    |
[INFO] [stdout] 64 |                     Stroke::new(1.0, t.toolbar_border),
[INFO] [stdout]    |                                 ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/layer_slider.rs:200:37
[INFO] [stdout]     |
[INFO] [stdout] 200 |                         Stroke::new(1.5, thumb_stroke_color),
[INFO] [stdout]     |                                     ^^^ help: explicitly specify the type as `f32`: `1.5_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]   --> src/presentation/components/vector_slider.rs:45:37
[INFO] [stdout]    |
[INFO] [stdout] 45 |                 .stroke(Stroke::new(1.0, t.toolbar_border))
[INFO] [stdout]    |                                     ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/vector_slider.rs:131:89
[INFO] [stdout]     |
[INFO] [stdout] 131 |                         ui.style_mut().visuals.widgets.inactive.fg_stroke = Stroke::new(0.0, Color32::TRANSPARENT);
[INFO] [stdout]     |                                                                                         ^^^ help: explicitly specify the type as `f32`: `0.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/vector_slider.rs:136:88
[INFO] [stdout]     |
[INFO] [stdout] 136 |                         ui.style_mut().visuals.widgets.hovered.fg_stroke = Stroke::new(2.0, accent);
[INFO] [stdout]     |                                                                                        ^^^ help: explicitly specify the type as `f32`: `2.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/vector_slider.rs:141:87
[INFO] [stdout]     |
[INFO] [stdout] 141 |                         ui.style_mut().visuals.widgets.active.fg_stroke = Stroke::new(2.0, accent_active);
[INFO] [stdout]     |                                                                                       ^^^ help: explicitly specify the type as `f32`: `2.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/gradient_scale.rs:257:37
[INFO] [stdout]     |
[INFO] [stdout] 257 |                         Stroke::new(1.0, border_color),
[INFO] [stdout]     |                                     ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/gradient_scale.rs:299:25
[INFO] [stdout]     |
[INFO] [stdout] 299 |                         1.0,
[INFO] [stdout]     |                         ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]   --> src/presentation/components/overlays.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |             1.0,
[INFO] [stdout]    |             ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/overlays.rs:103:21
[INFO] [stdout]     |
[INFO] [stdout] 103 |         Stroke::new(1.5, bar_color),
[INFO] [stdout]     |                     ^^^ help: explicitly specify the type as `f32`: `1.5_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/overlays.rs:111:21
[INFO] [stdout]     |
[INFO] [stdout] 111 |         Stroke::new(1.5, bar_color),
[INFO] [stdout]     |                     ^^^ help: explicitly specify the type as `f32`: `1.5_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/overlays.rs:119:21
[INFO] [stdout]     |
[INFO] [stdout] 119 |         Stroke::new(1.5, bar_color),
[INFO] [stdout]     |                     ^^^ help: explicitly specify the type as `f32`: `1.5_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/overlays.rs:179:56
[INFO] [stdout]     |
[INFO] [stdout] 179 |             painter.line_segment([p1, p2], Stroke::new(2.0, ruler_color));
[INFO] [stdout]     |                                                        ^^^ help: explicitly specify the type as `f32`: `2.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/overlays.rs:212:60
[INFO] [stdout]     |
[INFO] [stdout] 212 |                 painter.line_segment([p1, p2], Stroke::new(1.5, preview_color));
[INFO] [stdout]     |                                                            ^^^ help: explicitly specify the type as `f32`: `1.5_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/overlays.rs:250:48
[INFO] [stdout]     |
[INFO] [stdout] 250 |     painter.rect_stroke(rect, 0.0, Stroke::new(1.5, theme::active().accent));
[INFO] [stdout]     |                                                ^^^ help: explicitly specify the type as `f32`: `1.5_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/overlays.rs:428:64
[INFO] [stdout]     |
[INFO] [stdout] 428 |     painter.rect_stroke(rect, Rounding::same(4.0), Stroke::new(1.0, border_color));
[INFO] [stdout]     |                                                                ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/preferences.rs:231:33
[INFO] [stdout]     |
[INFO] [stdout] 231 |                     Stroke::new(0.5, if t.is_dark { Color32::from_rgb(80, 80, 80) } else { Color32::from_rgb(180, 180, 180) }),
[INFO] [stdout]     |                                 ^^^ help: explicitly specify the type as `f32`: `0.5_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/preferences.rs:259:33
[INFO] [stdout]     |
[INFO] [stdout] 259 |                     Stroke::new(2.0, t.accent),
[INFO] [stdout]     |                                 ^^^ help: explicitly specify the type as `f32`: `2.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]   --> src/presentation/components/sidebar.rs:65:37
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 .stroke(Stroke::new(1.0, t.toolbar_border))
[INFO] [stdout]    |                                     ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/theme.rs:152:54
[INFO] [stdout]     |
[INFO] [stdout] 152 |     visuals.widgets.inactive.fg_stroke = Stroke::new(1.0, at.text_primary);
[INFO] [stdout]     |                                                      ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout]     = note: `#[warn(float_literal_f32_fallback)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/theme.rs:155:53
[INFO] [stdout]     |
[INFO] [stdout] 155 |     visuals.widgets.hovered.fg_stroke = Stroke::new(1.0, at.accent);
[INFO] [stdout]     |                                                     ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/theme.rs:158:52
[INFO] [stdout]     |
[INFO] [stdout] 158 |     visuals.widgets.active.fg_stroke = Stroke::new(1.0, if palette.is_dark { Color32::BLACK } else { Color32::WHITE });
[INFO] [stdout]     |                                                    ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/theme.rs:160:60
[INFO] [stdout]     |
[INFO] [stdout] 160 |     visuals.widgets.noninteractive.fg_stroke = Stroke::new(1.0, at.text_primary);
[INFO] [stdout]     |                                                            ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/theme.rs:162:44
[INFO] [stdout]     |
[INFO] [stdout] 162 |     visuals.selection.stroke = Stroke::new(1.0, if palette.is_dark { Color32::BLACK } else { Color32::WHITE });
[INFO] [stdout]     |                                            ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/sidebar.rs:240:72
[INFO] [stdout]     |
[INFO] [stdout] 240 |                     painter.circle_stroke(dot_center, 4.0, Stroke::new(1.2, ring_color));
[INFO] [stdout]     |                                                                        ^^^ help: explicitly specify the type as `f32`: `1.2_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/sidebar.rs:286:44
[INFO] [stdout]     |
[INFO] [stdout] 286 |                 let x_stroke = Stroke::new(1.2, x_color);
[INFO] [stdout]     |                                            ^^^ help: explicitly specify the type as `f32`: `1.2_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/sidebar.rs:325:29
[INFO] [stdout]     |
[INFO] [stdout] 325 |         .stroke(Stroke::new(1.0, accent_outline))
[INFO] [stdout]     |                             ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]   --> src/presentation/components/toolbar.rs:64:33
[INFO] [stdout]    |
[INFO] [stdout] 64 |                     Stroke::new(1.0, t.toolbar_border),
[INFO] [stdout]    |                                 ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]   --> src/presentation/components/status_bar.rs:50:37
[INFO] [stdout]    |
[INFO] [stdout] 50 |                 .stroke(Stroke::new(1.0, t.toolbar_border))
[INFO] [stdout]    |                                     ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/activity_bar.rs:141:29
[INFO] [stdout]     |
[INFO] [stdout] 141 |                 Stroke::new(1.0, t.toolbar_border),
[INFO] [stdout]     |                             ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/layer_slider.rs:200:37
[INFO] [stdout]     |
[INFO] [stdout] 200 |                         Stroke::new(1.5, thumb_stroke_color),
[INFO] [stdout]     |                                     ^^^ help: explicitly specify the type as `f32`: `1.5_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/tab_bar.rs:137:41
[INFO] [stdout]     |
[INFO] [stdout] 137 | ...                   Stroke::new(1.0, t.toolbar_border),
[INFO] [stdout]     |                                   ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]   --> src/presentation/components/vector_slider.rs:45:37
[INFO] [stdout]    |
[INFO] [stdout] 45 |                 .stroke(Stroke::new(1.0, t.toolbar_border))
[INFO] [stdout]    |                                     ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/vector_slider.rs:131:89
[INFO] [stdout]     |
[INFO] [stdout] 131 |                         ui.style_mut().visuals.widgets.inactive.fg_stroke = Stroke::new(0.0, Color32::TRANSPARENT);
[INFO] [stdout]     |                                                                                         ^^^ help: explicitly specify the type as `f32`: `0.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/vector_slider.rs:136:88
[INFO] [stdout]     |
[INFO] [stdout] 136 |                         ui.style_mut().visuals.widgets.hovered.fg_stroke = Stroke::new(2.0, accent);
[INFO] [stdout]     |                                                                                        ^^^ help: explicitly specify the type as `f32`: `2.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/vector_slider.rs:141:87
[INFO] [stdout]     |
[INFO] [stdout] 141 |                         ui.style_mut().visuals.widgets.active.fg_stroke = Stroke::new(2.0, accent_active);
[INFO] [stdout]     |                                                                                       ^^^ help: explicitly specify the type as `f32`: `2.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/tab_bar.rs:305:45
[INFO] [stdout]     |
[INFO] [stdout] 305 | ...                   Stroke::new(2.0, t.accent),
[INFO] [stdout]     |                                   ^^^ help: explicitly specify the type as `f32`: `2.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/tab_bar.rs:402:25
[INFO] [stdout]     |
[INFO] [stdout] 402 |             Stroke::new(1.0, sep_color),
[INFO] [stdout]     |                         ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/tab_bar.rs:416:64
[INFO] [stdout]     |
[INFO] [stdout] 416 |             painter.circle_stroke(dot_center, 4.5, Stroke::new(1.5, swatch_color));
[INFO] [stdout]     |                                                                ^^^ help: explicitly specify the type as `f32`: `1.5_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/tab_bar.rs:448:36
[INFO] [stdout]     |
[INFO] [stdout] 448 |         let x_stroke = Stroke::new(1.2, t.text_secondary);
[INFO] [stdout]     |                                    ^^^ help: explicitly specify the type as `f32`: `1.2_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]   --> src/presentation/components/update_notification.rs:80:29
[INFO] [stdout]    |
[INFO] [stdout] 80 |         .stroke(Stroke::new(1.0, border_color))
[INFO] [stdout]    |                             ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/gradient_scale.rs:257:37
[INFO] [stdout]     |
[INFO] [stdout] 257 |                         Stroke::new(1.0, border_color),
[INFO] [stdout]     |                                     ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/update_notification.rs:159:41
[INFO] [stdout]     |
[INFO] [stdout] 159 |                     .stroke(Stroke::new(1.0, t.toolbar_border))
[INFO] [stdout]     |                                         ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/gradient_scale.rs:299:25
[INFO] [stdout]     |
[INFO] [stdout] 299 |                         1.0,
[INFO] [stdout]     |                         ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]   --> src/presentation/components/overlays.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 |             1.0,
[INFO] [stdout]    |             ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/overlays.rs:103:21
[INFO] [stdout]     |
[INFO] [stdout] 103 |         Stroke::new(1.5, bar_color),
[INFO] [stdout]     |                     ^^^ help: explicitly specify the type as `f32`: `1.5_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/overlays.rs:111:21
[INFO] [stdout]     |
[INFO] [stdout] 111 |         Stroke::new(1.5, bar_color),
[INFO] [stdout]     |                     ^^^ help: explicitly specify the type as `f32`: `1.5_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/overlays.rs:119:21
[INFO] [stdout]     |
[INFO] [stdout] 119 |         Stroke::new(1.5, bar_color),
[INFO] [stdout]     |                     ^^^ help: explicitly specify the type as `f32`: `1.5_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/overlays.rs:179:56
[INFO] [stdout]     |
[INFO] [stdout] 179 |             painter.line_segment([p1, p2], Stroke::new(2.0, ruler_color));
[INFO] [stdout]     |                                                        ^^^ help: explicitly specify the type as `f32`: `2.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/overlays.rs:212:60
[INFO] [stdout]     |
[INFO] [stdout] 212 |                 painter.line_segment([p1, p2], Stroke::new(1.5, preview_color));
[INFO] [stdout]     |                                                            ^^^ help: explicitly specify the type as `f32`: `1.5_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/overlays.rs:250:48
[INFO] [stdout]     |
[INFO] [stdout] 250 |     painter.rect_stroke(rect, 0.0, Stroke::new(1.5, theme::active().accent));
[INFO] [stdout]     |                                                ^^^ help: explicitly specify the type as `f32`: `1.5_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/overlays.rs:428:64
[INFO] [stdout]     |
[INFO] [stdout] 428 |     painter.rect_stroke(rect, Rounding::same(4.0), Stroke::new(1.0, border_color));
[INFO] [stdout]     |                                                                ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/ui.rs:963:43
[INFO] [stdout]     |
[INFO] [stdout] 963 |                         egui::Stroke::new(1.0, divider_border),
[INFO] [stdout]     |                                           ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/ui.rs:988:107
[INFO] [stdout]     |
[INFO] [stdout] 988 |                     painter.rect_stroke(btn_rect, egui::Rounding::same(btn_size / 2.0), egui::Stroke::new(1.0, divider_border));
[INFO] [stdout]     |                                                                                                           ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]     --> src/presentation/ui.rs:1023:39
[INFO] [stdout]      |
[INFO] [stdout] 1023 |                     egui::Stroke::new(1.0, t.toolbar_border),
[INFO] [stdout]      |                                       ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]      = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]     --> src/presentation/ui.rs:1062:51
[INFO] [stdout]      |
[INFO] [stdout] 1062 | ...                   egui::Stroke::new(2.0, highlight_color),
[INFO] [stdout]      |                                         ^^^ help: explicitly specify the type as `f32`: `2.0_f32`
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]      = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]     --> src/presentation/ui.rs:1106:47
[INFO] [stdout]      |
[INFO] [stdout] 1106 | ...                   egui::Stroke::new(2.0, t.accent.linear_multiply(0.6)),
[INFO] [stdout]      |                                         ^^^ help: explicitly specify the type as `f32`: `2.0_f32`
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]      = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/preferences.rs:231:33
[INFO] [stdout]     |
[INFO] [stdout] 231 |                     Stroke::new(0.5, if t.is_dark { Color32::from_rgb(80, 80, 80) } else { Color32::from_rgb(180, 180, 180) }),
[INFO] [stdout]     |                                 ^^^ help: explicitly specify the type as `f32`: `0.5_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/preferences.rs:259:33
[INFO] [stdout]     |
[INFO] [stdout] 259 |                     Stroke::new(2.0, t.accent),
[INFO] [stdout]     |                                 ^^^ help: explicitly specify the type as `f32`: `2.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]   --> src/presentation/components/sidebar.rs:65:37
[INFO] [stdout]    |
[INFO] [stdout] 65 |                 .stroke(Stroke::new(1.0, t.toolbar_border))
[INFO] [stdout]    |                                     ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/sidebar.rs:240:72
[INFO] [stdout]     |
[INFO] [stdout] 240 |                     painter.circle_stroke(dot_center, 4.0, Stroke::new(1.2, ring_color));
[INFO] [stdout]     |                                                                        ^^^ help: explicitly specify the type as `f32`: `1.2_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/sidebar.rs:286:44
[INFO] [stdout]     |
[INFO] [stdout] 286 |                 let x_stroke = Stroke::new(1.2, x_color);
[INFO] [stdout]     |                                            ^^^ help: explicitly specify the type as `f32`: `1.2_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/sidebar.rs:325:29
[INFO] [stdout]     |
[INFO] [stdout] 325 |         .stroke(Stroke::new(1.0, accent_outline))
[INFO] [stdout]     |                             ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]   --> src/presentation/components/status_bar.rs:50:37
[INFO] [stdout]    |
[INFO] [stdout] 50 |                 .stroke(Stroke::new(1.0, t.toolbar_border))
[INFO] [stdout]    |                                     ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/activity_bar.rs:141:29
[INFO] [stdout]     |
[INFO] [stdout] 141 |                 Stroke::new(1.0, t.toolbar_border),
[INFO] [stdout]     |                             ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/tab_bar.rs:137:41
[INFO] [stdout]     |
[INFO] [stdout] 137 | ...                   Stroke::new(1.0, t.toolbar_border),
[INFO] [stdout]     |                                   ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/tab_bar.rs:305:45
[INFO] [stdout]     |
[INFO] [stdout] 305 | ...                   Stroke::new(2.0, t.accent),
[INFO] [stdout]     |                                   ^^^ help: explicitly specify the type as `f32`: `2.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/tab_bar.rs:402:25
[INFO] [stdout]     |
[INFO] [stdout] 402 |             Stroke::new(1.0, sep_color),
[INFO] [stdout]     |                         ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/tab_bar.rs:416:64
[INFO] [stdout]     |
[INFO] [stdout] 416 |             painter.circle_stroke(dot_center, 4.5, Stroke::new(1.5, swatch_color));
[INFO] [stdout]     |                                                                ^^^ help: explicitly specify the type as `f32`: `1.5_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/tab_bar.rs:448:36
[INFO] [stdout]     |
[INFO] [stdout] 448 |         let x_stroke = Stroke::new(1.2, t.text_secondary);
[INFO] [stdout]     |                                    ^^^ help: explicitly specify the type as `f32`: `1.2_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]   --> src/presentation/components/update_notification.rs:80:29
[INFO] [stdout]    |
[INFO] [stdout] 80 |         .stroke(Stroke::new(1.0, border_color))
[INFO] [stdout]    |                             ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/components/update_notification.rs:159:41
[INFO] [stdout]     |
[INFO] [stdout] 159 |                     .stroke(Stroke::new(1.0, t.toolbar_border))
[INFO] [stdout]     |                                         ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/ui.rs:963:43
[INFO] [stdout]     |
[INFO] [stdout] 963 |                         egui::Stroke::new(1.0, divider_border),
[INFO] [stdout]     |                                           ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]    --> src/presentation/ui.rs:988:107
[INFO] [stdout]     |
[INFO] [stdout] 988 |                     painter.rect_stroke(btn_rect, egui::Rounding::same(btn_size / 2.0), egui::Stroke::new(1.0, divider_border));
[INFO] [stdout]     |                                                                                                           ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]     --> src/presentation/ui.rs:1023:39
[INFO] [stdout]      |
[INFO] [stdout] 1023 |                     egui::Stroke::new(1.0, t.toolbar_border),
[INFO] [stdout]      |                                       ^^^ help: explicitly specify the type as `f32`: `1.0_f32`
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]      = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]     --> src/presentation/ui.rs:1062:51
[INFO] [stdout]      |
[INFO] [stdout] 1062 | ...                   egui::Stroke::new(2.0, highlight_color),
[INFO] [stdout]      |                                         ^^^ help: explicitly specify the type as `f32`: `2.0_f32`
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]      = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: falling back to `f32` as the trait bound `f32: From<f64>` is not satisfied
[INFO] [stdout]     --> src/presentation/ui.rs:1106:47
[INFO] [stdout]      |
[INFO] [stdout] 1106 | ...                   egui::Stroke::new(2.0, t.accent.linear_multiply(0.6)),
[INFO] [stdout]      |                                         ^^^ help: explicitly specify the type as `f32`: `2.0_f32`
[INFO] [stdout]      |
[INFO] [stdout]      = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]      = note: for more information, see issue #154024 <https://github.com/rust-lang/rust/issues/154024>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `LoadingState` is more private than the item `AppState::loading_state`
[INFO] [stdout]   --> src/presentation/app.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub loading_state: Arc<Mutex<LoadingState>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `AppState::loading_state` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `LoadingState` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/presentation/app.rs:33:1
[INFO] [stdout]    |
[INFO] [stdout] 33 | enum LoadingState {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `BaseContour`, `DepthContour`, `CoincidingContour`, `Support`, and `Travel` are never constructed
[INFO] [stdout]   --> src/domain/entities/vector.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub enum VectorType {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 15 |     BaseContour,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 16 |     /// Depth contour for variable depth regions
[INFO] [stdout] 17 |     DepthContour,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 18 |     /// Coinciding contour (overlapping regions)
[INFO] [stdout] 19 |     CoincidingContour,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     Support,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 24 |     /// Travel move (non-printing)
[INFO] [stdout] 25 |     Travel,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VectorType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `is_closed`, `ring_index`, and `part_id` are never read
[INFO] [stdout]   --> src/domain/entities/vector.rs:44:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct Vector {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub is_closed: bool,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub ring_index: Option<u32>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 49 |     /// Part ID this vector belongs to
[INFO] [stdout] 50 |     pub part_id: Option<String>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Vector` 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 `overhang_angle`, `depth`, and `hit_angle` are never read
[INFO] [stdout]    --> src/domain/entities/vector.rs:144:9
[INFO] [stdout]     |
[INFO] [stdout] 136 | pub struct VectorParameters {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 144 |     pub overhang_angle: Option<f32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 145 |     /// Depth for variable depth processing
[INFO] [stdout] 146 |     pub depth: Option<f32>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 147 |     /// Surface hit angle in degrees
[INFO] [stdout] 148 |     pub hit_angle: Option<f32>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `VectorParameters` 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 `wait_times` is never read
[INFO] [stdout]   --> src/domain/entities/layer.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct LayerParameters {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub wait_times: Vec<(u32, u32)>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LayerParameters` 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 `thickness` and `part_id` are never read
[INFO] [stdout]   --> src/domain/entities/layer.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct Layer {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub thickness: f32,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub part_id: Option<String>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Layer` 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 `z_min`, `z_max`, and `build_height` are never read
[INFO] [stdout]   --> src/domain/entities/slice_stack.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct SliceStackStats {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub z_min: f32,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 19 |     /// Maximum Z height
[INFO] [stdout] 20 |     pub z_max: f32,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 21 |     /// Build height (z_max - z_min)
[INFO] [stdout] 22 |     pub build_height: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SliceStackStats` 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 `name`, `platform_bounds`, and `units` are never read
[INFO] [stdout]   --> src/domain/entities/slice_stack.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct SliceStack {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 28 |     /// Name/identifier for this slice stack
[INFO] [stdout] 29 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub platform_bounds: Option<(Point2D, Point2D)>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 36 |     /// Unit of measurement (typically "mm")
[INFO] [stdout] 37 |     pub units: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SliceStack` 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 `created`, `generator`, `material`, and `machine` are never read
[INFO] [stdout]   --> src/domain/entities/toolpath.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct ToolpathMetadata {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub created: Option<String>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 15 |     /// Software that generated the file
[INFO] [stdout] 16 |     pub generator: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 17 |     /// Material information
[INFO] [stdout] 18 |     pub material: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 19 |     /// Machine/printer name
[INFO] [stdout] 20 |     pub machine: Option<String>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ToolpathMetadata` 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 `parts` is never read
[INFO] [stdout]   --> src/domain/entities/toolpath.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct Toolpath {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub parts: Vec<String>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Toolpath` 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 `lerp` and `to_array` are never used
[INFO] [stdout]   --> src/domain/value_objects/point.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Point2D {
[INFO] [stdout]    | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub fn lerp(&self, other: &Point2D, t: f32) -> Point2D {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn to_array(&self) -> [f32; 2] {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Point3D` is never constructed
[INFO] [stdout]   --> src/domain/value_objects/point.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub struct Point3D {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `zero`, `distance_to`, `to_2d`, and `to_array` are never used
[INFO] [stdout]   --> src/domain/value_objects/point.rs:66:18
[INFO] [stdout]    |
[INFO] [stdout] 64 | impl Point3D {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 65 |     /// Create a new 3D point
[INFO] [stdout] 66 |     pub const fn new(x: f32, y: f32, z: f32) -> Self {
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub const fn zero() -> Self {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 76 |     pub fn distance_to(&self, other: &Point3D) -> f32 {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |     pub fn to_2d(&self) -> Point2D {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 89 |     pub fn to_array(&self) -> [f32; 3] {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `to_hex`, `BLUE`, `YELLOW`, and `TRANSPARENT` are never used
[INFO] [stdout]    --> src/domain/value_objects/color.rs:46:12
[INFO] [stdout]     |
[INFO] [stdout]  14 | impl Color {
[INFO] [stdout]     | ---------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  46 |     pub fn to_hex(&self) -> String {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub const BLUE: Color = Color::rgb(0.0, 0.0, 1.0);
[INFO] [stdout]     |               ^^^^
[INFO] [stdout] 115 |     pub const YELLOW: Color = Color::rgb(1.0, 1.0, 0.0);
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub const TRANSPARENT: Color = Color::new(0.0, 0.0, 0.0, 0.0);
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_valid` is never used
[INFO] [stdout]   --> src/domain/value_objects/bounds.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Bounds2D {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn is_valid(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Bounds3D` is never constructed
[INFO] [stdout]   --> src/domain/value_objects/bounds.rs:60:12
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub struct Bounds3D {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new` and `empty` are never used
[INFO] [stdout]   --> src/domain/value_objects/bounds.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 65 | impl Bounds3D {
[INFO] [stdout]    | ------------- associated functions in this implementation
[INFO] [stdout] 66 |     /// Create a new bounding box
[INFO] [stdout] 67 |     pub fn new(min: Point3D, max: Point3D) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn empty() -> Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `InvalidFormat` is never constructed
[INFO] [stdout]   --> src/application/ports/file_port.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub enum FileError {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 19 |     InvalidFormat(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FileError` 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 `render_vector` is never used
[INFO] [stdout]    --> src/application/ports/renderer_port.rs:405:8
[INFO] [stdout]     |
[INFO] [stdout] 380 | pub trait Renderer: Send {
[INFO] [stdout]     |           -------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 405 |     fn render_vector(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `NotFound` is never constructed
[INFO] [stdout]   --> src/application/ports/config_port.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub enum ConfigError {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] 11 |     #[error("Config file not found: {0}")]
[INFO] [stdout] 12 |     NotFound(String),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConfigError` 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 `default_config` is never used
[INFO] [stdout]    --> src/application/ports/config_port.rs:392:8
[INFO] [stdout]     |
[INFO] [stdout] 384 | pub trait ConfigManager: Send + Sync {
[INFO] [stdout]     |           ------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 392 |     fn default_config(&self) -> AppConfig {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `color_scheme` is never read
[INFO] [stdout]   --> src/application/use_cases/render_view.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub struct RenderViewUseCase {
[INFO] [stdout]    |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 70 |     pub color_scheme: ColorScheme,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `DepthContours` is never constructed
[INFO] [stdout]    --> src/application/use_cases/render_view.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 120 | pub enum DisplayOption {
[INFO] [stdout]     |          ------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 123 |     DepthContours,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DisplayOption` 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 `body` is never read
[INFO] [stdout]   --> src/infrastructure/updater/updater.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct UpdateInfo {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub body: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UpdateInfo` 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 `x` and `y` are never read
[INFO] [stdout]   --> src/presentation/window.rs:57:17
[INFO] [stdout]    |
[INFO] [stdout] 57 |     MouseMove { x: f32, y: f32 },
[INFO] [stdout]    |     ---------   ^       ^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppEvent` 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 `show_file_info`, `show_controls`, `show_grid`, and `gradient_expanded` are never read
[INFO] [stdout]    --> src/presentation/layout.rs:96:9
[INFO] [stdout]     |
[INFO] [stdout]  88 | pub struct VisibilityFlags {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout]  96 |     pub show_file_info: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]  97 |     /// Whether controls popup is open
[INFO] [stdout]  98 |     pub show_controls: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]  99 |     /// Whether the grid is enabled (affects grid label overlay)
[INFO] [stdout] 100 |     pub show_grid: bool,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub gradient_expanded: [bool; 2],
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `VisibilityFlags` 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 `screen` and `scale_bar` are never read
[INFO] [stdout]    --> src/presentation/layout.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 120 | pub struct LayoutRegions {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] 121 |     /// Full screen rect
[INFO] [stdout] 122 |     pub screen: Rect,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub scale_bar: Option<Rect>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LayoutRegions` 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 `activity_bar_width`, `top`, `bottom`, and `content_height` are never read
[INFO] [stdout]    --> src/presentation/layout.rs:165:9
[INFO] [stdout]     |
[INFO] [stdout] 161 | pub struct SidebarRegion {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 165 |     pub activity_bar_width: f32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 171 |     pub top: f32,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 172 |     /// Bottom position (above status bar / vector player)
[INFO] [stdout] 173 |     pub bottom: f32,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 174 |     /// Available content height inside the sidebar
[INFO] [stdout] 175 |     pub content_height: f32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SidebarRegion` 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 `top` is never read
[INFO] [stdout]    --> src/presentation/layout.rs:184:9
[INFO] [stdout]     |
[INFO] [stdout] 180 | pub struct ToolPanelRegion {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 184 |     pub top: f32,
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolPanelRegion` 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 `show_ticks` is never read
[INFO] [stdout]    --> src/presentation/layout.rs:208:9
[INFO] [stdout]     |
[INFO] [stdout] 200 | pub struct GradientRegion {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 208 |     pub show_ticks: bool,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `GradientRegion` 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 `rect` is never read
[INFO] [stdout]    --> src/presentation/layout.rs:218:9
[INFO] [stdout]     |
[INFO] [stdout] 216 | pub struct StatusBarRegion {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 217 |     /// Full rect for the status bar
[INFO] [stdout] 218 |     pub rect: Rect,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `StatusBarRegion` 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 `height` is never read
[INFO] [stdout]    --> src/presentation/layout.rs:231:9
[INFO] [stdout]     |
[INFO] [stdout] 225 | pub struct VectorPlayerRegion {
[INFO] [stdout]     |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 231 |     pub height: f32,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `VectorPlayerRegion` 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: function `gradient_color` is never used
[INFO] [stdout]   --> src/presentation/palette.rs:87:8
[INFO] [stdout]    |
[INFO] [stdout] 87 | pub fn gradient_color(palette: &ThemePalette, t: f32) -> Color {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `open_file_requested` is never read
[INFO] [stdout]   --> src/presentation/components/toolbar.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct ToolbarOutput {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 18 |     pub open_file_requested: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ToolbarOutput` 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 `filter_min` and `filter_max` are never read
[INFO] [stdout]   --> src/presentation/components/gradient_scale.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct GradientOutput {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 26 |     pub filter_min: f32,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 27 |     pub filter_max: f32,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GradientOutput` 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 `is_overlay_visible` is never read
[INFO] [stdout]   --> src/presentation/components/tab_bar.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct TabInfo {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub is_overlay_visible: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TabInfo` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `banner_pos` is never used
[INFO] [stdout]   --> src/presentation/components/update_notification.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn banner_pos(ctx: &Context) -> egui::Pos2 {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `vector_view_enabled` is never read
[INFO] [stdout]    --> src/presentation/ui.rs:217:9
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub struct UiOutput {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 217 |     pub vector_view_enabled: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UiOutput` 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 `logo_texture` is never read
[INFO] [stdout]    --> src/presentation/ui.rs:449:5
[INFO] [stdout]     |
[INFO] [stdout] 441 | pub struct UiRenderer {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 449 |     logo_texture: Option<egui::TextureHandle>,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `LoadingState` is more private than the item `AppState::loading_state`
[INFO] [stdout]   --> src/presentation/app.rs:57:5
[INFO] [stdout]    |
[INFO] [stdout] 57 |     pub loading_state: Arc<Mutex<LoadingState>>,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `AppState::loading_state` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `LoadingState` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/presentation/app.rs:33:1
[INFO] [stdout]    |
[INFO] [stdout] 33 | enum LoadingState {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `BaseContour`, `DepthContour`, `CoincidingContour`, `Support`, and `Travel` are never constructed
[INFO] [stdout]   --> src/domain/entities/vector.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub enum VectorType {
[INFO] [stdout]    |          ---------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 15 |     BaseContour,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 16 |     /// Depth contour for variable depth regions
[INFO] [stdout] 17 |     DepthContour,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 18 |     /// Coinciding contour (overlapping regions)
[INFO] [stdout] 19 |     CoincidingContour,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 23 |     Support,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout] 24 |     /// Travel move (non-printing)
[INFO] [stdout] 25 |     Travel,
[INFO] [stdout]    |     ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VectorType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ring_index` and `part_id` are never read
[INFO] [stdout]   --> src/domain/entities/vector.rs:48:9
[INFO] [stdout]    |
[INFO] [stdout] 36 | pub struct Vector {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 48 |     pub ring_index: Option<u32>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 49 |     /// Part ID this vector belongs to
[INFO] [stdout] 50 |     pub part_id: Option<String>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Vector` 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 `overhang_angle`, `depth`, and `hit_angle` are never read
[INFO] [stdout]    --> src/domain/entities/vector.rs:144:9
[INFO] [stdout]     |
[INFO] [stdout] 136 | pub struct VectorParameters {
[INFO] [stdout]     |            ---------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 144 |     pub overhang_angle: Option<f32>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 145 |     /// Depth for variable depth processing
[INFO] [stdout] 146 |     pub depth: Option<f32>,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout] 147 |     /// Surface hit angle in degrees
[INFO] [stdout] 148 |     pub hit_angle: Option<f32>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `VectorParameters` 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 `wait_times` is never read
[INFO] [stdout]   --> src/domain/entities/layer.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct LayerParameters {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     pub wait_times: Vec<(u32, u32)>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LayerParameters` 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 `thickness` and `part_id` are never read
[INFO] [stdout]   --> src/domain/entities/layer.rs:27:9
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub struct Layer {
[INFO] [stdout]    |            ----- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub thickness: f32,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 31 |     pub part_id: Option<String>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Layer` 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 `build_height` is never read
[INFO] [stdout]   --> src/domain/entities/slice_stack.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct SliceStackStats {
[INFO] [stdout]    |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 22 |     pub build_height: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SliceStackStats` 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 `name`, `platform_bounds`, and `units` are never read
[INFO] [stdout]   --> src/domain/entities/slice_stack.rs:29:9
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct SliceStack {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 28 |     /// Name/identifier for this slice stack
[INFO] [stdout] 29 |     pub name: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub platform_bounds: Option<(Point2D, Point2D)>,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 36 |     /// Unit of measurement (typically "mm")
[INFO] [stdout] 37 |     pub units: String,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SliceStack` 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 `created`, `generator`, `material`, and `machine` are never read
[INFO] [stdout]   --> src/domain/entities/toolpath.rs:14:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct ToolpathMetadata {
[INFO] [stdout]    |            ---------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     pub created: Option<String>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 15 |     /// Software that generated the file
[INFO] [stdout] 16 |     pub generator: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 17 |     /// Material information
[INFO] [stdout] 18 |     pub material: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 19 |     /// Machine/printer name
[INFO] [stdout] 20 |     pub machine: Option<String>,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ToolpathMetadata` 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 `parts` is never read
[INFO] [stdout]   --> src/domain/entities/toolpath.rs:33:9
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub struct Toolpath {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub parts: Vec<String>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Toolpath` 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 `to_array` is never used
[INFO] [stdout]   --> src/domain/value_objects/point.rs:39:12
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl Point2D {
[INFO] [stdout]    | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn to_array(&self) -> [f32; 2] {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Point3D` is never constructed
[INFO] [stdout]   --> src/domain/value_objects/point.rs:58:12
[INFO] [stdout]    |
[INFO] [stdout] 58 | pub struct Point3D {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `zero`, `distance_to`, `to_2d`, and `to_array` are never used
[INFO] [stdout]   --> src/domain/value_objects/point.rs:66:18
[INFO] [stdout]    |
[INFO] [stdout] 64 | impl Point3D {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 65 |     /// Create a new 3D point
[INFO] [stdout] 66 |     pub const fn new(x: f32, y: f32, z: f32) -> Self {
[INFO] [stdout]    |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 71 |     pub const fn zero() -> Self {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 76 |     pub fn distance_to(&self, other: &Point3D) -> f32 {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 84 |     pub fn to_2d(&self) -> Point2D {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 89 |     pub fn to_array(&self) -> [f32; 3] {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated constants `BLUE`, `YELLOW`, and `TRANSPARENT` are never used
[INFO] [stdout]    --> src/domain/value_objects/color.rs:114:15
[INFO] [stdout]     |
[INFO] [stdout]  14 | impl Color {
[INFO] [stdout]     | ---------- associated constants in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 114 |     pub const BLUE: Color = Color::rgb(0.0, 0.0, 1.0);
[INFO] [stdout]     |               ^^^^
[INFO] [stdout] 115 |     pub const YELLOW: Color = Color::rgb(1.0, 1.0, 0.0);
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub const TRANSPARENT: Color = Color::new(0.0, 0.0, 0.0, 0.0);
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `is_valid` is never used
[INFO] [stdout]   --> src/domain/value_objects/bounds.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl Bounds2D {
[INFO] [stdout]    | ------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub fn is_valid(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Bounds3D` is never constructed
[INFO] [stdout]   --> src/domain/value_objects/bounds.rs:60:12
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub struct Bounds3D {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new` and `empty` are never used
[INFO] [stdout]   --> src/domain/value_objects/bounds.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 65 | impl Bounds3D {
[INFO] [stdout]    | ------------- associated functions in this implementation
[INFO] [stdout] 66 |     /// Create a new bounding box
[INFO] [stdout] 67 |     pub fn new(min: Point3D, max: Point3D) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn empty() -> Self {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `InvalidFormat` is never constructed
[INFO] [stdout]   --> src/application/ports/file_port.rs:19:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub enum FileError {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 19 |     InvalidFormat(String),
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `FileError` 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 `render_vector` is never used
[INFO] [stdout]    --> src/application/ports/renderer_port.rs:405:8
[INFO] [stdout]     |
[INFO] [stdout] 380 | pub trait Renderer: Send {
[INFO] [stdout]     |           -------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 405 |     fn render_vector(
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `NotFound` is never constructed
[INFO] [stdout]   --> src/application/ports/config_port.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub enum ConfigError {
[INFO] [stdout]    |          ----------- variant in this enum
[INFO] [stdout] 11 |     #[error("Config file not found: {0}")]
[INFO] [stdout] 12 |     NotFound(String),
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConfigError` 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_scheme` is never read
[INFO] [stdout]   --> src/application/use_cases/render_view.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub struct RenderViewUseCase {
[INFO] [stdout]    |            ----------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 70 |     pub color_scheme: ColorScheme,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `DepthContours` is never constructed
[INFO] [stdout]    --> src/application/use_cases/render_view.rs:123:5
[INFO] [stdout]     |
[INFO] [stdout] 120 | pub enum DisplayOption {
[INFO] [stdout]     |          ------------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 123 |     DepthContours,
[INFO] [stdout]     |     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DisplayOption` 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 `body` is never read
[INFO] [stdout]   --> src/infrastructure/updater/updater.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub struct UpdateInfo {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub body: String,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `UpdateInfo` 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 `x` and `y` are never read
[INFO] [stdout]   --> src/presentation/window.rs:57:17
[INFO] [stdout]    |
[INFO] [stdout] 57 |     MouseMove { x: f32, y: f32 },
[INFO] [stdout]    |     ---------   ^       ^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `AppEvent` 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 `show_file_info`, `show_controls`, `show_grid`, and `gradient_expanded` are never read
[INFO] [stdout]    --> src/presentation/layout.rs:96:9
[INFO] [stdout]     |
[INFO] [stdout]  88 | pub struct VisibilityFlags {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout]  96 |     pub show_file_info: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]  97 |     /// Whether controls popup is open
[INFO] [stdout]  98 |     pub show_controls: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]  99 |     /// Whether the grid is enabled (affects grid label overlay)
[INFO] [stdout] 100 |     pub show_grid: bool,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub gradient_expanded: [bool; 2],
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `VisibilityFlags` 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 `screen` and `scale_bar` are never read
[INFO] [stdout]    --> src/presentation/layout.rs:122:9
[INFO] [stdout]     |
[INFO] [stdout] 120 | pub struct LayoutRegions {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] 121 |     /// Full screen rect
[INFO] [stdout] 122 |     pub screen: Rect,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub scale_bar: Option<Rect>,
[INFO] [stdout]     |         ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `LayoutRegions` 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 `activity_bar_width`, `top`, `bottom`, and `content_height` are never read
[INFO] [stdout]    --> src/presentation/layout.rs:165:9
[INFO] [stdout]     |
[INFO] [stdout] 161 | pub struct SidebarRegion {
[INFO] [stdout]     |            ------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 165 |     pub activity_bar_width: f32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 171 |     pub top: f32,
[INFO] [stdout]     |         ^^^
[INFO] [stdout] 172 |     /// Bottom position (above status bar / vector player)
[INFO] [stdout] 173 |     pub bottom: f32,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 174 |     /// Available content height inside the sidebar
[INFO] [stdout] 175 |     pub content_height: f32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `SidebarRegion` 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 `top` is never read
[INFO] [stdout]    --> src/presentation/layout.rs:184:9
[INFO] [stdout]     |
[INFO] [stdout] 180 | pub struct ToolPanelRegion {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 184 |     pub top: f32,
[INFO] [stdout]     |         ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ToolPanelRegion` 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 `show_ticks` is never read
[INFO] [stdout]    --> src/presentation/layout.rs:208:9
[INFO] [stdout]     |
[INFO] [stdout] 200 | pub struct GradientRegion {
[INFO] [stdout]     |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 208 |     pub show_ticks: bool,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `GradientRegion` 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 `rect` is never read
[INFO] [stdout]    --> src/presentation/layout.rs:218:9
[INFO] [stdout]     |
[INFO] [stdout] 216 | pub struct StatusBarRegion {
[INFO] [stdout]     |            --------------- field in this struct
[INFO] [stdout] 217 |     /// Full rect for the status bar
[INFO] [stdout] 218 |     pub rect: Rect,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `StatusBarRegion` 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 `height` is never read
[INFO] [stdout]    --> src/presentation/layout.rs:231:9
[INFO] [stdout]     |
[INFO] [stdout] 225 | pub struct VectorPlayerRegion {
[INFO] [stdout]     |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 231 |     pub height: f32,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `VectorPlayerRegion` 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 `open_file_requested` is never read
[INFO] [stdout]   --> src/presentation/components/toolbar.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct ToolbarOutput {
[INFO] [stdout]    |            ------------- field in this struct
[INFO] [stdout] 18 |     pub open_file_requested: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ToolbarOutput` 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 `filter_min` and `filter_max` are never read
[INFO] [stdout]   --> src/presentation/components/gradient_scale.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct GradientOutput {
[INFO] [stdout]    |            -------------- fields in this struct
[INFO] [stdout] 26 |     pub filter_min: f32,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 27 |     pub filter_max: f32,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `GradientOutput` 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 `is_overlay_visible` is never read
[INFO] [stdout]   --> src/presentation/components/tab_bar.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 46 | pub struct TabInfo {
[INFO] [stdout]    |            ------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 51 |     pub is_overlay_visible: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TabInfo` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `banner_pos` is never used
[INFO] [stdout]   --> src/presentation/components/update_notification.rs:30:4
[INFO] [stdout]    |
[INFO] [stdout] 30 | fn banner_pos(ctx: &Context) -> egui::Pos2 {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `vector_view_enabled` is never read
[INFO] [stdout]    --> src/presentation/ui.rs:217:9
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub struct UiOutput {
[INFO] [stdout]     |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 217 |     pub vector_view_enabled: bool,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `UiOutput` 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 `logo_texture` is never read
[INFO] [stdout]    --> src/presentation/ui.rs:449:5
[INFO] [stdout]     |
[INFO] [stdout] 441 | pub struct UiRenderer {
[INFO] [stdout]     |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 449 |     logo_texture: Option<egui::TextureHandle>,
[INFO] [stdout]     |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 20s
[INFO] running `Command { std: "docker" "inspect" "81ac88eae43739d86d71c93ee5852405a72884ce73b0efcfcaff4d7bc3a92d25", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "81ac88eae43739d86d71c93ee5852405a72884ce73b0efcfcaff4d7bc3a92d25", kill_on_drop: false }`
[INFO] [stdout] 81ac88eae43739d86d71c93ee5852405a72884ce73b0efcfcaff4d7bc3a92d25
