[INFO] cloning repository https://github.com/sapessi/ocypode [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/sapessi/ocypode" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsapessi%2Focypode", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsapessi%2Focypode'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 40e16182f0aac522a93cefe964e03452c27e43d6 [INFO] checking sapessi/ocypode against master#eeb94be79adc9df7a09ad0b2421f16e60e6d932c for pr-152971 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsapessi%2Focypode" "/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/sapessi/ocypode [INFO] finished tweaking git repo https://github.com/sapessi/ocypode [INFO] tweaked toml for git repo https://github.com/sapessi/ocypode written to /workspace/builds/worker-4-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/sapessi/ocypode on toolchain eeb94be79adc9df7a09ad0b2421f16e60e6d932c [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+eeb94be79adc9df7a09ad0b2421f16e60e6d932c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/sapessi/ocypode 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" "+eeb94be79adc9df7a09ad0b2421f16e60e6d932c" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Updating git repository `https://github.com/sapessi/egui-dropdown.git` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded simple_moving_average v1.0.2 [INFO] [stderr] Downloaded typename v0.1.2 [INFO] [stderr] Downloaded snafu-derive v0.8.9 [INFO] [stderr] Downloaded snafu v0.8.9 [INFO] [stderr] Downloaded ehttp v0.5.0 [INFO] [stderr] Downloaded ecolor v0.33.2 [INFO] [stderr] Downloaded serde-jsonlines v0.7.0 [INFO] [stderr] Downloaded colog v1.4.0 [INFO] [stderr] Downloaded egui-wgpu v0.33.2 [INFO] [stderr] Downloaded simetry v0.2.3 [INFO] [stderr] Downloaded egui_extras v0.33.2 [INFO] [stderr] Downloaded emath v0.33.2 [INFO] [stderr] Downloaded eframe v0.33.2 [INFO] [stderr] Downloaded uom v0.34.0 [INFO] [stderr] Downloaded epaint v0.33.2 [INFO] [stderr] Downloaded moxcms v0.7.10 [INFO] [stderr] Downloaded egui_plot v0.34.0 [INFO] [stderr] Downloaded egui-winit v0.33.2 [INFO] [stderr] Downloaded egui_glow v0.33.2 [INFO] [stderr] Downloaded typename_derive v0.1.4 [INFO] [stderr] Downloaded egui v0.33.2 [INFO] [stderr] Downloaded epaint_default_fonts v0.33.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+eeb94be79adc9df7a09ad0b2421f16e60e6d932c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 2536fe9029dae5501eda46332ada29a2e276979ac64d37c8d51676089494512d [INFO] running `Command { std: "docker" "start" "-a" "2536fe9029dae5501eda46332ada29a2e276979ac64d37c8d51676089494512d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "2536fe9029dae5501eda46332ada29a2e276979ac64d37c8d51676089494512d", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2536fe9029dae5501eda46332ada29a2e276979ac64d37c8d51676089494512d", kill_on_drop: false }` [INFO] [stdout] 2536fe9029dae5501eda46332ada29a2e276979ac64d37c8d51676089494512d [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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+eeb94be79adc9df7a09ad0b2421f16e60e6d932c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 6ab2df06797c27463ac08a89ea9071b28d9c9d4957a4e5484a3bc067826848b1 [INFO] running `Command { std: "docker" "start" "-a" "6ab2df06797c27463ac08a89ea9071b28d9c9d4957a4e5484a3bc067826848b1", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.103 [INFO] [stderr] Compiling quote v1.0.42 [INFO] [stderr] Compiling libc v0.2.178 [INFO] [stderr] Compiling rustix v1.1.2 [INFO] [stderr] Compiling cc v1.2.49 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling indexmap v2.12.1 [INFO] [stderr] Compiling toml_parser v1.0.4 [INFO] [stderr] Compiling wayland-sys v0.31.7 [INFO] [stderr] Compiling toml_datetime v0.7.3 [INFO] [stderr] Compiling zerocopy v0.8.31 [INFO] [stderr] Compiling quick-xml v0.37.5 [INFO] [stderr] Compiling wayland-client v0.31.11 [INFO] [stderr] Compiling toml_edit v0.23.9 [INFO] [stderr] Compiling syn v2.0.111 [INFO] [stderr] Checking flate2 v1.1.5 [INFO] [stderr] Compiling nix v0.30.1 [INFO] [stderr] Compiling wayland-scanner v0.31.7 [INFO] [stderr] Checking float-cmp v0.9.0 [INFO] [stderr] Compiling proc-macro-crate v3.4.0 [INFO] [stderr] Compiling wayland-backend v0.3.11 [INFO] [stderr] Checking getrandom v0.3.4 [INFO] [stderr] Checking signal-hook-registry v1.4.7 [INFO] [stderr] Checking strict-num v0.1.1 [INFO] [stderr] Checking async-lock v3.4.1 [INFO] [stderr] Checking parking_lot_core v0.9.12 [INFO] [stderr] Checking uuid v1.19.0 [INFO] [stderr] Checking png v0.17.16 [INFO] [stderr] Checking parking_lot v0.12.5 [INFO] [stderr] Checking memmap2 v0.9.9 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Checking epaint_default_fonts v0.33.2 [INFO] [stderr] Checking x11-dl v2.21.0 [INFO] [stderr] Compiling prettyplease v0.2.37 [INFO] [stderr] Checking getrandom v0.2.16 [INFO] [stderr] Checking quick-error v2.0.1 [INFO] [stderr] Checking weezl v0.1.12 [INFO] [stderr] Compiling regex-syntax v0.8.8 [INFO] [stderr] Compiling bitflags v2.10.0 [INFO] [stderr] Compiling rustix v0.38.44 [INFO] [stderr] Checking gif v0.14.1 [INFO] [stderr] Compiling nom v7.1.3 [INFO] [stderr] Checking image-webp v0.2.4 [INFO] [stderr] Checking polling v3.11.0 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Checking async-io v2.6.0 [INFO] [stderr] Checking async-signal v0.2.13 [INFO] [stderr] Checking wayland-csd-frame v0.3.0 [INFO] [stderr] Checking async-process v2.5.0 [INFO] [stderr] Checking gethostname v1.1.0 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Checking x11rb v0.13.2 [INFO] [stderr] Compiling phf_shared v0.11.3 [INFO] [stderr] Checking moxcms v0.7.10 [INFO] [stderr] Checking wayland-protocols v0.32.9 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling bytemuck_derive v1.10.2 [INFO] [stderr] Compiling enumflags2_derive v0.7.12 [INFO] [stderr] Compiling zerocopy-derive v0.8.31 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling tracing-attributes v0.1.31 [INFO] [stderr] Checking bytemuck v1.24.0 [INFO] [stderr] Compiling yoke-derive v0.8.1 [INFO] [stderr] Compiling zerovec-derive v0.11.2 [INFO] [stderr] Checking tracing v0.1.43 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Checking zerofrom v0.1.6 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Checking yoke v0.8.1 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Checking zerovec v0.11.5 [INFO] [stderr] Checking zerotrie v0.2.3 [INFO] [stderr] Checking tiny-skia-path v0.11.4 [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] Compiling serde_repr v0.1.20 [INFO] [stderr] Checking icu_locale_core v2.1.1 [INFO] [stderr] Checking emath v0.33.2 [INFO] [stderr] Checking wayland-cursor v0.31.11 [INFO] [stderr] Checking ahash v0.8.12 [INFO] [stderr] Checking thiserror v1.0.69 [INFO] [stderr] Checking calloop v0.13.0 [INFO] [stderr] Checking ecolor v0.33.2 [INFO] [stderr] Checking tiny-skia v0.11.4 [INFO] [stderr] Checking icu_provider v2.1.1 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Checking calloop-wayland-source v0.3.0 [INFO] [stderr] Checking enumflags2 v0.7.12 [INFO] [stderr] Compiling zvariant_utils v3.2.1 [INFO] [stderr] Compiling quick-xml v0.36.2 [INFO] [stderr] Checking icu_properties v2.1.1 [INFO] [stderr] Checking icu_normalizer v2.1.1 [INFO] [stderr] Checking epaint v0.33.2 [INFO] [stderr] Compiling zvariant_derive v5.8.0 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Checking calloop v0.14.3 [INFO] [stderr] Compiling tokio-macros v2.6.0 [INFO] [stderr] Checking idna_adapter v1.2.1 [INFO] [stderr] Checking wayland-protocols-wlr v0.3.9 [INFO] [stderr] Checking idna v1.1.0 [INFO] [stderr] Checking wayland-protocols-plasma v0.3.9 [INFO] [stderr] Compiling zvariant v5.8.0 [INFO] [stderr] Checking url v2.5.7 [INFO] [stderr] Checking egui v0.33.2 [INFO] [stderr] Compiling thiserror-impl v2.0.17 [INFO] [stderr] Checking mio v1.1.1 [INFO] [stderr] Checking smithay-client-toolkit v0.19.2 [INFO] [stderr] Checking socket2 v0.6.1 [INFO] [stderr] Checking png v0.18.0 [INFO] [stderr] Compiling bindgen v0.66.1 [INFO] [stderr] Compiling rustls v0.23.35 [INFO] [stderr] Checking thiserror v2.0.17 [INFO] [stderr] Compiling which v4.4.2 [INFO] [stderr] Checking serde_json v1.0.145 [INFO] [stderr] Checking sctk-adwaita v0.10.1 [INFO] [stderr] Checking tokio v1.48.0 [INFO] [stderr] Checking image v0.25.9 [INFO] [stderr] Compiling zbus_names v4.2.0 [INFO] [stderr] Checking wayland-protocols-misc v0.3.9 [INFO] [stderr] Checking wayland-protocols-experimental v20250721.0.1 [INFO] [stderr] Checking winit v0.30.12 [INFO] [stderr] Checking zbus_xml v5.0.2 [INFO] [stderr] Checking calloop-wayland-source v0.4.1 [INFO] [stderr] Compiling clang-sys v1.8.1 [INFO] [stderr] Compiling zbus_macros v5.12.0 [INFO] [stderr] Compiling zbus-lockstep v0.5.2 [INFO] [stderr] Checking regex v1.12.2 [INFO] [stderr] Compiling zbus-lockstep-macros v0.5.2 [INFO] [stderr] Checking rustls-webpki v0.103.8 [INFO] [stderr] Compiling phf v0.11.3 [INFO] [stderr] Compiling cexpr v0.6.0 [INFO] [stderr] Checking http v0.2.12 [INFO] [stderr] Checking webpki-roots v1.0.4 [INFO] [stderr] Checking kurbo v0.11.3 [INFO] [stderr] Compiling peeking_take_while v0.1.2 [INFO] [stderr] Checking webpki-roots v0.26.11 [INFO] [stderr] Compiling mime_guess2 v2.3.1 [INFO] [stderr] Checking svgtypes v0.15.3 [INFO] [stderr] Checking smithay-client-toolkit v0.20.0 [INFO] [stderr] Checking glutin_glx_sys v0.6.1 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking tokio-util v0.7.17 [INFO] [stderr] Checking itertools v0.10.5 [INFO] [stderr] Checking simplecss v0.2.2 [INFO] [stderr] Checking zbus v5.12.0 [INFO] [stderr] Checking pico-args v0.5.0 [INFO] [stderr] Checking data-url v0.3.2 [INFO] [stderr] Checking imagesize v0.13.0 [INFO] [stderr] Checking xmlwriter v0.1.0 [INFO] [stderr] Checking clap_builder v4.5.53 [INFO] [stderr] Checking usvg v0.45.1 [INFO] [stderr] Checking deranged v0.5.5 [INFO] [stderr] Checking smithay-clipboard v0.7.3 [INFO] [stderr] Compiling typename_derive v0.1.4 [INFO] [stderr] Checking h2 v0.3.27 [INFO] [stderr] Checking glutin v0.32.3 [INFO] [stderr] Checking ureq v2.12.1 [INFO] [stderr] Checking http-body v0.4.6 [INFO] [stderr] Checking arboard v3.6.1 [INFO] [stderr] Checking env_filter v0.1.4 [INFO] [stderr] Compiling clap_derive v4.5.49 [INFO] [stderr] Checking webbrowser v1.0.6 [INFO] [stderr] Checking rgb v0.8.52 [INFO] [stderr] Compiling enum-map-derive v0.17.0 [INFO] [stderr] Checking rand_core v0.9.3 [INFO] [stderr] Checking socket2 v0.5.10 [INFO] [stderr] Checking windows-targets v0.42.2 [INFO] [stderr] Checking jiff v0.2.16 [INFO] [stderr] Checking time-core v0.1.6 [INFO] [stderr] Checking egui_glow v0.33.2 [INFO] [stderr] Checking resvg v0.45.1 [INFO] [stderr] Checking time v0.3.44 [INFO] [stderr] Checking enum-map v2.7.3 [INFO] [stderr] Checking dirs-sys v0.5.0 [INFO] [stderr] Checking yaml-rust v0.4.5 [INFO] [stderr] Checking windows v0.44.0 [INFO] [stderr] Checking glutin-winit v0.5.0 [INFO] [stderr] Checking ehttp v0.5.0 [INFO] [stderr] Checking uom v0.34.0 [INFO] [stderr] Checking clap v4.5.53 [INFO] [stderr] Checking typename v0.1.2 [INFO] [stderr] Compiling snafu-derive v0.8.9 [INFO] [stderr] Checking half v2.7.1 [INFO] [stderr] Checking bitmask v0.5.0 [INFO] [stderr] Checking ciborium-ll v0.2.2 [INFO] [stderr] Checking atspi-common v0.9.0 [INFO] [stderr] Checking egui_extras v0.33.2 [INFO] [stderr] Checking hyper v0.14.32 [INFO] [stderr] Checking dirs v6.0.0 [INFO] [stderr] Checking egui-dropdown v0.13.0 (https://github.com/sapessi/egui-dropdown.git?branch=egui-0.33#c1a6f877) [INFO] [stderr] Checking egui_plot v0.34.0 [INFO] [stderr] Compiling simetry v0.2.3 [INFO] [stderr] Checking serde-jsonlines v0.7.0 [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Checking env_logger v0.11.8 [INFO] [stderr] Checking colog v1.4.0 [INFO] [stderr] Checking tempfile v3.23.0 [INFO] [stderr] Checking ctrlc v3.5.1 [INFO] [stderr] Checking wait-timeout v0.2.1 [INFO] [stderr] Checking simple_moving_average v1.0.2 [INFO] [stderr] Checking bit-vec v0.8.0 [INFO] [stderr] Checking rusty-fork v0.3.1 [INFO] [stderr] Checking criterion-plot v0.5.0 [INFO] [stderr] Checking snafu v0.8.9 [INFO] [stderr] Checking rand_chacha v0.9.0 [INFO] [stderr] Checking bit-set v0.8.0 [INFO] [stderr] Checking ciborium v0.2.2 [INFO] [stderr] Checking plotters v0.3.7 [INFO] [stderr] Checking rand v0.9.2 [INFO] [stderr] Checking rand_xorshift v0.4.0 [INFO] [stderr] Checking tinytemplate v1.2.1 [INFO] [stderr] Checking is-terminal v0.4.17 [INFO] [stderr] Checking proptest v1.9.0 [INFO] [stderr] Checking criterion v0.5.1 [INFO] [stderr] Checking atspi-proxies v0.9.0 [INFO] [stderr] Checking accesskit_atspi_common v0.14.2 [INFO] [stderr] Checking atspi-connection v0.9.0 [INFO] [stderr] Checking atspi v0.25.0 [INFO] [stderr] Checking accesskit_unix v0.17.2 [INFO] [stderr] Checking accesskit_winit v0.29.2 [INFO] [stderr] Checking egui-winit v0.33.2 [INFO] [stderr] Checking eframe v0.33.2 [INFO] [stderr] Checking ocypode v0.0.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/telemetry/producer.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::time::Duration; [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: `std::time::Duration` [INFO] [stdout] --> src/telemetry/producer.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::time::Duration; [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: `simetry::Moment` [INFO] [stdout] --> src/telemetry/mod.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | use simetry::Moment; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `simetry::Moment` [INFO] [stdout] --> src/telemetry/mod.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | use simetry::Moment; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ACC_OPTIMAL_SHIFT_PCT` is never used [INFO] [stdout] --> src/telemetry/mod.rs:24:7 [INFO] [stdout] | [INFO] [stdout] 24 | const ACC_OPTIMAL_SHIFT_PCT: f32 = 0.92; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/telemetry/producer.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::time::Duration; [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: `collector::collect_telemetry` [INFO] [stdout] --> src/telemetry/mod.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub use collector::collect_telemetry; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `sync::mpsc` and `thread` [INFO] [stdout] --> src/main.rs:7:26 [INFO] [stdout] | [INFO] [stdout] 7 | use std::{path::PathBuf, sync::mpsc, thread}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `arg` [INFO] [stdout] --> src/main.rs:9:43 [INFO] [stdout] | [INFO] [stdout] 9 | use clap::{Parser, Subcommand, ValueEnum, arg}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `egui::Vec2` [INFO] [stdout] --> src/main.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use egui::Vec2; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `LiveTelemetryApp` and `config::AppConfig` [INFO] [stdout] --> src/main.rs:15:33 [INFO] [stdout] | [INFO] [stdout] 15 | use ui::live::{HISTORY_SECONDS, LiveTelemetryApp, config::AppConfig}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::time::Duration` [INFO] [stdout] --> src/telemetry/producer.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use std::time::Duration; [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: `collector::collect_telemetry` [INFO] [stdout] --> src/telemetry/mod.rs:20:9 [INFO] [stdout] | [INFO] [stdout] 20 | pub use collector::collect_telemetry; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `sync::mpsc` and `thread` [INFO] [stdout] --> src/main.rs:7:26 [INFO] [stdout] | [INFO] [stdout] 7 | use std::{path::PathBuf, sync::mpsc, thread}; [INFO] [stdout] | ^^^^^^^^^^ ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `arg` [INFO] [stdout] --> src/main.rs:9:43 [INFO] [stdout] | [INFO] [stdout] 9 | use clap::{Parser, Subcommand, ValueEnum, arg}; [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `egui::Vec2` [INFO] [stdout] --> src/main.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use egui::Vec2; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `LiveTelemetryApp` and `config::AppConfig` [INFO] [stdout] --> src/main.rs:15:33 [INFO] [stdout] | [INFO] [stdout] 15 | use ui::live::{HISTORY_SECONDS, LiveTelemetryApp, config::AppConfig}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ACC_OPTIMAL_SHIFT_PCT` is never used [INFO] [stdout] --> src/telemetry/mod.rs:24:7 [INFO] [stdout] | [INFO] [stdout] 24 | const ACC_OPTIMAL_SHIFT_PCT: f32 = 0.92; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/main.rs:169:5 [INFO] [stdout] | [INFO] [stdout] 59 | / return Err(OcypodeError::TelemetryProducerError { [INFO] [stdout] 60 | | description: "Live telemetry is only supported on Windows".to_string(), [INFO] [stdout] 61 | | }); [INFO] [stdout] | |__________- any code following this expression is unreachable [INFO] [stdout] ... [INFO] [stdout] 169 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `simetry::Moment` [INFO] [stdout] --> src/telemetry/mod.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | use simetry::Moment; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/main.rs:169:5 [INFO] [stdout] | [INFO] [stdout] 59 | / return Err(OcypodeError::TelemetryProducerError { [INFO] [stdout] 60 | | description: "Live telemetry is only supported on Windows".to_string(), [INFO] [stdout] 61 | | }); [INFO] [stdout] | |__________- any code following this expression is unreachable [INFO] [stdout] ... [INFO] [stdout] 169 | Ok(()) [INFO] [stdout] | ^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `simetry::Moment` [INFO] [stdout] --> src/telemetry/mod.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | use simetry::Moment; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `window_size` [INFO] [stdout] --> src/main.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | fn live(window_size: usize, output: Option, game: GameSource) -> Result<(), OcypodeError> { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_window_size` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/main.rs:54:29 [INFO] [stdout] | [INFO] [stdout] 54 | fn live(window_size: usize, output: Option, game: GameSource) -> Result<(), OcypodeError> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `game` [INFO] [stdout] --> src/main.rs:54:54 [INFO] [stdout] | [INFO] [stdout] 54 | fn live(window_size: usize, output: Option, game: GameSource) -> Result<(), OcypodeError> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_game` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `WriterError`, `ConfigIOError`, and `ConfigSerializeError` are never constructed [INFO] [stdout] --> src/errors.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum OcypodeError { [INFO] [stdout] | ------------ variants in this enum [INFO] [stdout] ... [INFO] [stdout] 32 | WriterError { source: io::Error }, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 38 | ConfigIOError { source: io::Error }, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 39 | #[snafu(display("Error serializing config file"))] [INFO] [stdout] 40 | ConfigSerializeError { source: serde_json::Error }, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OcypodeError` has a derived impl for the trait `Debug`, but this is 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: enum `FindingType` is never used [INFO] [stdout] --> src/setup_assistant/mod.rs:16:10 [INFO] [stdout] | [INFO] [stdout] 16 | pub enum FindingType { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Finding` is never constructed [INFO] [stdout] --> src/setup_assistant/mod.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 76 | pub struct Finding { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `CornerPhase` is never used [INFO] [stdout] --> src/setup_assistant/mod.rs:94:10 [INFO] [stdout] | [INFO] [stdout] 94 | pub enum CornerPhase { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SetupAssistant` is never constructed [INFO] [stdout] --> src/setup_assistant/mod.rs:132:12 [INFO] [stdout] | [INFO] [stdout] 132 | pub struct SetupAssistant { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: multiple associated items are never used [INFO] [stdout] --> src/setup_assistant/mod.rs:143:12 [INFO] [stdout] | [INFO] [stdout] 141 | impl SetupAssistant { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] 142 | /// Create a new SetupAssistant instance. [INFO] [stdout] 143 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 163 | pub fn process_telemetry(&mut self, telemetry: &TelemetryData) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 198 | fn classify_corner_phase(telemetry: &TelemetryData) -> CornerPhase { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 243 | fn annotation_to_finding_type( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 411 | pub fn toggle_confirmation(&mut self, finding_type: FindingType) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 424 | pub fn is_confirmed(&self, finding_type: &FindingType) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 433 | pub fn get_findings(&self) -> &HashMap { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 449 | pub fn get_recommendations(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 474 | pub fn get_processed_recommendations(&self) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 488 | pub fn clear_session(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 500 | pub fn get_findings_for_persistence(&self) -> &HashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 511 | pub fn get_confirmed_findings_for_persistence(&self) -> &HashSet { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 522 | pub fn restore_findings(&mut self, findings: HashMap) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 533 | pub fn restore_confirmed_findings(&mut self, confirmed_findings: HashSet) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `SetupCategory` is never used [INFO] [stdout] --> src/setup_assistant/recommendations.rs:14:10 [INFO] [stdout] | [INFO] [stdout] 14 | pub enum SetupCategory { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SetupRecommendation` is never constructed [INFO] [stdout] --> src/setup_assistant/recommendations.rs:62:12 [INFO] [stdout] | [INFO] [stdout] 62 | pub struct SetupRecommendation { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ProcessedRecommendation` is never constructed [INFO] [stdout] --> src/setup_assistant/recommendations.rs:77:12 [INFO] [stdout] | [INFO] [stdout] 77 | pub struct ProcessedRecommendation { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `RecommendationEngine` is never constructed [INFO] [stdout] --> src/setup_assistant/recommendations.rs:98:12 [INFO] [stdout] | [INFO] [stdout] 98 | pub struct RecommendationEngine { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `build_recommendation_map`, `get_recommendations`, `process_recommendations`, `detect_conflicts`, and `is_conflicting` are never used [INFO] [stdout] --> src/setup_assistant/recommendations.rs:109:12 [INFO] [stdout] | [INFO] [stdout] 103 | impl RecommendationEngine { [INFO] [stdout] | ------------------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 109 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 128 | fn build_recommendation_map() -> HashMap> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 767 | pub fn get_recommendations(&self, finding_type: &FindingType) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 786 | pub fn process_recommendations( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 858 | fn detect_conflicts(recs: &[SetupRecommendation]) -> Vec { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 883 | fn is_conflicting(adj1: &str, adj2: &str) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ACC_OPTIMAL_SHIFT_PCT` is never used [INFO] [stdout] --> src/telemetry/mod.rs:24:7 [INFO] [stdout] | [INFO] [stdout] 24 | const ACC_OPTIMAL_SHIFT_PCT: f32 = 0.92; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `TelemetryAnalyzer` is never used [INFO] [stdout] --> src/telemetry/mod.rs:768:11 [INFO] [stdout] | [INFO] [stdout] 768 | pub trait TelemetryAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `is_telemetry_point_analyzable` is never used [INFO] [stdout] --> src/telemetry/mod.rs:788:15 [INFO] [stdout] | [INFO] [stdout] 788 | pub(crate) fn is_telemetry_point_analyzable(data: &TelemetryData) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_PITCH_CHANGE_RAD` is never used [INFO] [stdout] --> src/telemetry/bottoming_out_analyzer.rs:6:7 [INFO] [stdout] | [INFO] [stdout] 6 | const MIN_PITCH_CHANGE_RAD: f32 = 0.05; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_STEERING_PCT` is never used [INFO] [stdout] --> src/telemetry/bottoming_out_analyzer.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | const MAX_STEERING_PCT: f32 = 0.2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_SPEED_LOSS_MPS` is never used [INFO] [stdout] --> src/telemetry/bottoming_out_analyzer.rs:10:7 [INFO] [stdout] | [INFO] [stdout] 10 | const MIN_SPEED_LOSS_MPS: f32 = 0.5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BottomingOutAnalyzer` is never constructed [INFO] [stdout] --> src/telemetry/bottoming_out_analyzer.rs:12:19 [INFO] [stdout] | [INFO] [stdout] 12 | pub(crate) struct BottomingOutAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/telemetry/bottoming_out_analyzer.rs:18:19 [INFO] [stdout] | [INFO] [stdout] 17 | impl BottomingOutAnalyzer { [INFO] [stdout] | ------------------------- associated function in this implementation [INFO] [stdout] 18 | pub(crate) fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_BRAKE_PCT` is never used [INFO] [stdout] --> src/telemetry/brake_lock_analyzer.rs:6:7 [INFO] [stdout] | [INFO] [stdout] 6 | const MIN_BRAKE_PCT: f32 = 0.3; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `BrakeLockAnalyzer` is never constructed [INFO] [stdout] --> src/telemetry/brake_lock_analyzer.rs:8:19 [INFO] [stdout] | [INFO] [stdout] 8 | pub(crate) struct BrakeLockAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/telemetry/brake_lock_analyzer.rs:15:19 [INFO] [stdout] | [INFO] [stdout] 14 | impl BrakeLockAnalyzer { [INFO] [stdout] | ---------------------- associated function in this implementation [INFO] [stdout] 15 | pub(crate) fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REFRESH_RATE_MS` is never used [INFO] [stdout] --> src/telemetry/collector.rs:26:7 [INFO] [stdout] | [INFO] [stdout] 26 | const REFRESH_RATE_MS: u64 = 100; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_WHEELSPIN_POINTS` is never used [INFO] [stdout] --> src/telemetry/collector.rs:27:7 [INFO] [stdout] | [INFO] [stdout] 27 | const MIN_WHEELSPIN_POINTS: usize = 100; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SESSION_UPDATE_TIME_MS` is never used [INFO] [stdout] --> src/telemetry/collector.rs:28:7 [INFO] [stdout] | [INFO] [stdout] 28 | const SESSION_UPDATE_TIME_MS: u128 = 2000; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ENTRY_OVERSTEER_WINDOW_SIZE` is never used [INFO] [stdout] --> src/telemetry/collector.rs:31:7 [INFO] [stdout] | [INFO] [stdout] 31 | const ENTRY_OVERSTEER_WINDOW_SIZE: usize = 100; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `ENTRY_OVERSTEER_MIN_POINTS` is never used [INFO] [stdout] --> src/telemetry/collector.rs:32:7 [INFO] [stdout] | [INFO] [stdout] 32 | const ENTRY_OVERSTEER_MIN_POINTS: usize = 50; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MID_CORNER_WINDOW_SIZE` is never used [INFO] [stdout] --> src/telemetry/collector.rs:33:7 [INFO] [stdout] | [INFO] [stdout] 33 | const MID_CORNER_WINDOW_SIZE: usize = 100; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MID_CORNER_MIN_POINTS` is never used [INFO] [stdout] --> src/telemetry/collector.rs:34:7 [INFO] [stdout] | [INFO] [stdout] 34 | const MID_CORNER_MIN_POINTS: usize = 50; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `collect_telemetry` is never used [INFO] [stdout] --> src/telemetry/collector.rs:36:8 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn collect_telemetry( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `wait_for_session` is never used [INFO] [stdout] --> src/telemetry/collector.rs:151:4 [INFO] [stdout] | [INFO] [stdout] 151 | fn wait_for_session(producer: &mut impl TelemetryProducer) -> Result<(), OcypodeError> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_BRAKE_PCT` is never used [INFO] [stdout] --> src/telemetry/entry_oversteer_analyzer.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | const MIN_BRAKE_PCT: f32 = 0.3; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_STEERING_PCT` is never used [INFO] [stdout] --> src/telemetry/entry_oversteer_analyzer.rs:10:7 [INFO] [stdout] | [INFO] [stdout] 10 | const MIN_STEERING_PCT: f32 = 0.1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OVERSTEER_THRESHOLD` is never used [INFO] [stdout] --> src/telemetry/entry_oversteer_analyzer.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const OVERSTEER_THRESHOLD: f32 = 1.5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `EntryOversteerAnalyzer` is never constructed [INFO] [stdout] --> src/telemetry/entry_oversteer_analyzer.rs:14:19 [INFO] [stdout] | [INFO] [stdout] 14 | pub(crate) struct EntryOversteerAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/telemetry/entry_oversteer_analyzer.rs:20:19 [INFO] [stdout] | [INFO] [stdout] 19 | impl EntryOversteerAnalyzer { [INFO] [stdout] | ------------------------------------------------------------------ associated function in this implementation [INFO] [stdout] 20 | pub(crate) fn new(min_points: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_COASTING_THROTTLE` is never used [INFO] [stdout] --> src/telemetry/mid_corner_analyzer.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | const MAX_COASTING_THROTTLE: f32 = 0.15; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_COASTING_BRAKE` is never used [INFO] [stdout] --> src/telemetry/mid_corner_analyzer.rs:10:7 [INFO] [stdout] | [INFO] [stdout] 10 | const MAX_COASTING_BRAKE: f32 = 0.15; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_STEERING_PCT` is never used [INFO] [stdout] --> src/telemetry/mid_corner_analyzer.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const MIN_STEERING_PCT: f32 = 0.1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `UNDERSTEER_SPEED_LOSS_THRESHOLD` is never used [INFO] [stdout] --> src/telemetry/mid_corner_analyzer.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | const UNDERSTEER_SPEED_LOSS_THRESHOLD: f32 = 0.5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OVERSTEER_THRESHOLD` is never used [INFO] [stdout] --> src/telemetry/mid_corner_analyzer.rs:16:7 [INFO] [stdout] | [INFO] [stdout] 16 | const OVERSTEER_THRESHOLD: f32 = 1.5; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `MidCornerAnalyzer` is never constructed [INFO] [stdout] --> src/telemetry/mid_corner_analyzer.rs:18:19 [INFO] [stdout] | [INFO] [stdout] 18 | pub(crate) struct MidCornerAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/telemetry/mid_corner_analyzer.rs:25:19 [INFO] [stdout] | [INFO] [stdout] 24 | impl MidCornerAnalyzer { [INFO] [stdout] | ------------------------------------------------------------- associated function in this implementation [INFO] [stdout] 25 | pub(crate) fn new(min_points: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CONN_RETRY_MAX_WAIT_S` is never used [INFO] [stdout] --> src/telemetry/producer.rs:13:18 [INFO] [stdout] | [INFO] [stdout] 13 | pub(crate) const CONN_RETRY_MAX_WAIT_S: u64 = 600; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `start`, `session_info`, and `telemetry` are never used [INFO] [stdout] --> src/telemetry/producer.rs:43:8 [INFO] [stdout] | [INFO] [stdout] 34 | pub trait TelemetryProducer { [INFO] [stdout] | ----------------- methods in this trait [INFO] [stdout] ... [INFO] [stdout] 43 | fn start(&mut self) -> Result<(), OcypodeError>; [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 53 | fn session_info(&mut self) -> Result; [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 65 | fn telemetry(&mut self) -> Result; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `cur_tick`, `points`, `track_name`, and `max_steering_angle` are never read [INFO] [stdout] --> src/telemetry/producer.rs:374:5 [INFO] [stdout] | [INFO] [stdout] 373 | pub(crate) struct MockTelemetryProducer { [INFO] [stdout] | --------------------- fields in this struct [INFO] [stdout] 374 | cur_tick: usize, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 375 | points: Vec, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 376 | pub track_name: String, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 377 | pub max_steering_angle: f32, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_STEERING_PCT_MEASURE` is never used [INFO] [stdout] --> src/telemetry/scrub_analyzer.rs:8:7 [INFO] [stdout] | [INFO] [stdout] 8 | const MIN_STEERING_PCT_MEASURE: f32 = 0.1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_BRAKE_PCT_MEASURE` is never used [INFO] [stdout] --> src/telemetry/scrub_analyzer.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | const MIN_BRAKE_PCT_MEASURE: f32 = 0.4; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_THROTTLE_PCT_MEASURE` is never used [INFO] [stdout] --> src/telemetry/scrub_analyzer.rs:10:7 [INFO] [stdout] | [INFO] [stdout] 10 | const MAX_THROTTLE_PCT_MEASURE: f32 = 0.4; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_SPEED_MPS` is never used [INFO] [stdout] --> src/telemetry/scrub_analyzer.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | const MIN_SPEED_MPS: f32 = 5.0; [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SCRUB_TEMP_THRESHOLD` is never used [INFO] [stdout] --> src/telemetry/scrub_analyzer.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | const SCRUB_TEMP_THRESHOLD: f32 = 5.0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ScrubAnalyzer` is never constructed [INFO] [stdout] --> src/telemetry/scrub_analyzer.rs:16:19 [INFO] [stdout] | [INFO] [stdout] 16 | pub(crate) struct ScrubAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/telemetry/scrub_analyzer.rs:25:19 [INFO] [stdout] | [INFO] [stdout] 24 | impl ScrubAnalyzer { [INFO] [stdout] | --------------------------------------------------------- associated function in this implementation [INFO] [stdout] 25 | pub(crate) fn new(min_points: usize) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `analyze_with_yaw_rate`, `analyze_with_tire_temperature`, and `calculate_average_tire_temperature` are never used [INFO] [stdout] --> src/telemetry/scrub_analyzer.rs:73:8 [INFO] [stdout] | [INFO] [stdout] 71 | impl ScrubAnalyzer { [INFO] [stdout] | --------------------------------------------------------- methods in this implementation [INFO] [stdout] 72 | /// Analyze scrubbing using yaw rate data (original method for iRacing) [INFO] [stdout] 73 | fn analyze_with_yaw_rate( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 101 | fn analyze_with_tire_temperature( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 140 | fn calculate_average_tire_temperature(&self, telemetry: &TelemetryData) -> f32 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEFAULT_SHORT_SHIFT_SENSITIVITY` is never used [INFO] [stdout] --> src/telemetry/short_shifting_analyzer.rs:7:7 [INFO] [stdout] | [INFO] [stdout] 7 | const DEFAULT_SHORT_SHIFT_SENSITIVITY: f32 = 100.; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `ShortShiftingAnalyzer` is never constructed [INFO] [stdout] --> src/telemetry/short_shifting_analyzer.rs:9:19 [INFO] [stdout] | [INFO] [stdout] 9 | pub(crate) struct ShortShiftingAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `STEERING_ANGLE_DEADZONE_RAD` is never used [INFO] [stdout] --> src/telemetry/slip_analyzer.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 5 | pub(crate) const STEERING_ANGLE_DEADZONE_RAD: f32 = 0.12; // Increased from 0.08 to reduce sensitivity [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `SlipAnalyzer` is never constructed [INFO] [stdout] --> src/telemetry/slip_analyzer.rs:8:19 [INFO] [stdout] | [INFO] [stdout] 8 | pub(crate) struct SlipAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OPTIMAL_TEMP_MIN` is never used [INFO] [stdout] --> src/telemetry/tire_temperature_analyzer.rs:9:7 [INFO] [stdout] | [INFO] [stdout] 9 | const OPTIMAL_TEMP_MIN: f32 = 80.0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `OPTIMAL_TEMP_MAX` is never used [INFO] [stdout] --> src/telemetry/tire_temperature_analyzer.rs:10:7 [INFO] [stdout] | [INFO] [stdout] 10 | const OPTIMAL_TEMP_MAX: f32 = 95.0; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `HISTORY_DURATION_S` is never used [INFO] [stdout] --> src/telemetry/tire_temperature_analyzer.rs:13:7 [INFO] [stdout] | [INFO] [stdout] 13 | const HISTORY_DURATION_S: usize = 60; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_SAMPLES` is never used [INFO] [stdout] --> src/telemetry/tire_temperature_analyzer.rs:16:7 [INFO] [stdout] | [INFO] [stdout] 16 | const MIN_SAMPLES: usize = 10; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `SAMPLE_RATE_HZ` is never used [INFO] [stdout] --> src/telemetry/tire_temperature_analyzer.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | const SAMPLE_RATE_HZ: f32 = 60.0; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TireTemperatureSnapshot` is never constructed [INFO] [stdout] --> src/telemetry/tire_temperature_analyzer.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | struct TireTemperatureSnapshot { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TireTemperatureAnalyzer` is never constructed [INFO] [stdout] --> src/telemetry/tire_temperature_analyzer.rs:27:19 [INFO] [stdout] | [INFO] [stdout] 27 | pub(crate) struct TireTemperatureAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `new`, `with_config`, `calculate_avg_tire_temp`, `check_overheating`, and `check_cold_tires` are never used [INFO] [stdout] --> src/telemetry/tire_temperature_analyzer.rs:36:19 [INFO] [stdout] | [INFO] [stdout] 35 | impl TireTemperatureAnalyzer { [INFO] [stdout] | ---------------------------- associated items in this implementation [INFO] [stdout] 36 | pub(crate) fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 40 | pub(crate) fn with_config(history_duration_s: usize, optimal_temp_range: (f32, f32)) -> Self { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 55 | fn calculate_avg_tire_temp(&self, telemetry: &TelemetryData) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 83 | fn check_overheating(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 105 | fn check_cold_tires(&self) -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MIN_TRAILBRAKING_PCT` is never used [INFO] [stdout] --> src/telemetry/trailbrake_steering_analyzer.rs:5:18 [INFO] [stdout] | [INFO] [stdout] 5 | pub(crate) const MIN_TRAILBRAKING_PCT: f32 = 0.2; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_TRAILBRAKING_STEERING_ANGLE` is never used [INFO] [stdout] --> src/telemetry/trailbrake_steering_analyzer.rs:6:18 [INFO] [stdout] | [INFO] [stdout] 6 | pub(crate) const MAX_TRAILBRAKING_STEERING_ANGLE: f32 = 0.1; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `TrailbrakeSteeringAnalyzer` is never constructed [INFO] [stdout] --> src/telemetry/trailbrake_steering_analyzer.rs:8:12 [INFO] [stdout] | [INFO] [stdout] 8 | pub struct TrailbrakeSteeringAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/telemetry/trailbrake_steering_analyzer.rs:14:12 [INFO] [stdout] | [INFO] [stdout] 13 | impl TrailbrakeSteeringAnalyzer { [INFO] [stdout] | ------------------------------- associated function in this implementation [INFO] [stdout] 14 | pub fn new(max_trailbraking_steering_angle: f32, min_trailbraking_pct: f32) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `WheelspinAnalyzer` is never constructed [INFO] [stdout] --> src/telemetry/wheelspin_analyzer.rs:10:12 [INFO] [stdout] | [INFO] [stdout] 10 | pub struct WheelspinAnalyzer { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/telemetry/wheelspin_analyzer.rs:19:12 [INFO] [stdout] | [INFO] [stdout] 18 | impl WheelspinAnalyzer { [INFO] [stdout] | ------------------------------------------------------------- associated function in this implementation [INFO] [stdout] 19 | pub fn new() -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REFRESH_RATE_MS` is never used [INFO] [stdout] --> src/ui/live/mod.rs:17:7 [INFO] [stdout] | [INFO] [stdout] 17 | const REFRESH_RATE_MS: usize = 100; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_POINTS_PER_REFRESH` is never used [INFO] [stdout] --> src/ui/live/mod.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | const MAX_POINTS_PER_REFRESH: usize = 10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_TIME_PER_REFRESH_MS` is never used [INFO] [stdout] --> src/ui/live/mod.rs:20:7 [INFO] [stdout] | [INFO] [stdout] 20 | const MAX_TIME_PER_REFRESH_MS: u128 = 50; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEFAULT_BUTTON_CORNER_RADIUS` is never used [INFO] [stdout] --> src/ui/live/mod.rs:27:7 [INFO] [stdout] | [INFO] [stdout] 27 | const DEFAULT_BUTTON_CORNER_RADIUS: u8 = 4; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEFAULT_WINDOW_CORNER_RADIUS` is never used [INFO] [stdout] --> src/ui/live/mod.rs:28:7 [INFO] [stdout] | [INFO] [stdout] 28 | const DEFAULT_WINDOW_CORNER_RADIUS: u8 = 10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEFAULT_WINDOW_TRANSPARENCY` is never used [INFO] [stdout] --> src/ui/live/mod.rs:29:7 [INFO] [stdout] | [INFO] [stdout] 29 | const DEFAULT_WINDOW_TRANSPARENCY: u8 = 191; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LiveTelemetryApp` is never constructed [INFO] [stdout] --> src/ui/live/mod.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 45 | pub struct LiveTelemetryApp { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/ui/live/mod.rs:55:12 [INFO] [stdout] | [INFO] [stdout] 54 | impl LiveTelemetryApp { [INFO] [stdout] | --------------------- associated function in this implementation [INFO] [stdout] 55 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `alerts_view` and `show_alerts` are never used [INFO] [stdout] --> src/ui/live/alerts_view.rs:8:19 [INFO] [stdout] | [INFO] [stdout] 7 | impl LiveTelemetryApp { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] 8 | pub(crate) fn alerts_view(&mut self, ctx: &egui::Context, _frame: &mut eframe::Frame) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | fn show_alerts(&mut self, ui: &mut egui::Ui) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CONFIG_FILE_NAME` is never used [INFO] [stdout] --> src/ui/live/config.rs:10:7 [INFO] [stdout] | [INFO] [stdout] 10 | const CONFIG_FILE_NAME: &str = "config.json"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AlertsLayout` is never used [INFO] [stdout] --> src/ui/live/config.rs:13:17 [INFO] [stdout] | [INFO] [stdout] 13 | pub(crate) enum AlertsLayout { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `window_size` is never used [INFO] [stdout] --> src/ui/live/config.rs:19:19 [INFO] [stdout] | [INFO] [stdout] 18 | impl AlertsLayout { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] 19 | pub(crate) fn window_size(&self) -> Vec2 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AppConfig` is never constructed [INFO] [stdout] --> src/ui/live/config.rs:56:19 [INFO] [stdout] | [INFO] [stdout] 56 | pub(crate) struct AppConfig { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_local_file` and `save` are never used [INFO] [stdout] --> src/ui/live/config.rs:87:19 [INFO] [stdout] | [INFO] [stdout] 86 | impl AppConfig { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 87 | pub(crate) fn from_local_file() -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub(crate) fn save(&self) -> Result<(), OcypodeError> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `setup_window`, `show_findings_list`, and `show_recommendations` are never used [INFO] [stdout] --> src/ui/live/setup_window.rs:19:19 [INFO] [stdout] | [INFO] [stdout] 5 | impl LiveTelemetryApp { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 19 | pub(crate) fn setup_window(&mut self, ctx: &egui::Context, _frame: &mut eframe::Frame) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | fn show_findings_list(&mut self, ui: &mut egui::Ui) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | fn show_recommendations(&self, ui: &mut egui::Ui) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `telemetry_view` is never used [INFO] [stdout] --> src/ui/live/telemetry_view.rs:13:19 [INFO] [stdout] | [INFO] [stdout] 12 | impl LiveTelemetryApp { [INFO] [stdout] | --------------------- method in this implementation [INFO] [stdout] 13 | pub(crate) fn telemetry_view(&mut self, ctx: &egui::Context, _frame: &mut eframe::Frame) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `write_telemetry` is never used [INFO] [stdout] --> src/writer.rs:80:8 [INFO] [stdout] | [INFO] [stdout] 80 | pub fn write_telemetry( [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `window_size` [INFO] [stdout] --> src/main.rs:54:9 [INFO] [stdout] | [INFO] [stdout] 54 | fn live(window_size: usize, output: Option, game: GameSource) -> Result<(), OcypodeError> { [INFO] [stdout] | ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_window_size` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `output` [INFO] [stdout] --> src/main.rs:54:29 [INFO] [stdout] | [INFO] [stdout] 54 | fn live(window_size: usize, output: Option, game: GameSource) -> Result<(), OcypodeError> { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_output` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `game` [INFO] [stdout] --> src/main.rs:54:54 [INFO] [stdout] | [INFO] [stdout] 54 | fn live(window_size: usize, output: Option, game: GameSource) -> Result<(), OcypodeError> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_game` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `ConfigIOError` and `ConfigSerializeError` are never constructed [INFO] [stdout] --> src/errors.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 8 | pub enum OcypodeError { [INFO] [stdout] | ------------ variants in this enum [INFO] [stdout] ... [INFO] [stdout] 38 | ConfigIOError { source: io::Error }, [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] 39 | #[snafu(display("Error serializing config file"))] [INFO] [stdout] 40 | ConfigSerializeError { source: serde_json::Error }, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `OcypodeError` has a derived impl for the trait `Debug`, but this is 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: constant `ACC_OPTIMAL_SHIFT_PCT` is never used [INFO] [stdout] --> src/telemetry/mod.rs:24:7 [INFO] [stdout] | [INFO] [stdout] 24 | const ACC_OPTIMAL_SHIFT_PCT: f32 = 0.92; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `REFRESH_RATE_MS` is never used [INFO] [stdout] --> src/ui/live/mod.rs:17:7 [INFO] [stdout] | [INFO] [stdout] 17 | const REFRESH_RATE_MS: usize = 100; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_POINTS_PER_REFRESH` is never used [INFO] [stdout] --> src/ui/live/mod.rs:19:7 [INFO] [stdout] | [INFO] [stdout] 19 | const MAX_POINTS_PER_REFRESH: usize = 10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAX_TIME_PER_REFRESH_MS` is never used [INFO] [stdout] --> src/ui/live/mod.rs:20:7 [INFO] [stdout] | [INFO] [stdout] 20 | const MAX_TIME_PER_REFRESH_MS: u128 = 50; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEFAULT_BUTTON_CORNER_RADIUS` is never used [INFO] [stdout] --> src/ui/live/mod.rs:27:7 [INFO] [stdout] | [INFO] [stdout] 27 | const DEFAULT_BUTTON_CORNER_RADIUS: u8 = 4; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEFAULT_WINDOW_CORNER_RADIUS` is never used [INFO] [stdout] --> src/ui/live/mod.rs:28:7 [INFO] [stdout] | [INFO] [stdout] 28 | const DEFAULT_WINDOW_CORNER_RADIUS: u8 = 10; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `DEFAULT_WINDOW_TRANSPARENCY` is never used [INFO] [stdout] --> src/ui/live/mod.rs:29:7 [INFO] [stdout] | [INFO] [stdout] 29 | const DEFAULT_WINDOW_TRANSPARENCY: u8 = 191; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `LiveTelemetryApp` is never constructed [INFO] [stdout] --> src/ui/live/mod.rs:45:12 [INFO] [stdout] | [INFO] [stdout] 45 | pub struct LiveTelemetryApp { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/ui/live/mod.rs:55:12 [INFO] [stdout] | [INFO] [stdout] 54 | impl LiveTelemetryApp { [INFO] [stdout] | --------------------- associated function in this implementation [INFO] [stdout] 55 | pub fn new( [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `alerts_view` and `show_alerts` are never used [INFO] [stdout] --> src/ui/live/alerts_view.rs:8:19 [INFO] [stdout] | [INFO] [stdout] 7 | impl LiveTelemetryApp { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] 8 | pub(crate) fn alerts_view(&mut self, ctx: &egui::Context, _frame: &mut eframe::Frame) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 70 | fn show_alerts(&mut self, ui: &mut egui::Ui) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CONFIG_FILE_NAME` is never used [INFO] [stdout] --> src/ui/live/config.rs:10:7 [INFO] [stdout] | [INFO] [stdout] 10 | const CONFIG_FILE_NAME: &str = "config.json"; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: enum `AlertsLayout` is never used [INFO] [stdout] --> src/ui/live/config.rs:13:17 [INFO] [stdout] | [INFO] [stdout] 13 | pub(crate) enum AlertsLayout { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `window_size` is never used [INFO] [stdout] --> src/ui/live/config.rs:19:19 [INFO] [stdout] | [INFO] [stdout] 18 | impl AlertsLayout { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] 19 | pub(crate) fn window_size(&self) -> Vec2 { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `AppConfig` is never constructed [INFO] [stdout] --> src/ui/live/config.rs:56:19 [INFO] [stdout] | [INFO] [stdout] 56 | pub(crate) struct AppConfig { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `from_local_file` and `save` are never used [INFO] [stdout] --> src/ui/live/config.rs:87:19 [INFO] [stdout] | [INFO] [stdout] 86 | impl AppConfig { [INFO] [stdout] | -------------- associated items in this implementation [INFO] [stdout] 87 | pub(crate) fn from_local_file() -> Option { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 98 | pub(crate) fn save(&self) -> Result<(), OcypodeError> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `setup_window`, `show_findings_list`, and `show_recommendations` are never used [INFO] [stdout] --> src/ui/live/setup_window.rs:19:19 [INFO] [stdout] | [INFO] [stdout] 5 | impl LiveTelemetryApp { [INFO] [stdout] | --------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 19 | pub(crate) fn setup_window(&mut self, ctx: &egui::Context, _frame: &mut eframe::Frame) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 107 | fn show_findings_list(&mut self, ui: &mut egui::Ui) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | fn show_recommendations(&self, ui: &mut egui::Ui) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `telemetry_view` is never used [INFO] [stdout] --> src/ui/live/telemetry_view.rs:13:19 [INFO] [stdout] | [INFO] [stdout] 12 | impl LiveTelemetryApp { [INFO] [stdout] | --------------------- method in this implementation [INFO] [stdout] 13 | pub(crate) fn telemetry_view(&mut self, ctx: &egui::Context, _frame: &mut eframe::Frame) { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 3m 52s [INFO] running `Command { std: "docker" "inspect" "6ab2df06797c27463ac08a89ea9071b28d9c9d4957a4e5484a3bc067826848b1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6ab2df06797c27463ac08a89ea9071b28d9c9d4957a4e5484a3bc067826848b1", kill_on_drop: false }` [INFO] [stdout] 6ab2df06797c27463ac08a89ea9071b28d9c9d4957a4e5484a3bc067826848b1