[INFO] cloning repository https://github.com/Saplyn/huixin
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Saplyn/huixin" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSaplyn%2Fhuixin", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSaplyn%2Fhuixin'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 9f03528a34abf22de5a54135dbf7abe079b0a03f
[INFO] checking Saplyn/huixin against master#507271bc119683008ec719ecee48814e8ac86c65 for pr-146440
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSaplyn%2Fhuixin" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] [stderr] Updating files:  77% (102/131)
Updating files:  78% (103/131)
Updating files:  79% (104/131)
Updating files:  80% (105/131)
Updating files:  81% (107/131)
Updating files:  82% (108/131)
Updating files:  83% (109/131)
Updating files:  84% (111/131)
Updating files:  85% (112/131)
Updating files:  86% (113/131)
Updating files:  87% (114/131)
Updating files:  88% (116/131)
Updating files:  89% (117/131)
Updating files:  90% (118/131)
Updating files:  91% (120/131)
Updating files:  92% (121/131)
Updating files:  93% (122/131)
Updating files:  93% (123/131)
Updating files:  94% (124/131)
Updating files:  95% (125/131)
Updating files:  96% (126/131)
Updating files:  97% (128/131)
Updating files:  98% (129/131)
Updating files:  99% (130/131)
Updating files: 100% (131/131)
Updating files: 100% (131/131), done.
[INFO] started tweaking git repo https://github.com/Saplyn/huixin
[INFO] finished tweaking git repo https://github.com/Saplyn/huixin
[INFO] tweaked toml for git repo https://github.com/Saplyn/huixin written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Saplyn/huixin on toolchain 507271bc119683008ec719ecee48814e8ac86c65
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+507271bc119683008ec719ecee48814e8ac86c65" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Saplyn/huixin 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" "+507271bc119683008ec719ecee48814e8ac86c65" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded zerocopy-derive v0.8.34
[INFO] [stderr]   Downloaded wayland-cursor v0.31.12
[INFO] [stderr]   Downloaded wayland-sys v0.31.8
[INFO] [stderr]   Downloaded zmij v1.0.17
[INFO] [stderr]   Downloaded time-macros v0.2.26
[INFO] [stderr]   Downloaded rosc v0.11.4
[INFO] [stderr]   Downloaded wayland-protocols-misc v0.3.10
[INFO] [stderr]   Downloaded wayland-protocols-wlr v0.3.10
[INFO] [stderr]   Downloaded wayland-scanner v0.31.8
[INFO] [stderr]   Downloaded oneshot v0.1.12
[INFO] [stderr]   Downloaded wayland-client v0.31.12
[INFO] [stderr]   Downloaded wayland-backend v0.3.12
[INFO] [stderr]   Downloaded egui-scale v0.3.0
[INFO] [stderr]   Downloaded hello_egui_utils v0.10.0
[INFO] [stderr]   Downloaded simple-easing v1.0.1
[INFO] [stderr]   Downloaded wayland-protocols-plasma v0.3.10
[INFO] [stderr]   Downloaded egui_animation v0.10.0
[INFO] [stderr]   Downloaded egui_dnd v0.14.0
[INFO] [stderr]   Downloaded evalexpr v13.1.0
[INFO] [stderr]   Downloaded ron v0.11.0
[INFO] [stderr]   Downloaded wayland-protocols v0.32.10
[INFO] [stderr]   Downloaded dashmap v7.0.0-rc2
[INFO] [stderr]   Downloaded time v0.3.46
[INFO] [stderr]   Downloaded interavl v0.5.0
[INFO] [stderr]   Downloaded zerocopy v0.8.34
[INFO] [stderr]   Downloaded egui-snarl v0.9.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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" "+507271bc119683008ec719ecee48814e8ac86c65" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bf1b29f851726b21975a9ab6a4e48a2986d04e02e15ac34a3406e8c13fab13cc
[INFO] running `Command { std: "docker" "start" "-a" "bf1b29f851726b21975a9ab6a4e48a2986d04e02e15ac34a3406e8c13fab13cc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bf1b29f851726b21975a9ab6a4e48a2986d04e02e15ac34a3406e8c13fab13cc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bf1b29f851726b21975a9ab6a4e48a2986d04e02e15ac34a3406e8c13fab13cc", kill_on_drop: false }`
[INFO] [stdout] bf1b29f851726b21975a9ab6a4e48a2986d04e02e15ac34a3406e8c13fab13cc
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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" "+507271bc119683008ec719ecee48814e8ac86c65" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f01ad369069268aadc31fbb6791794f070fec656c5ec48b47863285aac664360
[INFO] running `Command { std: "docker" "start" "-a" "f01ad369069268aadc31fbb6791794f070fec656c5ec48b47863285aac664360", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling memchr v2.7.6
[INFO] [stderr]    Compiling wayland-sys v0.31.8
[INFO] [stderr]     Checking dlib v0.5.2
[INFO] [stderr]    Compiling cc v1.2.54
[INFO] [stderr]    Compiling toml_parser v1.0.6+spec-1.1.0
[INFO] [stderr]    Compiling toml_datetime v0.7.5+spec-1.1.0
[INFO] [stderr]     Checking scoped-tls v1.0.1
[INFO] [stderr]     Checking concurrent-queue v2.5.0
[INFO] [stderr]    Compiling zerocopy v0.8.34
[INFO] [stderr]    Compiling wayland-client v0.31.12
[INFO] [stderr]    Compiling endi v1.1.1
[INFO] [stderr]     Checking ttf-parser v0.25.1
[INFO] [stderr]     Checking futures-lite v2.6.1
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]     Checking ab_glyph_rasterizer v0.1.10
[INFO] [stderr]    Compiling async-io v2.6.0
[INFO] [stderr]     Checking event-listener v5.4.1
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking async-task v4.7.1
[INFO] [stderr]     Checking piper v0.2.4
[INFO] [stderr]     Checking syn v2.0.114
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]     Checking event-listener-strategy v0.5.4
[INFO] [stderr]     Checking ordered-stream v0.2.0
[INFO] [stderr]     Checking linux-raw-sys v0.4.15
[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]     Checking base64 v0.22.1
[INFO] [stderr]    Compiling toml_edit v0.23.10+spec-1.0.0
[INFO] [stderr]     Checking cursor-icon v1.2.0
[INFO] [stderr]    Compiling khronos_api v3.1.0
[INFO] [stderr]     Checking profiling v1.0.17
[INFO] [stderr]     Checking xcursor v0.3.10
[INFO] [stderr]     Checking xkeysym v0.2.1
[INFO] [stderr]     Checking epaint_default_fonts v0.33.3
[INFO] [stderr]     Checking memmap2 v0.9.9
[INFO] [stderr]    Compiling x11-dl v2.21.0
[INFO] [stderr]     Checking hashbrown v0.15.5
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking strict-num v0.1.1
[INFO] [stderr]    Compiling smithay-client-toolkit v0.19.2
[INFO] [stderr]     Checking simd-adler32 v0.3.8
[INFO] [stderr]    Compiling xml-rs v0.8.28
[INFO] [stderr]     Checking raw-window-handle v0.6.2
[INFO] [stderr]     Checking blocking v1.6.2
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]     Checking x11rb-protocol v0.13.2
[INFO] [stderr]     Checking as-raw-xcb-connection v1.0.1
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]    Compiling winit v0.30.12
[INFO] [stderr]     Checking dasp_sample v0.11.0
[INFO] [stderr]    Compiling proc-macro-crate v3.4.0
[INFO] [stderr]     Checking fdeflate v0.3.7
[INFO] [stderr]     Checking dpi v0.1.2
[INFO] [stderr]    Compiling smithay-client-toolkit v0.20.0
[INFO] [stderr]    Compiling gl_generator v0.14.0
[INFO] [stderr]     Checking smol_str v0.2.2
[INFO] [stderr]     Checking form_urlencoded v1.2.2
[INFO] [stderr]    Compiling time-macros v0.2.26
[INFO] [stderr]     Checking dasp_frame v0.11.0
[INFO] [stderr]     Checking flate2 v1.1.8
[INFO] [stderr]    Compiling iana-time-zone v0.1.64
[INFO] [stderr]    Compiling zmij v1.0.17
[INFO] [stderr]     Checking pxfm v0.1.27
[INFO] [stderr]    Compiling wayland-backend v0.3.12
[INFO] [stderr]    Compiling glutin v0.32.3
[INFO] [stderr]     Checking owned_ttf_parser v0.25.1
[INFO] [stderr]    Compiling memoffset v0.9.1
[INFO] [stderr]     Checking minimal-lexical v0.2.1
[INFO] [stderr]     Checking ab_glyph v0.2.32
[INFO] [stderr]    Compiling glutin_glx_sys v0.6.1
[INFO] [stderr]    Compiling glutin_egl_sys v0.7.1
[INFO] [stderr]     Checking nom v7.1.3
[INFO] [stderr]    Compiling glutin-winit v0.5.0
[INFO] [stderr]     Checking dasp_ring_buffer v0.11.0
[INFO] [stderr]     Checking toml_writer v1.0.6+spec-1.1.0
[INFO] [stderr]    Compiling chrono v0.4.43
[INFO] [stderr]    Compiling alsa-sys v0.3.1
[INFO] [stderr]     Checking glow v0.16.0
[INFO] [stderr]    Compiling rfd v0.17.2
[INFO] [stderr]     Checking simple-easing v1.0.1
[INFO] [stderr]     Checking dasp_rms v0.11.0
[INFO] [stderr]     Checking dasp_peak v0.11.0
[INFO] [stderr]     Checking pollster v0.4.0
[INFO] [stderr]     Checking time v0.3.46
[INFO] [stderr]     Checking home v0.5.12
[INFO] [stderr]     Checking dasp_envelope v0.11.0
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking dasp_interpolate v0.11.0
[INFO] [stderr]     Checking dasp_window v0.11.1
[INFO] [stderr]    Compiling cpal v0.17.1
[INFO] [stderr]     Checking indexmap v2.13.0
[INFO] [stderr]     Checking dasp_slice v0.11.0
[INFO] [stderr]     Checking fixedbitset v0.5.7
[INFO] [stderr]     Checking dasp_signal v0.11.0
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking oneshot v0.1.12
[INFO] [stderr]     Checking interavl v0.5.0
[INFO] [stderr]     Checking bitflags v2.10.0
[INFO] [stderr]     Checking uuid v1.20.0
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking serde_spanned v1.0.4
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking xkbcommon-dl v0.4.2
[INFO] [stderr]     Checking png v0.18.0
[INFO] [stderr]     Checking toml v0.9.11+spec-1.1.0
[INFO] [stderr]     Checking semver v1.0.27
[INFO] [stderr]     Checking alsa v0.10.0
[INFO] [stderr]     Checking dasp v0.11.0
[INFO] [stderr]     Checking rosc v0.11.4
[INFO] [stderr]     Checking simplelog v0.12.2
[INFO] [stderr]    Compiling huixin v0.0.0 (/opt/rustwide/workdir/crates/huixin)
[INFO] [stderr]    Compiling huisheng v0.0.0 (/opt/rustwide/workdir/crates/huisheng)
[INFO] [stderr]     Checking moxcms v0.7.11
[INFO] [stderr]     Checking petgraph v0.8.3
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling enumflags2_derive v0.7.12
[INFO] [stderr]    Compiling bytemuck_derive v1.10.2
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling enumn v0.1.14
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling futures-macro v0.3.31
[INFO] [stderr]    Compiling concat-idents v1.1.5
[INFO] [stderr]     Checking polling v3.11.0
[INFO] [stderr]     Checking gethostname v1.1.0
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking bytemuck v1.24.0
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]     Checking thiserror v2.0.18
[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 tungstenite v0.28.0
[INFO] [stderr]     Checking tiny-skia v0.11.4
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking wayland-csd-frame v0.3.0
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking slab v0.4.11
[INFO] [stderr]     Checking enumflags2 v0.7.12
[INFO] [stderr]     Checking zvariant_utils v3.3.0
[INFO] [stderr]     Checking accesskit v0.21.1
[INFO] [stderr]     Checking lock_api v0.4.14
[INFO] [stderr]     Checking quick-xml v0.38.4
[INFO] [stderr]     Checking emath v0.33.3
[INFO] [stderr]     Checking ron v0.11.0
[INFO] [stderr]     Checking ron v0.12.0
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking image v0.25.9
[INFO] [stderr]     Checking evalexpr v13.1.0
[INFO] [stderr]     Checking rayon v1.11.0
[INFO] [stderr]     Checking async-executor v1.13.3
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking calloop v0.13.0
[INFO] [stderr]     Checking calloop v0.14.3
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]     Checking ecolor v0.33.3
[INFO] [stderr]     Checking async-signal v0.2.13
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]     Checking icu_properties v2.1.2
[INFO] [stderr]     Checking futures-util v0.3.31
[INFO] [stderr]     Checking async-process v2.5.0
[INFO] [stderr]     Checking epaint v0.33.3
[INFO] [stderr]     Checking dashmap v7.0.0-rc2
[INFO] [stderr]    Compiling zvariant_derive v5.9.2
[INFO] [stderr]     Checking accesskit_consumer v0.31.0
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]    Compiling zvariant v5.9.2
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking x11rb v0.13.2
[INFO] [stderr]    Compiling wayland-scanner v0.31.8
[INFO] [stderr]     Checking webbrowser v1.0.6
[INFO] [stderr]     Checking egui v0.33.3
[INFO] [stderr]     Checking arboard v3.6.1
[INFO] [stderr]     Checking zbus_names v4.3.1
[INFO] [stderr]     Checking zbus_xml v5.1.0
[INFO] [stderr]     Checking zbus-lockstep v0.5.2
[INFO] [stderr]     Checking wayland-protocols v0.32.10
[INFO] [stderr]     Checking wayland-cursor v0.31.12
[INFO] [stderr]     Checking calloop-wayland-source v0.3.0
[INFO] [stderr]     Checking calloop-wayland-source v0.4.1
[INFO] [stderr]    Compiling zbus_macros v5.13.2
[INFO] [stderr]    Compiling zbus-lockstep-macros v0.5.2
[INFO] [stderr]     Checking zbus v5.13.2
[INFO] [stderr]     Checking hello_egui_utils v0.10.0
[INFO] [stderr]     Checking egui_glow v0.33.3
[INFO] [stderr]     Checking egui-scale v0.3.0
[INFO] [stderr]     Checking egui-snarl v0.9.0
[INFO] [stderr]     Checking egui_animation v0.10.0
[INFO] [stderr]     Checking egui_dnd v0.14.0
[INFO] [stderr]     Checking wayland-protocols-wlr v0.3.10
[INFO] [stderr]     Checking wayland-protocols-plasma v0.3.10
[INFO] [stderr]     Checking wayland-protocols-experimental v20250721.0.1
[INFO] [stderr]     Checking wayland-protocols-misc v0.3.10
[INFO] [stderr]     Checking atspi-common v0.9.0
[INFO] [stderr]     Checking sctk-adwaita v0.10.1
[INFO] [stderr]     Checking smithay-clipboard v0.7.3
[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.3
[INFO] [stderr]     Checking lyn-util v0.0.0 (/opt/rustwide/workdir/crates/util)
[INFO] [stderr]     Checking eframe v0.33.3
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]   --> crates/huixin/src/app/mod.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | use log::{info, warn};
[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: `Display`
[INFO] [stdout]  --> crates/huixin/src/app/tools/mod.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::{Debug, Display};
[INFO] [stdout]   |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `adsr_curve::ADSRCurve`
[INFO] [stdout]   --> crates/huisheng/src/app/patch_viewer/node/expression.rs:10:43
[INFO] [stdout]    |
[INFO] [stdout] 10 |         node::{PatchNode, PatchNodeTrait, adsr_curve::ADSRCurve, expression::Expression},
[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::collections::BTreeSet`
[INFO] [stdout]  --> crates/huisheng/src/model/patch/node/expression.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::BTreeSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Block`
[INFO] [stdout]   --> crates/huisheng/src/model/patch/node/expression.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |             Block, Number, WireDataType,
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::BTreeSet`
[INFO] [stdout]  --> crates/huisheng/src/routines/processor/node/expression.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::BTreeSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `info`
[INFO] [stdout]   --> crates/huixin/src/app/mod.rs:12:11
[INFO] [stdout]    |
[INFO] [stdout] 12 | use log::{info, warn};
[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: `Display`
[INFO] [stdout]  --> crates/huixin/src/app/tools/mod.rs:1:23
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::{Debug, Display};
[INFO] [stdout]   |                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `adsr_curve::ADSRCurve`
[INFO] [stdout]   --> crates/huisheng/src/app/patch_viewer/node/expression.rs:10:43
[INFO] [stdout]    |
[INFO] [stdout] 10 |         node::{PatchNode, PatchNodeTrait, adsr_curve::ADSRCurve, expression::Expression},
[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::collections::BTreeSet`
[INFO] [stdout]  --> crates/huisheng/src/model/patch/node/expression.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::BTreeSet;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Block`
[INFO] [stdout]   --> crates/huisheng/src/model/patch/node/expression.rs:11:13
[INFO] [stdout]    |
[INFO] [stdout] 11 |             Block, Number, WireDataType,
[INFO] [stdout]    |             ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::BTreeSet`
[INFO] [stdout]  --> crates/huisheng/src/routines/processor/node/expression.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::collections::BTreeSet;
[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]    --> crates/huixin/src/app/tools/pattern_editor/midi_editor/midi_note.rs:196:35
[INFO] [stdout]     |
[INFO] [stdout] 196 |                 egui::Stroke::new(1.0, stroke_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]     = 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]   --> crates/huixin/src/app/tools/pattern_editor/midi_editor/midi_rows.rs:82:42
[INFO] [stdout]    |
[INFO] [stdout] 82 | ...                   (0, _, _) => 0.8,
[INFO] [stdout]    |                                    ^^^ help: explicitly specify the type as `f32`: `0.8_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]   --> crates/huixin/src/app/tools/pattern_editor/midi_editor/midi_rows.rs:83:42
[INFO] [stdout]    |
[INFO] [stdout] 83 | ...                   (_, 0, _) => 0.4,
[INFO] [stdout]    |                                    ^^^ help: explicitly specify the type as `f32`: `0.4_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]   --> crates/huixin/src/app/tools/pattern_editor/midi_editor/midi_rows.rs:84:42
[INFO] [stdout]    |
[INFO] [stdout] 84 | ...                   (_, _, 0) => 0.2,
[INFO] [stdout]    |                                    ^^^ help: explicitly specify the type as `f32`: `0.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]   --> crates/huixin/src/app/tools/pattern_editor/midi_editor/midi_rows.rs:85:34
[INFO] [stdout]    |
[INFO] [stdout] 85 | ...                   _ => 0.0,
[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]    --> crates/huixin/src/app/tools/pattern_editor/midi_editor/midi_rows.rs:100:25
[INFO] [stdout]     |
[INFO] [stdout] 100 |                         1.,
[INFO] [stdout]     |                         ^^ help: explicitly specify the type as `f32`: `1._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]    --> crates/huixin/src/app/widgets/track_editor/track_row/pattern_row/track_pattern.rs:221:35
[INFO] [stdout]     |
[INFO] [stdout] 221 |                 egui::Stroke::new(1.5, 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]    --> crates/huixin/src/app/tools/pattern_editor/midi_editor/midi_note.rs:196:35
[INFO] [stdout]     |
[INFO] [stdout] 196 |                 egui::Stroke::new(1.0, stroke_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]     = 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]   --> crates/huixin/src/app/tools/pattern_editor/midi_editor/midi_rows.rs:82:42
[INFO] [stdout]    |
[INFO] [stdout] 82 | ...                   (0, _, _) => 0.8,
[INFO] [stdout]    |                                    ^^^ help: explicitly specify the type as `f32`: `0.8_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]   --> crates/huixin/src/app/tools/pattern_editor/midi_editor/midi_rows.rs:83:42
[INFO] [stdout]    |
[INFO] [stdout] 83 | ...                   (_, 0, _) => 0.4,
[INFO] [stdout]    |                                    ^^^ help: explicitly specify the type as `f32`: `0.4_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]   --> crates/huixin/src/app/tools/pattern_editor/midi_editor/midi_rows.rs:84:42
[INFO] [stdout]    |
[INFO] [stdout] 84 | ...                   (_, _, 0) => 0.2,
[INFO] [stdout]    |                                    ^^^ help: explicitly specify the type as `f32`: `0.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]   --> crates/huixin/src/app/tools/pattern_editor/midi_editor/midi_rows.rs:85:34
[INFO] [stdout]    |
[INFO] [stdout] 85 | ...                   _ => 0.0,
[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]    --> crates/huixin/src/app/tools/pattern_editor/midi_editor/midi_rows.rs:100:25
[INFO] [stdout]     |
[INFO] [stdout] 100 |                         1.,
[INFO] [stdout]     |                         ^^ help: explicitly specify the type as `f32`: `1._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]    --> crates/huixin/src/app/widgets/track_editor/track_row/pattern_row/track_pattern.rs:221:35
[INFO] [stdout]     |
[INFO] [stdout] 221 |                 egui::Stroke::new(1.5, 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: unused variable: `resp`
[INFO] [stdout]   --> crates/huixin/src/app/tools/pattern_editor/midi_editor/midi_keyboard.rs:16:20
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let (rect, resp) = ui.allocate_exact_size(desired_size, egui::Sense::all());
[INFO] [stdout]    |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_resp`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `resp`
[INFO] [stdout]   --> crates/huixin/src/app/tools/pattern_editor/midi_editor/midi_keyboard.rs:16:20
[INFO] [stdout]    |
[INFO] [stdout] 16 |         let (rect, resp) = ui.allocate_exact_size(desired_size, egui::Sense::all());
[INFO] [stdout]    |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_resp`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pin`
[INFO] [stdout]   --> crates/huisheng/src/app/patch_viewer/node/expression.rs:93:5
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pin: &egui_snarl::OutPin,
[INFO] [stdout]    |     ^^^ help: if this is intentional, prefix it with an underscore: `_pin`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ui`
[INFO] [stdout]   --> crates/huisheng/src/app/patch_viewer/node/expression.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 94 |     ui: &mut egui::Ui,
[INFO] [stdout]    |     ^^ help: if this is intentional, prefix it with an underscore: `_ui`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `snarl`
[INFO] [stdout]   --> crates/huisheng/src/app/patch_viewer/node/expression.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 95 |     snarl: &mut Snarl<PatchNode>,
[INFO] [stdout]    |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_snarl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `sheet_patterns_iter` is never used
[INFO] [stdout]    --> crates/huixin/src/model/state.rs:349:12
[INFO] [stdout]     |
[INFO] [stdout] 280 | impl CentralState {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 349 |     pub fn sheet_patterns_iter(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EventTrack` is never constructed
[INFO] [stdout]  --> crates/huixin/src/model/track/timeline.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct EventTrack {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ui`
[INFO] [stdout]    --> crates/huisheng/src/app/patch_viewer/mod.rs:286:31
[INFO] [stdout]     |
[INFO] [stdout] 286 |         ui.menu_button("逻辑", |ui| {});
[INFO] [stdout]     |                                 ^^ help: if this is intentional, prefix it with an underscore: `_ui`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `src_pins`
[INFO] [stdout]    --> crates/huisheng/src/app/patch_viewer/mod.rs:313:9
[INFO] [stdout]     |
[INFO] [stdout] 313 |         src_pins: egui_snarl::ui::AnyPins,
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_src_pins`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `snarl`
[INFO] [stdout]    --> crates/huisheng/src/app/patch_viewer/mod.rs:314:9
[INFO] [stdout]     |
[INFO] [stdout] 314 |         snarl: &mut Snarl<NodeTy>,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_snarl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pos`
[INFO] [stdout]    --> crates/huisheng/src/app/patch_viewer/mod.rs:320:9
[INFO] [stdout]     |
[INFO] [stdout] 320 |         pos: egui::Pos2,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ui`
[INFO] [stdout]    --> crates/huisheng/src/app/patch_viewer/mod.rs:321:9
[INFO] [stdout]     |
[INFO] [stdout] 321 |         ui: &mut egui::Ui,
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_ui`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `src_pins`
[INFO] [stdout]    --> crates/huisheng/src/app/patch_viewer/mod.rs:322:9
[INFO] [stdout]     |
[INFO] [stdout] 322 |         src_pins: egui_snarl::ui::AnyPins,
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_src_pins`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `snarl`
[INFO] [stdout]    --> crates/huisheng/src/app/patch_viewer/mod.rs:323:9
[INFO] [stdout]     |
[INFO] [stdout] 323 |         snarl: &mut Snarl<NodeTy>,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_snarl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pin`
[INFO] [stdout]   --> crates/huisheng/src/app/patch_viewer/node/expression.rs:93:5
[INFO] [stdout]    |
[INFO] [stdout] 93 |     pin: &egui_snarl::OutPin,
[INFO] [stdout]    |     ^^^ help: if this is intentional, prefix it with an underscore: `_pin`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ui`
[INFO] [stdout]   --> crates/huisheng/src/app/patch_viewer/node/expression.rs:94:5
[INFO] [stdout]    |
[INFO] [stdout] 94 |     ui: &mut egui::Ui,
[INFO] [stdout]    |     ^^ help: if this is intentional, prefix it with an underscore: `_ui`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `snarl`
[INFO] [stdout]   --> crates/huisheng/src/app/patch_viewer/node/expression.rs:95:5
[INFO] [stdout]    |
[INFO] [stdout] 95 |     snarl: &mut Snarl<PatchNode>,
[INFO] [stdout]    |     ^^^^^ help: if this is intentional, prefix it with an underscore: `_snarl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> crates/huixin/src/app/mod.rs:116:13
[INFO] [stdout]     |
[INFO] [stdout] 116 |             self.state.load_project(dir);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let _ = self.state.load_project(dir);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> crates/huixin/src/app/mod.rs:201:17
[INFO] [stdout]     |
[INFO] [stdout] 201 |                 self.restore_sheet_blocking();
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 201 |                 let _ = self.restore_sheet_blocking();
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> crates/huixin/src/app/mod.rs:353:21
[INFO] [stdout]     |
[INFO] [stdout] 353 |                     self.persist_sheet_blocking();
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 353 |                     let _ = self.persist_sheet_blocking();
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> crates/huixin/src/app/mod.rs:543:13
[INFO] [stdout]     |
[INFO] [stdout] 543 |             self.persist_sheet_blocking();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 543 |             let _ = self.persist_sheet_blocking();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ui`
[INFO] [stdout]    --> crates/huisheng/src/app/patch_viewer/mod.rs:286:31
[INFO] [stdout]     |
[INFO] [stdout] 286 |         ui.menu_button("逻辑", |ui| {});
[INFO] [stdout]     |                                 ^^ help: if this is intentional, prefix it with an underscore: `_ui`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `src_pins`
[INFO] [stdout]    --> crates/huisheng/src/app/patch_viewer/mod.rs:313:9
[INFO] [stdout]     |
[INFO] [stdout] 313 |         src_pins: egui_snarl::ui::AnyPins,
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_src_pins`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `snarl`
[INFO] [stdout]    --> crates/huisheng/src/app/patch_viewer/mod.rs:314:9
[INFO] [stdout]     |
[INFO] [stdout] 314 |         snarl: &mut Snarl<NodeTy>,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_snarl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `pos`
[INFO] [stdout]    --> crates/huisheng/src/app/patch_viewer/mod.rs:320:9
[INFO] [stdout]     |
[INFO] [stdout] 320 |         pos: egui::Pos2,
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ui`
[INFO] [stdout]    --> crates/huisheng/src/app/patch_viewer/mod.rs:321:9
[INFO] [stdout]     |
[INFO] [stdout] 321 |         ui: &mut egui::Ui,
[INFO] [stdout]     |         ^^ help: if this is intentional, prefix it with an underscore: `_ui`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `src_pins`
[INFO] [stdout]    --> crates/huisheng/src/app/patch_viewer/mod.rs:322:9
[INFO] [stdout]     |
[INFO] [stdout] 322 |         src_pins: egui_snarl::ui::AnyPins,
[INFO] [stdout]     |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_src_pins`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `snarl`
[INFO] [stdout]    --> crates/huisheng/src/app/patch_viewer/mod.rs:323:9
[INFO] [stdout]     |
[INFO] [stdout] 323 |         snarl: &mut Snarl<NodeTy>,
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_snarl`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `state` is never read
[INFO] [stdout]   --> crates/huisheng/src/app/patch_viewer/mod.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct PatchViewer {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 27 |     state: Arc<CentralState>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PatchViewer` 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: field `host` is never read
[INFO] [stdout]   --> crates/huisheng/src/model/state.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub struct CpalState {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 72 |     pub host: cpal::Host,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> crates/huisheng/src/app/mod.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |             self.state.load_project(dir);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 95 |             let _ = self.state.load_project(dir);
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> crates/huisheng/src/app/mod.rs:400:21
[INFO] [stdout]     |
[INFO] [stdout] 400 |                     self.persist_sheet_blocking();
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 400 |                     let _ = self.persist_sheet_blocking();
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `sheet_patterns_iter` is never used
[INFO] [stdout]    --> crates/huixin/src/model/state.rs:349:12
[INFO] [stdout]     |
[INFO] [stdout] 280 | impl CentralState {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 349 |     pub fn sheet_patterns_iter(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `EventTrack` is never constructed
[INFO] [stdout]  --> crates/huixin/src/model/track/timeline.rs:2:12
[INFO] [stdout]   |
[INFO] [stdout] 2 | pub struct EventTrack {
[INFO] [stdout]   |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> crates/huisheng/src/app/mod.rs:488:13
[INFO] [stdout]     |
[INFO] [stdout] 488 |             self.persist_sheet_blocking();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 488 |             let _ = self.persist_sheet_blocking();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> crates/huisheng/src/routines/listener.rs:13:13
[INFO] [stdout]    |
[INFO] [stdout] 13 |             state.port_listener_start();
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 13 |             let _ = state.port_listener_start();
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> crates/huixin/src/app/mod.rs:116:13
[INFO] [stdout]     |
[INFO] [stdout] 116 |             self.state.load_project(dir);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 116 |             let _ = self.state.load_project(dir);
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> crates/huixin/src/app/mod.rs:201:17
[INFO] [stdout]     |
[INFO] [stdout] 201 |                 self.restore_sheet_blocking();
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 201 |                 let _ = self.restore_sheet_blocking();
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> crates/huixin/src/app/mod.rs:353:21
[INFO] [stdout]     |
[INFO] [stdout] 353 |                     self.persist_sheet_blocking();
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 353 |                     let _ = self.persist_sheet_blocking();
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> crates/huixin/src/app/mod.rs:543:13
[INFO] [stdout]     |
[INFO] [stdout] 543 |             self.persist_sheet_blocking();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 543 |             let _ = self.persist_sheet_blocking();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `state` is never read
[INFO] [stdout]   --> crates/huisheng/src/app/patch_viewer/mod.rs:27:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct PatchViewer {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] 27 |     state: Arc<CentralState>,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PatchViewer` 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: field `host` is never read
[INFO] [stdout]   --> crates/huisheng/src/model/state.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub struct CpalState {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] 72 |     pub host: cpal::Host,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> crates/huisheng/src/app/mod.rs:95:13
[INFO] [stdout]    |
[INFO] [stdout] 95 |             self.state.load_project(dir);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 95 |             let _ = self.state.load_project(dir);
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> crates/huisheng/src/app/mod.rs:400:21
[INFO] [stdout]     |
[INFO] [stdout] 400 |                     self.persist_sheet_blocking();
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 400 |                     let _ = self.persist_sheet_blocking();
[INFO] [stdout]     |                     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> crates/huisheng/src/app/mod.rs:488:13
[INFO] [stdout]     |
[INFO] [stdout] 488 |             self.persist_sheet_blocking();
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 488 |             let _ = self.persist_sheet_blocking();
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> crates/huisheng/src/routines/listener.rs:13:13
[INFO] [stdout]    |
[INFO] [stdout] 13 |             state.port_listener_start();
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 13 |             let _ = state.port_listener_start();
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 28s
[INFO] running `Command { std: "docker" "inspect" "f01ad369069268aadc31fbb6791794f070fec656c5ec48b47863285aac664360", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f01ad369069268aadc31fbb6791794f070fec656c5ec48b47863285aac664360", kill_on_drop: false }`
[INFO] [stdout] f01ad369069268aadc31fbb6791794f070fec656c5ec48b47863285aac664360
