[INFO] cloning repository https://github.com/aaronsb/playtui
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/aaronsb/playtui" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faaronsb%2Fplaytui", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faaronsb%2Fplaytui'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 1a01342f125b5d20067cd3866d3e98ad9f8f8e7f
[INFO] testing aaronsb/playtui against 1.83.0 for beta-1.84.0-4-retry
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Faaronsb%2Fplaytui" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/aaronsb/playtui on toolchain 1.83.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.83.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/aaronsb/playtui
[INFO] finished tweaking git repo https://github.com/aaronsb/playtui
[INFO] tweaked toml for git repo https://github.com/aaronsb/playtui written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/aaronsb/playtui 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" "+1.83.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded symphonia-codec-pcm v0.5.4
[INFO] [stderr]   Downloaded symphonia-format-mkv v0.5.4
[INFO] [stderr]   Downloaded extended v0.1.0
[INFO] [stderr]   Downloaded serial_test_derive v3.2.0
[INFO] [stderr]   Downloaded serial_test v3.2.0
[INFO] [stderr]   Downloaded symphonia-codec-adpcm v0.5.4
[INFO] [stderr]   Downloaded symphonia-bundle-flac v0.5.4
[INFO] [stderr]   Downloaded symphonia-format-riff v0.5.4
[INFO] [stderr]   Downloaded metaflac v0.2.7
[INFO] [stderr]   Downloaded id3 v1.15.0
[INFO] [stderr]   Downloaded scc v2.2.5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+1.83.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 062463bb7c7628ee7914b5c615ddd28b065bfcbd65cb683bfd9294c5bd32d479
[INFO] running `Command { std: "docker" "start" "-a" "062463bb7c7628ee7914b5c615ddd28b065bfcbd65cb683bfd9294c5bd32d479", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "062463bb7c7628ee7914b5c615ddd28b065bfcbd65cb683bfd9294c5bd32d479", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "062463bb7c7628ee7914b5c615ddd28b065bfcbd65cb683bfd9294c5bd32d479", kill_on_drop: false }`
[INFO] [stdout] 062463bb7c7628ee7914b5c615ddd28b065bfcbd65cb683bfd9294c5bd32d479
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+1.83.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 08c6071d52723510902c9d6ad565a12ea0b23ce3e6ae4b4ed9634c6098b964f8
[INFO] running `Command { std: "docker" "start" "-a" "08c6071d52723510902c9d6ad565a12ea0b23ce3e6ae4b4ed9634c6098b964f8", kill_on_drop: false }`
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling log v0.4.22
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling libc v0.2.165
[INFO] [stderr]    Compiling bytemuck v1.20.0
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling proc-macro2 v1.0.92
[INFO] [stderr]    Compiling unicode-ident v1.0.14
[INFO] [stderr]    Compiling autocfg v1.4.0
[INFO] [stderr]    Compiling rustversion v1.0.18
[INFO] [stderr]    Compiling parking_lot_core v0.9.10
[INFO] [stderr]    Compiling signal-hook v0.3.17
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling encoding_rs v0.8.35
[INFO] [stderr]    Compiling bitflags v2.6.0
[INFO] [stderr]    Compiling adler2 v2.0.0
[INFO] [stderr]    Compiling equivalent v1.0.1
[INFO] [stderr]    Compiling foldhash v0.1.3
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]    Compiling symphonia-core v0.5.4
[INFO] [stderr]    Compiling allocator-api2 v0.2.20
[INFO] [stderr]    Compiling serde v1.0.215
[INFO] [stderr]    Compiling heck v0.4.1
[INFO] [stderr]    Compiling miniz_oxide v0.8.0
[INFO] [stderr]    Compiling crc32fast v1.4.2
[INFO] [stderr]    Compiling option-ext v0.2.0
[INFO] [stderr]    Compiling anyhow v1.0.93
[INFO] [stderr]    Compiling serde_json v1.0.133
[INFO] [stderr]    Compiling extended v0.1.0
[INFO] [stderr]    Compiling either v1.13.0
[INFO] [stderr]    Compiling tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling tinyvec v1.8.0
[INFO] [stderr]    Compiling ogg v0.8.0
[INFO] [stderr]    Compiling unicode-segmentation v1.12.0
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling itertools v0.11.0
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling indoc v2.0.5
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling hashbrown v0.15.2
[INFO] [stderr]    Compiling flate2 v1.0.35
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling unicode-width v0.1.14
[INFO] [stderr]    Compiling lru v0.12.5
[INFO] [stderr]    Compiling itoa v1.0.14
[INFO] [stderr]    Compiling cassowary v0.3.0
[INFO] [stderr]    Compiling ryu v1.0.18
[INFO] [stderr]    Compiling metaflac v0.2.7
[INFO] [stderr]    Compiling id3 v1.15.0
[INFO] [stderr]    Compiling lewton v0.10.2
[INFO] [stderr]    Compiling syn v2.0.89
[INFO] [stderr]    Compiling signal-hook-registry v1.4.2
[INFO] [stderr]    Compiling mio v0.8.11
[INFO] [stderr]    Compiling dirs-sys v0.4.1
[INFO] [stderr]    Compiling directories v5.0.1
[INFO] [stderr]    Compiling symphonia-metadata v0.5.4
[INFO] [stderr]    Compiling signal-hook-mio v0.2.4
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling symphonia-codec-pcm v0.5.4
[INFO] [stderr]    Compiling symphonia-codec-adpcm v0.5.4
[INFO] [stderr]    Compiling symphonia-utils-xiph v0.5.4
[INFO] [stderr]    Compiling symphonia-bundle-mp3 v0.5.4
[INFO] [stderr]    Compiling crossterm v0.27.0
[INFO] [stderr]    Compiling symphonia-format-riff v0.5.4
[INFO] [stderr]    Compiling symphonia-format-mkv v0.5.4
[INFO] [stderr]    Compiling symphonia-bundle-flac v0.5.4
[INFO] [stderr]    Compiling symphonia-codec-vorbis v0.5.4
[INFO] [stderr]    Compiling symphonia-format-ogg v0.5.4
[INFO] [stderr]    Compiling symphonia v0.5.4
[INFO] [stderr]    Compiling strum_macros v0.25.3
[INFO] [stderr]    Compiling serde_derive v1.0.215
[INFO] [stderr]    Compiling strum v0.25.0
[INFO] [stderr]    Compiling ratatui v0.24.0
[INFO] [stderr]    Compiling playtui v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Component`
[INFO] [stdout]  --> src/app/state.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     Component, LibraryBrowser, TrackList, TrackDetails,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EventResult` and `Event`
[INFO] [stdout]   --> src/app/mod.rs:13:21
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::events::{Event, Action, EventResult};
[INFO] [stdout]    |                     ^^^^^          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `EventHandler`
[INFO] [stdout]  --> src/components/library_browser/events.rs:1:63
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::events::{Event, Action, KeyEvent, NavigationEvent, EventHandler, EventResult, MouseEvent};
[INFO] [stdout]   |                                                               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `select_next` and `select_previous`
[INFO] [stdout]   --> src/components/playlist/mod.rs:53:27
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub(self) use selection::{select_next, select_previous};
[INFO] [stdout]    |                           ^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/preferences/manager/save_handler.rs:3:18
[INFO] [stdout]   |
[INFO] [stdout] 3 | use log::{error, warn, debug};
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Action`
[INFO] [stdout]   --> src/state/mod.rs:12:21
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::events::{Action, TrackMetadata};
[INFO] [stdout]    |                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::components::Component`
[INFO] [stdout]  --> src/components/controls/events/handlers.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::components::Component;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buffer`
[INFO] [stdout]   --> src/audio/formats/audio_reader.rs:23:28
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn read(&mut self, buffer: &mut [f32]) -> Result<usize, Box<dyn Error>> {
[INFO] [stdout]    |                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_buffer`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/audio/formats/flac.rs:14:32
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn read_flac_header(&self, path: &Path) -> Result<AudioFormat, Box<dyn Error>> {
[INFO] [stdout]    |                                ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/audio/formats/mp3.rs:14:31
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn read_mp3_header(&self, path: &Path) -> Result<AudioFormat, Box<dyn Error>> {
[INFO] [stdout]    |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header`
[INFO] [stdout]   --> src/audio/formats/mp3.rs:30:34
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn parse_frame_header(&self, header: u32) -> Option<(u32, u16)> {
[INFO] [stdout]    |                                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/audio/formats/ogg.rs:14:31
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn read_ogg_header(&self, path: &Path) -> Result<AudioFormat, Box<dyn Error>> {
[INFO] [stdout]    |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header`
[INFO] [stdout]   --> src/audio/formats/ogg.rs:30:33
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn validate_ogg_page(&self, header: &[u8]) -> bool {
[INFO] [stdout]    |                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header`
[INFO] [stdout]   --> src/audio/formats/ogg.rs:39:35
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn parse_vorbis_header(&self, header: &[u8]) -> Option<(u32, u16)> {
[INFO] [stdout]    |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/audio/formats/wav.rs:14:31
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn read_wav_header(&self, path: &Path) -> Result<AudioFormat, Box<dyn Error>> {
[INFO] [stdout]    |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header`
[INFO] [stdout]   --> src/audio/formats/wav.rs:30:36
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn validate_riff_header(&self, header: &[u8]) -> bool {
[INFO] [stdout]    |                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chunk`
[INFO] [stdout]   --> src/audio/formats/wav.rs:39:31
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn parse_fmt_chunk(&self, chunk: &[u8]) -> Option<(u16, u32, u16)> {
[INFO] [stdout]    |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_chunk`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file_data`
[INFO] [stdout]   --> src/audio/formats/wav.rs:49:31
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn find_data_chunk(&self, file_data: &[u8]) -> Option<(usize, usize)> {
[INFO] [stdout]    |                               ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]    --> src/components/now_playing.rs:118:32
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn handle_event(&mut self, event: Event) -> Option<Action> {
[INFO] [stdout]     |                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `App` is never constructed
[INFO] [stdout]   --> src/app/state.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct App {
[INFO] [stdout]    |            ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `update_component_area` is never used
[INFO] [stdout]   --> src/app/state.rs:38:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl App {
[INFO] [stdout]    | -------- method in this implementation
[INFO] [stdout] 37 |     /// Updates the area for a component during rendering
[INFO] [stdout] 38 |     pub fn update_component_area(&mut self, component_name: &str, area: Rect) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `update_position` is never used
[INFO] [stdout]   --> src/audio/player.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl PlaybackEngine {
[INFO] [stdout]    | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     fn update_position(&mut self) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `buffer` is never read
[INFO] [stdout]  --> src/audio/formats/audio_reader.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct AudioReader {
[INFO] [stdout]   |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 8 |     buffer: Vec<f32>, // Normalized float samples
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `parse_frame_header` is never used
[INFO] [stdout]   --> src/audio/formats/mp3.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl Mp3Decoder {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn parse_frame_header(&self, header: u32) -> Option<(u32, u16)> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `validate_ogg_page` and `parse_vorbis_header` are never used
[INFO] [stdout]   --> src/audio/formats/ogg.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl OggDecoder {
[INFO] [stdout]    | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn validate_ogg_page(&self, header: &[u8]) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn parse_vorbis_header(&self, header: &[u8]) -> Option<(u32, u16)> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `validate_riff_header`, `parse_fmt_chunk`, and `find_data_chunk` are never used
[INFO] [stdout]   --> src/audio/formats/wav.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl WavDecoder {
[INFO] [stdout]    | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn validate_riff_header(&self, header: &[u8]) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn parse_fmt_chunk(&self, chunk: &[u8]) -> Option<(u16, u32, u16)> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     fn find_data_chunk(&self, file_data: &[u8]) -> Option<(usize, usize)> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_config` is never used
[INFO] [stdout]  --> src/preferences/validation.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn validate_config(config: &mut PreferencesConfig) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_volume` is never used
[INFO] [stdout]   --> src/preferences/validation.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn validate_volume(config: &mut PreferencesConfig) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_theme` is never used
[INFO] [stdout]   --> src/preferences/validation.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn validate_theme(config: &mut PreferencesConfig) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_directory` is never used
[INFO] [stdout]   --> src/preferences/validation.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn validate_directory(config: &mut PreferencesConfig) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_fs_writable` and `save_failures` are never used
[INFO] [stdout]   --> src/preferences/manager/save_handler.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl SaveHandler {
[INFO] [stdout]    | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 61 |     pub fn is_fs_writable(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub fn save_failures(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 33.15s
[INFO] running `Command { std: "docker" "inspect" "08c6071d52723510902c9d6ad565a12ea0b23ce3e6ae4b4ed9634c6098b964f8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "08c6071d52723510902c9d6ad565a12ea0b23ce3e6ae4b4ed9634c6098b964f8", kill_on_drop: false }`
[INFO] [stdout] 08c6071d52723510902c9d6ad565a12ea0b23ce3e6ae4b4ed9634c6098b964f8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+1.83.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b9657053dfa5f97c1ffd4f8bca06b2a93d1786e0f4c9cc31d7e6833ee5a5183b
[INFO] running `Command { std: "docker" "start" "-a" "b9657053dfa5f97c1ffd4f8bca06b2a93d1786e0f4c9cc31d7e6833ee5a5183b", kill_on_drop: false }`
[INFO] [stderr]    Compiling bitflags v2.6.0
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling syn v2.0.89
[INFO] [stderr]    Compiling futures-task v0.3.31
[INFO] [stderr]    Compiling pin-project-lite v0.2.15
[INFO] [stderr]    Compiling pin-utils v0.1.0
[INFO] [stderr]    Compiling futures-io v0.3.31
[INFO] [stderr]    Compiling rustix v0.38.41
[INFO] [stderr]    Compiling sdd v3.0.4
[INFO] [stderr]    Compiling linux-raw-sys v0.4.14
[INFO] [stderr]    Compiling once_cell v1.20.2
[INFO] [stderr]    Compiling fastrand v2.2.0
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling crossterm v0.27.0
[INFO] [stderr]    Compiling id3 v1.15.0
[INFO] [stderr]    Compiling scc v2.2.5
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling tempfile v3.14.0
[INFO] [stderr]    Compiling futures-executor v0.3.31
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling serde_derive v1.0.215
[INFO] [stderr]    Compiling strum_macros v0.25.3
[INFO] [stderr]    Compiling serial_test_derive v3.2.0
[INFO] [stderr]    Compiling serial_test v3.2.0
[INFO] [stderr]    Compiling strum v0.25.0
[INFO] [stderr]    Compiling ratatui v0.24.0
[INFO] [stderr]    Compiling serde v1.0.215
[INFO] [stderr]    Compiling serde_json v1.0.133
[INFO] [stderr]    Compiling playtui v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `Component`
[INFO] [stdout]  --> src/app/state.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     Component, LibraryBrowser, TrackList, TrackDetails,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EventResult` and `Event`
[INFO] [stdout]   --> src/app/mod.rs:13:21
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::events::{Event, Action, EventResult};
[INFO] [stdout]    |                     ^^^^^          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `EventHandler`
[INFO] [stdout]  --> src/components/library_browser/events.rs:1:63
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::events::{Event, Action, KeyEvent, NavigationEvent, EventHandler, EventResult, MouseEvent};
[INFO] [stdout]   |                                                               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `select_next` and `select_previous`
[INFO] [stdout]   --> src/components/playlist/mod.rs:53:27
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub(self) use selection::{select_next, select_previous};
[INFO] [stdout]    |                           ^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/preferences/manager/save_handler.rs:3:18
[INFO] [stdout]   |
[INFO] [stdout] 3 | use log::{error, warn, debug};
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Action`
[INFO] [stdout]   --> src/state/mod.rs:12:21
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::events::{Action, TrackMetadata};
[INFO] [stdout]    |                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Component`
[INFO] [stdout]  --> src/app/state.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 |     Component, LibraryBrowser, TrackList, TrackDetails,
[INFO] [stdout]   |     ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EventResult` and `Event`
[INFO] [stdout]   --> src/app/mod.rs:13:21
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::events::{Event, Action, EventResult};
[INFO] [stdout]    |                     ^^^^^          ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/app/mod.rs:132:9
[INFO] [stdout]     |
[INFO] [stdout] 132 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `EventHandler`
[INFO] [stdout]  --> src/components/library_browser/events.rs:1:63
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::events::{Event, Action, KeyEvent, NavigationEvent, EventHandler, EventResult, MouseEvent};
[INFO] [stdout]   |                                                               ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MouseEvent`
[INFO] [stdout]  --> src/components/volume_control/tests.rs:2:46
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::events::{Event, Action, KeyEvent, MouseEvent};
[INFO] [stdout]   |                                              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ratatui::prelude::*`
[INFO] [stdout]  --> src/components/volume_control/tests.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ratatui::prelude::*;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `select_next` and `select_previous`
[INFO] [stdout]   --> src/components/playlist/mod.rs:53:27
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub(self) use selection::{select_next, select_previous};
[INFO] [stdout]    |                           ^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `warn`
[INFO] [stdout]  --> src/preferences/manager/save_handler.rs:3:18
[INFO] [stdout]   |
[INFO] [stdout] 3 | use log::{error, warn, debug};
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Action`
[INFO] [stdout]   --> src/state/mod.rs:12:21
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::events::{Action, TrackMetadata};
[INFO] [stdout]    |                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::components::Component`
[INFO] [stdout]  --> src/components/controls/events/handlers.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::components::Component;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buffer`
[INFO] [stdout]   --> src/audio/formats/audio_reader.rs:23:28
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn read(&mut self, buffer: &mut [f32]) -> Result<usize, Box<dyn Error>> {
[INFO] [stdout]    |                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_buffer`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/audio/formats/flac.rs:14:32
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn read_flac_header(&self, path: &Path) -> Result<AudioFormat, Box<dyn Error>> {
[INFO] [stdout]    |                                ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/audio/formats/mp3.rs:14:31
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn read_mp3_header(&self, path: &Path) -> Result<AudioFormat, Box<dyn Error>> {
[INFO] [stdout]    |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header`
[INFO] [stdout]   --> src/audio/formats/mp3.rs:30:34
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn parse_frame_header(&self, header: u32) -> Option<(u32, u16)> {
[INFO] [stdout]    |                                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/audio/formats/ogg.rs:14:31
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn read_ogg_header(&self, path: &Path) -> Result<AudioFormat, Box<dyn Error>> {
[INFO] [stdout]    |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header`
[INFO] [stdout]   --> src/audio/formats/ogg.rs:30:33
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn validate_ogg_page(&self, header: &[u8]) -> bool {
[INFO] [stdout]    |                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header`
[INFO] [stdout]   --> src/audio/formats/ogg.rs:39:35
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn parse_vorbis_header(&self, header: &[u8]) -> Option<(u32, u16)> {
[INFO] [stdout]    |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/audio/formats/wav.rs:14:31
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn read_wav_header(&self, path: &Path) -> Result<AudioFormat, Box<dyn Error>> {
[INFO] [stdout]    |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header`
[INFO] [stdout]   --> src/audio/formats/wav.rs:30:36
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn validate_riff_header(&self, header: &[u8]) -> bool {
[INFO] [stdout]    |                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chunk`
[INFO] [stdout]   --> src/audio/formats/wav.rs:39:31
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn parse_fmt_chunk(&self, chunk: &[u8]) -> Option<(u16, u32, u16)> {
[INFO] [stdout]    |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_chunk`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file_data`
[INFO] [stdout]   --> src/audio/formats/wav.rs:49:31
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn find_data_chunk(&self, file_data: &[u8]) -> Option<(usize, usize)> {
[INFO] [stdout]    |                               ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]    --> src/components/now_playing.rs:118:32
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn handle_event(&mut self, event: Event) -> Option<Action> {
[INFO] [stdout]     |                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::components::Component`
[INFO] [stdout]  --> src/components/controls/events/handlers.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use crate::components::Component;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `buffer`
[INFO] [stdout]   --> src/audio/formats/audio_reader.rs:23:28
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn read(&mut self, buffer: &mut [f32]) -> Result<usize, Box<dyn Error>> {
[INFO] [stdout]    |                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_buffer`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/audio/formats/flac.rs:14:32
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn read_flac_header(&self, path: &Path) -> Result<AudioFormat, Box<dyn Error>> {
[INFO] [stdout]    |                                ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/audio/formats/mp3.rs:14:31
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn read_mp3_header(&self, path: &Path) -> Result<AudioFormat, Box<dyn Error>> {
[INFO] [stdout]    |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header`
[INFO] [stdout]   --> src/audio/formats/mp3.rs:30:34
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn parse_frame_header(&self, header: u32) -> Option<(u32, u16)> {
[INFO] [stdout]    |                                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/audio/formats/ogg.rs:14:31
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn read_ogg_header(&self, path: &Path) -> Result<AudioFormat, Box<dyn Error>> {
[INFO] [stdout]    |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header`
[INFO] [stdout]   --> src/audio/formats/ogg.rs:30:33
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn validate_ogg_page(&self, header: &[u8]) -> bool {
[INFO] [stdout]    |                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header`
[INFO] [stdout]   --> src/audio/formats/ogg.rs:39:35
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn parse_vorbis_header(&self, header: &[u8]) -> Option<(u32, u16)> {
[INFO] [stdout]    |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `path`
[INFO] [stdout]   --> src/audio/formats/wav.rs:14:31
[INFO] [stdout]    |
[INFO] [stdout] 14 |     fn read_wav_header(&self, path: &Path) -> Result<AudioFormat, Box<dyn Error>> {
[INFO] [stdout]    |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `header`
[INFO] [stdout]   --> src/audio/formats/wav.rs:30:36
[INFO] [stdout]    |
[INFO] [stdout] 30 |     fn validate_riff_header(&self, header: &[u8]) -> bool {
[INFO] [stdout]    |                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chunk`
[INFO] [stdout]   --> src/audio/formats/wav.rs:39:31
[INFO] [stdout]    |
[INFO] [stdout] 39 |     fn parse_fmt_chunk(&self, chunk: &[u8]) -> Option<(u16, u32, u16)> {
[INFO] [stdout]    |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_chunk`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `file_data`
[INFO] [stdout]   --> src/audio/formats/wav.rs:49:31
[INFO] [stdout]    |
[INFO] [stdout] 49 |     fn find_data_chunk(&self, file_data: &[u8]) -> Option<(usize, usize)> {
[INFO] [stdout]    |                               ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file_data`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `event`
[INFO] [stdout]    --> src/components/now_playing.rs:118:32
[INFO] [stdout]     |
[INFO] [stdout] 118 |     fn handle_event(&mut self, event: Event) -> Option<Action> {
[INFO] [stdout]     |                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `App` is never constructed
[INFO] [stdout]   --> src/app/state.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct App {
[INFO] [stdout]    |            ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `update_component_area` is never used
[INFO] [stdout]   --> src/app/state.rs:38:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl App {
[INFO] [stdout]    | -------- method in this implementation
[INFO] [stdout] 37 |     /// Updates the area for a component during rendering
[INFO] [stdout] 38 |     pub fn update_component_area(&mut self, component_name: &str, area: Rect) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `update_position` is never used
[INFO] [stdout]   --> src/audio/player.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl PlaybackEngine {
[INFO] [stdout]    | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     fn update_position(&mut self) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `buffer` is never read
[INFO] [stdout]  --> src/audio/formats/audio_reader.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct AudioReader {
[INFO] [stdout]   |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 8 |     buffer: Vec<f32>, // Normalized float samples
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `parse_frame_header` is never used
[INFO] [stdout]   --> src/audio/formats/mp3.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl Mp3Decoder {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn parse_frame_header(&self, header: u32) -> Option<(u32, u16)> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `validate_ogg_page` and `parse_vorbis_header` are never used
[INFO] [stdout]   --> src/audio/formats/ogg.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl OggDecoder {
[INFO] [stdout]    | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn validate_ogg_page(&self, header: &[u8]) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn parse_vorbis_header(&self, header: &[u8]) -> Option<(u32, u16)> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `validate_riff_header`, `parse_fmt_chunk`, and `find_data_chunk` are never used
[INFO] [stdout]   --> src/audio/formats/wav.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl WavDecoder {
[INFO] [stdout]    | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn validate_riff_header(&self, header: &[u8]) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn parse_fmt_chunk(&self, chunk: &[u8]) -> Option<(u16, u32, u16)> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     fn find_data_chunk(&self, file_data: &[u8]) -> Option<(usize, usize)> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_config` is never used
[INFO] [stdout]  --> src/preferences/validation.rs:6:8
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub fn validate_config(config: &mut PreferencesConfig) {
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_volume` is never used
[INFO] [stdout]   --> src/preferences/validation.rs:13:4
[INFO] [stdout]    |
[INFO] [stdout] 13 | fn validate_volume(config: &mut PreferencesConfig) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_theme` is never used
[INFO] [stdout]   --> src/preferences/validation.rs:22:4
[INFO] [stdout]    |
[INFO] [stdout] 22 | fn validate_theme(config: &mut PreferencesConfig) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `validate_directory` is never used
[INFO] [stdout]   --> src/preferences/validation.rs:37:4
[INFO] [stdout]    |
[INFO] [stdout] 37 | fn validate_directory(config: &mut PreferencesConfig) {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `is_fs_writable` and `save_failures` are never used
[INFO] [stdout]   --> src/preferences/manager/save_handler.rs:61:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl SaveHandler {
[INFO] [stdout]    | ---------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 61 |     pub fn is_fs_writable(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 66 |     pub fn save_failures(&self) -> u32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `App` is never constructed
[INFO] [stdout]   --> src/app/state.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct App {
[INFO] [stdout]    |            ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `update_component_area` is never used
[INFO] [stdout]   --> src/app/state.rs:38:12
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl App {
[INFO] [stdout]    | -------- method in this implementation
[INFO] [stdout] 37 |     /// Updates the area for a component during rendering
[INFO] [stdout] 38 |     pub fn update_component_area(&mut self, component_name: &str, area: Rect) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `update_position` is never used
[INFO] [stdout]   --> src/audio/player.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 14 | impl PlaybackEngine {
[INFO] [stdout]    | ------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 25 |     fn update_position(&mut self) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `buffer` is never read
[INFO] [stdout]  --> src/audio/formats/audio_reader.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub struct AudioReader {
[INFO] [stdout]   |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 8 |     buffer: Vec<f32>, // Normalized float samples
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `parse_frame_header` is never used
[INFO] [stdout]   --> src/audio/formats/mp3.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl Mp3Decoder {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn parse_frame_header(&self, header: u32) -> Option<(u32, u16)> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `validate_ogg_page` and `parse_vorbis_header` are never used
[INFO] [stdout]   --> src/audio/formats/ogg.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl OggDecoder {
[INFO] [stdout]    | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn validate_ogg_page(&self, header: &[u8]) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn parse_vorbis_header(&self, header: &[u8]) -> Option<(u32, u16)> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `validate_riff_header`, `parse_fmt_chunk`, and `find_data_chunk` are never used
[INFO] [stdout]   --> src/audio/formats/wav.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 9  | impl WavDecoder {
[INFO] [stdout]    | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 30 |     fn validate_riff_header(&self, header: &[u8]) -> bool {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     fn parse_fmt_chunk(&self, chunk: &[u8]) -> Option<(u16, u32, u16)> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 49 |     fn find_data_chunk(&self, file_data: &[u8]) -> Option<(usize, usize)> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 24.97s
[INFO] running `Command { std: "docker" "inspect" "b9657053dfa5f97c1ffd4f8bca06b2a93d1786e0f4c9cc31d7e6833ee5a5183b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b9657053dfa5f97c1ffd4f8bca06b2a93d1786e0f4c9cc31d7e6833ee5a5183b", kill_on_drop: false }`
[INFO] [stdout] b9657053dfa5f97c1ffd4f8bca06b2a93d1786e0f4c9cc31d7e6833ee5a5183b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+1.83.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 742389a584b9f0f2ce2c83f11670efb1ff3c0f2390423786d91744ada8edca82
[INFO] running `Command { std: "docker" "start" "-a" "742389a584b9f0f2ce2c83f11670efb1ff3c0f2390423786d91744ada8edca82", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `Component`
[INFO] [stderr]  --> src/app/state.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 |     Component, LibraryBrowser, TrackList, TrackDetails,
[INFO] [stderr]   |     ^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `EventResult` and `Event`
[INFO] [stderr]   --> src/app/mod.rs:13:21
[INFO] [stderr]    |
[INFO] [stderr] 13 | use crate::events::{Event, Action, EventResult};
[INFO] [stderr]    |                     ^^^^^          ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `EventHandler`
[INFO] [stderr]  --> src/components/library_browser/events.rs:1:63
[INFO] [stderr]   |
[INFO] [stderr] 1 | use crate::events::{Event, Action, KeyEvent, NavigationEvent, EventHandler, EventResult, MouseEvent};
[INFO] [stderr]   |                                                               ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `select_next` and `select_previous`
[INFO] [stderr]   --> src/components/playlist/mod.rs:53:27
[INFO] [stderr]    |
[INFO] [stderr] 53 | pub(self) use selection::{select_next, select_previous};
[INFO] [stderr]    |                           ^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `warn`
[INFO] [stderr]  --> src/preferences/manager/save_handler.rs:3:18
[INFO] [stderr]   |
[INFO] [stderr] 3 | use log::{error, warn, debug};
[INFO] [stderr]   |                  ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Action`
[INFO] [stderr]   --> src/state/mod.rs:12:21
[INFO] [stderr]    |
[INFO] [stderr] 12 | use crate::events::{Action, TrackMetadata};
[INFO] [stderr]    |                     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::components::Component`
[INFO] [stderr]  --> src/components/controls/events/handlers.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use crate::components::Component;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `buffer`
[INFO] [stderr]   --> src/audio/formats/audio_reader.rs:23:28
[INFO] [stderr]    |
[INFO] [stderr] 23 |     pub fn read(&mut self, buffer: &mut [f32]) -> Result<usize, Box<dyn Error>> {
[INFO] [stderr]    |                            ^^^^^^ help: if this is intentional, prefix it with an underscore: `_buffer`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `path`
[INFO] [stderr]   --> src/audio/formats/flac.rs:14:32
[INFO] [stderr]    |
[INFO] [stderr] 14 |     fn read_flac_header(&self, path: &Path) -> Result<AudioFormat, Box<dyn Error>> {
[INFO] [stderr]    |                                ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `path`
[INFO] [stderr]   --> src/audio/formats/mp3.rs:14:31
[INFO] [stderr]    |
[INFO] [stderr] 14 |     fn read_mp3_header(&self, path: &Path) -> Result<AudioFormat, Box<dyn Error>> {
[INFO] [stderr]    |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `header`
[INFO] [stderr]   --> src/audio/formats/mp3.rs:30:34
[INFO] [stderr]    |
[INFO] [stderr] 30 |     fn parse_frame_header(&self, header: u32) -> Option<(u32, u16)> {
[INFO] [stderr]    |                                  ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `path`
[INFO] [stderr]   --> src/audio/formats/ogg.rs:14:31
[INFO] [stderr]    |
[INFO] [stderr] 14 |     fn read_ogg_header(&self, path: &Path) -> Result<AudioFormat, Box<dyn Error>> {
[INFO] [stderr]    |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `header`
[INFO] [stderr]   --> src/audio/formats/ogg.rs:30:33
[INFO] [stderr]    |
[INFO] [stderr] 30 |     fn validate_ogg_page(&self, header: &[u8]) -> bool {
[INFO] [stderr]    |                                 ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `header`
[INFO] [stderr]   --> src/audio/formats/ogg.rs:39:35
[INFO] [stderr]    |
[INFO] [stderr] 39 |     fn parse_vorbis_header(&self, header: &[u8]) -> Option<(u32, u16)> {
[INFO] [stderr]    |                                   ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `path`
[INFO] [stderr]   --> src/audio/formats/wav.rs:14:31
[INFO] [stderr]    |
[INFO] [stderr] 14 |     fn read_wav_header(&self, path: &Path) -> Result<AudioFormat, Box<dyn Error>> {
[INFO] [stderr]    |                               ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `header`
[INFO] [stderr]   --> src/audio/formats/wav.rs:30:36
[INFO] [stderr]    |
[INFO] [stderr] 30 |     fn validate_riff_header(&self, header: &[u8]) -> bool {
[INFO] [stderr]    |                                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_header`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `chunk`
[INFO] [stderr]   --> src/audio/formats/wav.rs:39:31
[INFO] [stderr]    |
[INFO] [stderr] 39 |     fn parse_fmt_chunk(&self, chunk: &[u8]) -> Option<(u16, u32, u16)> {
[INFO] [stderr]    |                               ^^^^^ help: if this is intentional, prefix it with an underscore: `_chunk`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `file_data`
[INFO] [stderr]   --> src/audio/formats/wav.rs:49:31
[INFO] [stderr]    |
[INFO] [stderr] 49 |     fn find_data_chunk(&self, file_data: &[u8]) -> Option<(usize, usize)> {
[INFO] [stderr]    |                               ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_file_data`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `event`
[INFO] [stderr]    --> src/components/now_playing.rs:118:32
[INFO] [stderr]     |
[INFO] [stderr] 118 |     fn handle_event(&mut self, event: Event) -> Option<Action> {
[INFO] [stderr]     |                                ^^^^^ help: if this is intentional, prefix it with an underscore: `_event`
[INFO] [stderr] 
[INFO] [stderr] warning: struct `App` is never constructed
[INFO] [stderr]   --> src/app/state.rs:15:12
[INFO] [stderr]    |
[INFO] [stderr] 15 | pub struct App {
[INFO] [stderr]    |            ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `update_component_area` is never used
[INFO] [stderr]   --> src/app/state.rs:38:12
[INFO] [stderr]    |
[INFO] [stderr] 36 | impl App {
[INFO] [stderr]    | -------- method in this implementation
[INFO] [stderr] 37 |     /// Updates the area for a component during rendering
[INFO] [stderr] 38 |     pub fn update_component_area(&mut self, component_name: &str, area: Rect) {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `update_position` is never used
[INFO] [stderr]   --> src/audio/player.rs:25:8
[INFO] [stderr]    |
[INFO] [stderr] 14 | impl PlaybackEngine {
[INFO] [stderr]    | ------------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 25 |     fn update_position(&mut self) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `buffer` is never read
[INFO] [stderr]  --> src/audio/formats/audio_reader.rs:8:5
[INFO] [stderr]   |
[INFO] [stderr] 5 | pub struct AudioReader {
[INFO] [stderr]   |            ----------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 8 |     buffer: Vec<f32>, // Normalized float samples
[INFO] [stderr]   |     ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `parse_frame_header` is never used
[INFO] [stderr]   --> src/audio/formats/mp3.rs:30:8
[INFO] [stderr]    |
[INFO] [stderr] 9  | impl Mp3Decoder {
[INFO] [stderr]    | --------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 30 |     fn parse_frame_header(&self, header: u32) -> Option<(u32, u16)> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `validate_ogg_page` and `parse_vorbis_header` are never used
[INFO] [stderr]   --> src/audio/formats/ogg.rs:30:8
[INFO] [stderr]    |
[INFO] [stderr] 9  | impl OggDecoder {
[INFO] [stderr]    | --------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 30 |     fn validate_ogg_page(&self, header: &[u8]) -> bool {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 39 |     fn parse_vorbis_header(&self, header: &[u8]) -> Option<(u32, u16)> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `validate_riff_header`, `parse_fmt_chunk`, and `find_data_chunk` are never used
[INFO] [stderr]   --> src/audio/formats/wav.rs:30:8
[INFO] [stderr]    |
[INFO] [stderr] 9  | impl WavDecoder {
[INFO] [stderr]    | --------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 30 |     fn validate_riff_header(&self, header: &[u8]) -> bool {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 39 |     fn parse_fmt_chunk(&self, chunk: &[u8]) -> Option<(u16, u32, u16)> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 49 |     fn find_data_chunk(&self, file_data: &[u8]) -> Option<(usize, usize)> {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `validate_config` is never used
[INFO] [stderr]  --> src/preferences/validation.rs:6:8
[INFO] [stderr]   |
[INFO] [stderr] 6 | pub fn validate_config(config: &mut PreferencesConfig) {
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `validate_volume` is never used
[INFO] [stderr]   --> src/preferences/validation.rs:13:4
[INFO] [stderr]    |
[INFO] [stderr] 13 | fn validate_volume(config: &mut PreferencesConfig) {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `validate_theme` is never used
[INFO] [stderr]   --> src/preferences/validation.rs:22:4
[INFO] [stderr]    |
[INFO] [stderr] 22 | fn validate_theme(config: &mut PreferencesConfig) {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `validate_directory` is never used
[INFO] [stderr]   --> src/preferences/validation.rs:37:4
[INFO] [stderr]    |
[INFO] [stderr] 37 | fn validate_directory(config: &mut PreferencesConfig) {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `is_fs_writable` and `save_failures` are never used
[INFO] [stderr]   --> src/preferences/manager/save_handler.rs:61:12
[INFO] [stderr]    |
[INFO] [stderr] 19 | impl SaveHandler {
[INFO] [stderr]    | ---------------- methods in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 61 |     pub fn is_fs_writable(&self) -> bool {
[INFO] [stderr]    |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 66 |     pub fn save_failures(&self) -> u32 {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `playtui` (lib) generated 31 warnings (run `cargo fix --lib -p playtui` to apply 6 suggestions)
[INFO] [stderr] warning: unused import: `super::*`
[INFO] [stderr]    --> src/app/mod.rs:132:9
[INFO] [stderr]     |
[INFO] [stderr] 132 |     use super::*;
[INFO] [stderr]     |         ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `MouseEvent`
[INFO] [stderr]  --> src/components/volume_control/tests.rs:2:46
[INFO] [stderr]   |
[INFO] [stderr] 2 | use crate::events::{Event, Action, KeyEvent, MouseEvent};
[INFO] [stderr]   |                                              ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `ratatui::prelude::*`
[INFO] [stderr]  --> src/components/volume_control/tests.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use ratatui::prelude::*;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `playtui` (lib test) generated 29 warnings (26 duplicates) (run `cargo fix --lib -p playtui --tests` to apply 3 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.08s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/playtui-9e35bead7babb286)
[INFO] [stdout] 
[INFO] [stdout] running 91 tests
[INFO] [stdout] test app::focus::tests::test_frame_specific_events_require_focus ... ok
[INFO] [stdout] test app::focus::tests::test_global_events_always_processed ... ok
[INFO] [stdout] test audio::formats::flac::tests::test_can_decode ... ok
[INFO] [stdout] test audio::formats::flac::tests::test_decode_invalid_extension ... ok
[INFO] [stdout] test app::focus::tests::test_set_focus ... ok
[INFO] [stdout] test audio::formats::flac::tests::test_probe_invalid_extension ... ok
[INFO] [stdout] test audio::formats::mp3::tests::test_can_decode ... ok
[INFO] [stdout] test audio::formats::mp3::tests::test_decode_invalid_extension ... ok
[INFO] [stdout] test audio::formats::mp3::tests::test_probe_invalid_extension ... ok
[INFO] [stdout] test audio::formats::ogg::tests::test_can_decode ... ok
[INFO] [stdout] test audio::formats::ogg::tests::test_decode_invalid_extension ... ok
[INFO] [stdout] test audio::formats::ogg::tests::test_probe_invalid_extension ... ok
[INFO] [stdout] test audio::formats::tests::test_audio_reader_creation ... ok
[INFO] [stdout] test audio::formats::tests::test_decoder_factory ... ok
[INFO] [stdout] test audio::formats::wav::tests::test_can_decode ... ok
[INFO] [stdout] test audio::formats::wav::tests::test_decode_invalid_extension ... ok
[INFO] [stdout] test audio::player::tests::test_basic_state_transitions ... ok
[INFO] [stdout] test audio::player::tests::test_new_playback_engine ... ok
[INFO] [stdout] test audio::stream::tests::test_open_close_stream ... ok
[INFO] [stdout] test audio::stream::tests::test_new_audio_stream ... ok
[INFO] [stdout] test audio::formats::wav::tests::test_probe_invalid_extension ... ok
[INFO] [stdout] test audio::stream::tests::test_write_to_closed_stream ... ok
[INFO] [stdout] test components::controls::tests::test_mouse_events_blocked_when_not_focused ... ok
[INFO] [stdout] test components::controls::tests::test_button_focus_wraps_correctly ... ok
[INFO] [stdout] test components::controls::tests::test_navigation_events_work_regardless_of_focus ... ok
[INFO] [stdout] test components::controls::tests::test_volume_section_navigation ... ok
[INFO] [stdout] test components::tests::events::test_system_events_ignore_focus ... ok
[INFO] [stdout] test components::tests::mock::tests::test_focus_state_changes ... ok
[INFO] [stdout] test components::tests::events::test_navigation_events_require_focus ... ok
[INFO] [stdout] test components::tests::state::test_component_state_clone ... ok
[INFO] [stdout] test components::tests::state::test_component_state_equality ... ok
[INFO] [stdout] test components::tests::state::test_component_state_modification ... ok
[INFO] [stdout] test components::tests::tests::test_setup_test_component ... ok
[INFO] [stdout] test components::tests::theme::tests::test_create_block ... ok
[INFO] [stdout] test components::controls::tests::test_key_events_blocked_when_not_focused ... ok
[INFO] [stdout] test components::tests::theme::tests::test_theme_creation ... ok
[INFO] [stdout] test components::tests::events::test_focused_event_handling ... ok
[INFO] [stdout] test components::tests::events::test_playback_events_ignore_focus ... ok
[INFO] [stdout] test components::tests::mock::tests::test_mock_component_creation ... ok
[INFO] [stdout] test components::track_details::tests::test_track_details_focus ... ok
[INFO] [stdout] test components::track_details::tests::test_track_details_event_handling ... ok
[INFO] [stdout] test components::tests::state::test_component_state_default ... ok
[INFO] [stdout] test components::track_details::tests::test_track_details_metadata_clear ... ignored
[INFO] [stdout] test components::track_details::tests::test_track_details_metadata_display ... ignored
[INFO] [stdout] test components::track_details::tests::test_track_details_partial_metadata ... ignored
[INFO] [stdout] test components::tests::mock::tests::test_mock_component_event_handling ... ok
[INFO] [stdout] test components::track_list::tests::test_mouse_scroll ... ok
[INFO] [stdout] test components::track_list::tests::test_mouse_click ... ok
[INFO] [stdout] test components::track_list::tests::test_track_list_bounds ... ok
[INFO] [stdout] test components::track_details::tests::test_track_details_new ... ok
[INFO] [stdout] test components::track_list::tests::test_track_list_navigation ... ok
[INFO] [stdout] test components::track_list::tests::test_track_list_selection ... ok
[INFO] [stdout] test components::track_list::tests::test_empty_list_navigation ... ok
[INFO] [stdout] test components::track_list::tests::test_unfocused_events ... ok
[INFO] [stdout] test components::volume_control::events::tests::test_mouse_click ... ok
[INFO] [stdout] test components::volume_control::tests::test_default_volume ... ok
[INFO] [stdout] test components::volume_control::tests::test_key_events ... ok
[INFO] [stdout] test components::volume_control::tests::test_unfocused_control ... ok
[INFO] [stdout] test components::volume_control::tests::test_set_volume ... ok
[INFO] [stdout] test components::volume_control::tests::test_volume_limits ... ok
[INFO] [stdout] test components::volume_control::tests::test_volume_up ... ok
[INFO] [stdout] test components::volume_control::tests::test_volume_down ... ok
[INFO] [stdout] test metadata::formats::flac_meta::tests::test_supports_format ... ok
[INFO] [stdout] test metadata::formats::flac_meta::tests::test_parse_flac ... ok
[INFO] [stdout] test components::track_details::tests::test_track_details_render ... ok
[INFO] [stdout] test components::volume_control::events::tests::test_mouse_scroll ... ok
[INFO] [stdout] test components::volume_control::events::tests::test_unfocused_events ... ok
[INFO] [stdout] test metadata::formats::vorbis::tests::test_supports_format ... ok
[INFO] [stdout] test metadata::parser::tests::test_metadata_manager ... ok
[INFO] [stdout] test metadata::formats::id3::tests::test_supports_format ... ok
[INFO] [stdout] test preferences::config::tests::test_custom_theme ... ok
[INFO] [stdout] test preferences::config::tests::test_preferences_serialization ... ok
[INFO] [stdout] test preferences::config::tests::test_volume_bounds ... ok
[INFO] [stdout] test preferences::validation::tests::test_volume_validation ... ok
[INFO] [stdout] test preferences::persistence::tests::test_ensure_preferences_dir ... ok
[INFO] [stdout] test state::validation::tests::test_player_state_validation ... ok
[INFO] [stdout] test metadata::formats::id3::tests::test_parse_mp3 ... ok
[INFO] [stdout] test preferences::persistence::tests::test_preferences_path ... ok
[INFO] [stdout] test state::history::tests::test_history_recording ... ok
[INFO] [stdout] test state::history::tests::test_history_size_limit ... ok
[INFO] [stdout] test state::validation::tests::test_playlist_state_validation ... ok
[INFO] [stdout] test preferences::validation::tests::test_directory_validation ... ok
[INFO] [stdout] test preferences::validation::tests::test_full_validation ... ok
[INFO] [stdout] test preferences::persistence::tests::test_save_and_load ... ok
[INFO] [stdout] test metadata::formats::vorbis::tests::test_parse_ogg ... ok
[INFO] [stdout] test metadata::cache::tests::test_cleanup ... ok
[INFO] [stdout] test preferences::validation::tests::test_theme_validation ... FAILED
[INFO] [stdout] test preferences::manager::tests::test_preferences_manager ... FAILED
[INFO] [stdout] test preferences::manager::tests::test_save_retry_timing ... FAILED
[INFO] [stdout] test preferences::manager::tests::test_unwritable_location_handling ... FAILED
[INFO] [stdout] test metadata::cache::tests::test_cache_operations ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- preferences::validation::tests::test_theme_validation stdout ----
[INFO] [stdout] thread 'preferences::validation::tests::test_theme_validation' panicked at src/preferences/validation.rs:71:51:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x556ff24404da - std::backtrace_rs::backtrace::libunwind::trace::h5a5b8284f2d0c266
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
[INFO] [stdout]    1:     0x556ff24404da - std::backtrace_rs::backtrace::trace_unsynchronized::h76d4f1c9b0b875e3
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x556ff24404da - std::sys::backtrace::_print_fmt::hc4546b8364a537c6
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556ff24404da - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h5b6bd5631a6d1f6b
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556ff2467733 - core::fmt::rt::Argument::fmt::h270f6602a2b96f62
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/fmt/rt.rs:177:76
[INFO] [stdout]    5:     0x556ff2467733 - core::fmt::write::h7550c97b06c86515
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/fmt/mod.rs:1186:21
[INFO] [stdout]    6:     0x556ff243cf83 - std::io::Write::write_fmt::h509ff860e5956e5e
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/io/mod.rs:1839:15
[INFO] [stdout]    7:     0x556ff2440322 - std::sys::backtrace::BacktraceLock::print::h2395ccd2c84ba3aa
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    8:     0x556ff244193a - std::panicking::default_hook::{{closure}}::he19d4c7230e07961
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:268:22
[INFO] [stdout]    9:     0x556ff2441744 - std::panicking::default_hook::hf614597d3c67bbdb
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:292:9
[INFO] [stdout]   10:     0x556ff21df929 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39b51ce4599c23d1
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/alloc/src/boxed.rs:2468:9
[INFO] [stdout]   11:     0x556ff21df929 - test::test_main::{{closure}}::he977ae839a582784
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:133:21
[INFO] [stdout]   12:     0x556ff2441fd8 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h9455091b6b06f9fb
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/alloc/src/boxed.rs:2468:9
[INFO] [stdout]   13:     0x556ff2441fd8 - std::panicking::rust_panic_with_hook::h8942133a8b252070
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:809:13
[INFO] [stdout]   14:     0x556ff2441d9a - std::panicking::begin_panic_handler::{{closure}}::hb5f5963570096b29
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:674:13
[INFO] [stdout]   15:     0x556ff24409b9 - std::sys::backtrace::__rust_end_short_backtrace::h6208cedc1922feda
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/backtrace.rs:170:18
[INFO] [stdout]   16:     0x556ff2441a2c - rust_begin_unwind
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:665:5
[INFO] [stdout]   17:     0x556ff20ea1c0 - core::panicking::panic_fmt::h0c3082644d1bf418
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/panicking.rs:74:14
[INFO] [stdout]   18:     0x556ff20ea646 - core::result::unwrap_failed::hd20b4aa073bda1e2
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/result.rs:1700:5
[INFO] [stdout]   19:     0x556ff218a99f - core::result::Result<T,E>::unwrap::hec0ed9d09cd10fa4
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/result.rs:1104:23
[INFO] [stdout]   20:     0x556ff218a99f - playtui::preferences::validation::tests::test_theme_validation::hfb5bd5dcf2bed13d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/preferences/validation.rs:71:9
[INFO] [stdout]   21:     0x556ff218a857 - playtui::preferences::validation::tests::test_theme_validation::{{closure}}::h1818c61586d3a7a6
[INFO] [stdout]                                at /opt/rustwide/workdir/src/preferences/validation.rs:66:31
[INFO] [stdout]   22:     0x556ff2172856 - core::ops::function::FnOnce::call_once::ha1aed93b9a9b7d3d
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x556ff21e42eb - core::ops::function::FnOnce::call_once::h109cf8051a59b34e
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x556ff21e42eb - test::__rust_begin_short_backtrace::hf4fff89d377446ba
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:621:18
[INFO] [stdout]   25:     0x556ff21e3b27 - test::run_test_in_process::{{closure}}::h0e39181dd7ee5a43
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:644:60
[INFO] [stdout]   26:     0x556ff21e3b27 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hc5a66a30f0bdfd1f
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   27:     0x556ff21e3b27 - std::panicking::try::do_call::h873b7cf639554a5e
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:557:40
[INFO] [stdout]   28:     0x556ff21e3b27 - std::panicking::try::hdb19862fad9c8bd1
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:520:19
[INFO] [stdout]   29:     0x556ff21e3b27 - std::panic::catch_unwind::h281fe732d236d260
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panic.rs:358:14
[INFO] [stdout]   30:     0x556ff21e3b27 - test::run_test_in_process::h949b6df8457ed338
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:644:27
[INFO] [stdout]   31:     0x556ff21e3b27 - test::run_test::{{closure}}::h52c556a6d4740e10
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:565:43
[INFO] [stdout]   32:     0x556ff21a8e04 - test::run_test::{{closure}}::h4237f6381c45ccb9
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:595:41
[INFO] [stdout]   33:     0x556ff21a8e04 - std::sys::backtrace::__rust_begin_short_backtrace::h505c97a579eca628
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/backtrace.rs:154:18
[INFO] [stdout]   34:     0x556ff21ac4ce - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h9e86b2e2bc107ea3
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/thread/mod.rs:538:17
[INFO] [stdout]   35:     0x556ff21ac4ce - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h8b06ddb275ff4a25
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   36:     0x556ff21ac4ce - std::panicking::try::do_call::hb26ecd7cd9a9355d
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:557:40
[INFO] [stdout]   37:     0x556ff21ac4ce - std::panicking::try::h8ddeca9d705f9069
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:520:19
[INFO] [stdout]   38:     0x556ff21ac4ce - std::panic::catch_unwind::h49e1c33078844c46
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panic.rs:358:14
[INFO] [stdout]   39:     0x556ff21ac4ce - std::thread::Builder::spawn_unchecked_::{{closure}}::h6073db6ff56ad35d
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/thread/mod.rs:537:30
[INFO] [stdout]   40:     0x556ff21ac4ce - core::ops::function::FnOnce::call_once{{vtable.shim}}::h2c5a5f3779c774f1
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   41:     0x556ff244600b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hf75717d9f28faebf
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/alloc/src/boxed.rs:2454:9
[INFO] [stdout]   42:     0x556ff244600b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h7bd883a5f3c5f3c1
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/alloc/src/boxed.rs:2454:9
[INFO] [stdout]   43:     0x556ff244600b - std::sys::pal::unix::thread::Thread::new::thread_start::hcc78f3943333fa94
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/pal/unix/thread.rs:105:17
[INFO] [stdout]   44:     0x77ca5a594ac3 - <unknown>
[INFO] [stdout]   45:     0x77ca5a625a04 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- preferences::manager::tests::test_preferences_manager stdout ----
[INFO] [stdout] thread 'preferences::manager::tests::test_preferences_manager' panicked at src/preferences/manager/tests.rs:68:5:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: "save_load_test_theme"
[INFO] [stdout]  right: "manager_test_theme"
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x556ff24404da - std::backtrace_rs::backtrace::libunwind::trace::h5a5b8284f2d0c266
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
[INFO] [stdout]    1:     0x556ff24404da - std::backtrace_rs::backtrace::trace_unsynchronized::h76d4f1c9b0b875e3
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x556ff24404da - std::sys::backtrace::_print_fmt::hc4546b8364a537c6
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556ff24404da - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h5b6bd5631a6d1f6b
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556ff2467733 - core::fmt::rt::Argument::fmt::h270f6602a2b96f62
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/fmt/rt.rs:177:76
[INFO] [stdout]    5:     0x556ff2467733 - core::fmt::write::h7550c97b06c86515
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/fmt/mod.rs:1186:21
[INFO] [stdout]    6:     0x556ff243cf83 - std::io::Write::write_fmt::h509ff860e5956e5e
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/io/mod.rs:1839:15
[INFO] [stdout]    7:     0x556ff2440322 - std::sys::backtrace::BacktraceLock::print::h2395ccd2c84ba3aa
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    8:     0x556ff244193a - std::panicking::default_hook::{{closure}}::he19d4c7230e07961
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:268:22
[INFO] [stdout]    9:     0x556ff2441744 - std::panicking::default_hook::hf614597d3c67bbdb
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:292:9
[INFO] [stdout]   10:     0x556ff21df929 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39b51ce4599c23d1
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/alloc/src/boxed.rs:2468:9
[INFO] [stdout]   11:     0x556ff21df929 - test::test_main::{{closure}}::he977ae839a582784
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:133:21
[INFO] [stdout]   12:     0x556ff2441fd8 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h9455091b6b06f9fb
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/alloc/src/boxed.rs:2468:9
[INFO] [stdout]   13:     0x556ff2441fd8 - std::panicking::rust_panic_with_hook::h8942133a8b252070
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:809:13
[INFO] [stdout]   14:     0x556ff2441d9a - std::panicking::begin_panic_handler::{{closure}}::hb5f5963570096b29
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:674:13
[INFO] [stdout]   15:     0x556ff24409b9 - std::sys::backtrace::__rust_end_short_backtrace::h6208cedc1922feda
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/backtrace.rs:170:18
[INFO] [stdout]   16:     0x556ff2441a2c - rust_begin_unwind
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:665:5
[INFO] [stdout]   17:     0x556ff20ea1c0 - core::panicking::panic_fmt::h0c3082644d1bf418
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/panicking.rs:74:14
[INFO] [stdout]   18:     0x556ff20ea5c4 - core::panicking::assert_failed_inner::h2ddf1fcc067fa858
[INFO] [stdout]   19:     0x556ff2134eda - core::panicking::assert_failed::hf7bacef183d41865
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/panicking.rs:367:5
[INFO] [stdout]   20:     0x556ff218be05 - playtui::preferences::manager::tests::test_preferences_manager::{{closure}}::h9a4feff492518474
[INFO] [stdout]                                at /opt/rustwide/workdir/src/preferences/manager/tests.rs:68:5
[INFO] [stdout]   21:     0x556ff2171c1e - core::ops::function::FnOnce::call_once::h3b8e85e904838abd
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22:     0x556ff21f3b73 - serial_test::serial_code_lock::local_serial_core::h10e2ed389f5b1993
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serial_test-3.2.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   23:     0x556ff218b55b - playtui::preferences::manager::tests::test_preferences_manager::h0194dada6ad6a4c0
[INFO] [stdout]                                at /opt/rustwide/workdir/src/preferences/manager/tests.rs:35:1
[INFO] [stdout]   24:     0x556ff218b4d7 - playtui::preferences::manager::tests::test_preferences_manager::{{closure}}::h9c29e2abf5f8b2fe
[INFO] [stdout]                                at /opt/rustwide/workdir/src/preferences/manager/tests.rs:36:30
[INFO] [stdout]   25:     0x556ff21722f6 - core::ops::function::FnOnce::call_once::h7ef99766dd92c361
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x556ff21e42eb - core::ops::function::FnOnce::call_once::h109cf8051a59b34e
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x556ff21e42eb - test::__rust_begin_short_backtrace::hf4fff89d377446ba
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:621:18
[INFO] [stdout]   28:     0x556ff21e3b27 - test::run_test_in_process::{{closure}}::h0e39181dd7ee5a43
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:644:60
[INFO] [stdout]   29:     0x556ff21e3b27 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hc5a66a30f0bdfd1f
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   30:     0x556ff21e3b27 - std::panicking::try::do_call::h873b7cf639554a5e
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:557:40
[INFO] [stdout]   31:     0x556ff21e3b27 - std::panicking::try::hdb19862fad9c8bd1
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:520:19
[INFO] [stdout]   32:     0x556ff21e3b27 - std::panic::catch_unwind::h281fe732d236d260
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panic.rs:358:14
[INFO] [stdout]   33:     0x556ff21e3b27 - test::run_test_in_process::h949b6df8457ed338
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:644:27
[INFO] [stdout]   34:     0x556ff21e3b27 - test::run_test::{{closure}}::h52c556a6d4740e10
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:565:43
[INFO] [stdout]   35:     0x556ff21a8e04 - test::run_test::{{closure}}::h4237f6381c45ccb9
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:595:41
[INFO] [stdout]   36:     0x556ff21a8e04 - std::sys::backtrace::__rust_begin_short_backtrace::h505c97a579eca628
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/backtrace.rs:154:18
[INFO] [stdout]   37:     0x556ff21ac4ce - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h9e86b2e2bc107ea3
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/thread/mod.rs:538:17
[INFO] [stdout]   38:     0x556ff21ac4ce - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h8b06ddb275ff4a25
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   39:     0x556ff21ac4ce - std::panicking::try::do_call::hb26ecd7cd9a9355d
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:557:40
[INFO] [stdout]   40:     0x556ff21ac4ce - std::panicking::try::h8ddeca9d705f9069
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:520:19
[INFO] [stdout]   41:     0x556ff21ac4ce - std::panic::catch_unwind::h49e1c33078844c46
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panic.rs:358:14
[INFO] [stdout]   42:     0x556ff21ac4ce - std::thread::Builder::spawn_unchecked_::{{closure}}::h6073db6ff56ad35d
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/thread/mod.rs:537:30
[INFO] [stdout]   43:     0x556ff21ac4ce - core::ops::function::FnOnce::call_once{{vtable.shim}}::h2c5a5f3779c774f1
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   44:     0x556ff244600b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hf75717d9f28faebf
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/alloc/src/boxed.rs:2454:9
[INFO] [stdout]   45:     0x556ff244600b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h7bd883a5f3c5f3c1
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/alloc/src/boxed.rs:2454:9
[INFO] [stdout]   46:     0x556ff244600b - std::sys::pal::unix::thread::Thread::new::thread_start::hcc78f3943333fa94
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/pal/unix/thread.rs:105:17
[INFO] [stdout]   47:     0x77ca5a594ac3 - <unknown>
[INFO] [stdout]   48:     0x77ca5a625a04 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- preferences::manager::tests::test_save_retry_timing stdout ----
[INFO] [stdout] thread 'preferences::manager::tests::test_save_retry_timing' panicked at src/preferences/manager/tests.rs:138:5:
[INFO] [stdout] assertion failed: !manager.save_handler.is_fs_writable()
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x556ff24404da - std::backtrace_rs::backtrace::libunwind::trace::h5a5b8284f2d0c266
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
[INFO] [stdout]    1:     0x556ff24404da - std::backtrace_rs::backtrace::trace_unsynchronized::h76d4f1c9b0b875e3
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x556ff24404da - std::sys::backtrace::_print_fmt::hc4546b8364a537c6
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556ff24404da - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h5b6bd5631a6d1f6b
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556ff2467733 - core::fmt::rt::Argument::fmt::h270f6602a2b96f62
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/fmt/rt.rs:177:76
[INFO] [stdout]    5:     0x556ff2467733 - core::fmt::write::h7550c97b06c86515
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/fmt/mod.rs:1186:21
[INFO] [stdout]    6:     0x556ff243cf83 - std::io::Write::write_fmt::h509ff860e5956e5e
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/io/mod.rs:1839:15
[INFO] [stdout]    7:     0x556ff2440322 - std::sys::backtrace::BacktraceLock::print::h2395ccd2c84ba3aa
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    8:     0x556ff244193a - std::panicking::default_hook::{{closure}}::he19d4c7230e07961
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:268:22
[INFO] [stdout]    9:     0x556ff2441744 - std::panicking::default_hook::hf614597d3c67bbdb
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:292:9
[INFO] [stdout]   10:     0x556ff21df929 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39b51ce4599c23d1
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/alloc/src/boxed.rs:2468:9
[INFO] [stdout]   11:     0x556ff21df929 - test::test_main::{{closure}}::he977ae839a582784
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:133:21
[INFO] [stdout]   12:     0x556ff2441fd8 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h9455091b6b06f9fb
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/alloc/src/boxed.rs:2468:9
[INFO] [stdout]   13:     0x556ff2441fd8 - std::panicking::rust_panic_with_hook::h8942133a8b252070
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:809:13
[INFO] [stdout]   14:     0x556ff2441d66 - std::panicking::begin_panic_handler::{{closure}}::hb5f5963570096b29
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:667:13
[INFO] [stdout]   15:     0x556ff24409b9 - std::sys::backtrace::__rust_end_short_backtrace::h6208cedc1922feda
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/backtrace.rs:170:18
[INFO] [stdout]   16:     0x556ff2441a2c - rust_begin_unwind
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:665:5
[INFO] [stdout]   17:     0x556ff20ea1c0 - core::panicking::panic_fmt::h0c3082644d1bf418
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/panicking.rs:74:14
[INFO] [stdout]   18:     0x556ff20ea24c - core::panicking::panic::h957f98c65a3b3074
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/panicking.rs:148:5
[INFO] [stdout]   19:     0x556ff218d03f - playtui::preferences::manager::tests::test_save_retry_timing::{{closure}}::he43cce81687a62fa
[INFO] [stdout]                                at /opt/rustwide/workdir/src/preferences/manager/tests.rs:138:5
[INFO] [stdout]   20:     0x556ff217252e - core::ops::function::FnOnce::call_once::h8ad4ae29f1d934cb
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   21:     0x556ff21f3b73 - serial_test::serial_code_lock::local_serial_core::h10e2ed389f5b1993
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serial_test-3.2.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   22:     0x556ff218cb0b - playtui::preferences::manager::tests::test_save_retry_timing::h001116959809bd0d
[INFO] [stdout]                                at /opt/rustwide/workdir/src/preferences/manager/tests.rs:117:1
[INFO] [stdout]   23:     0x556ff218ca87 - playtui::preferences::manager::tests::test_save_retry_timing::{{closure}}::h50610261d2cec434
[INFO] [stdout]                                at /opt/rustwide/workdir/src/preferences/manager/tests.rs:118:28
[INFO] [stdout]   24:     0x556ff2171a66 - core::ops::function::FnOnce::call_once::h25eb74cc5505bb9f
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x556ff21e42eb - core::ops::function::FnOnce::call_once::h109cf8051a59b34e
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x556ff21e42eb - test::__rust_begin_short_backtrace::hf4fff89d377446ba
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:621:18
[INFO] [stdout]   27:     0x556ff21e3b27 - test::run_test_in_process::{{closure}}::h0e39181dd7ee5a43
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:644:60
[INFO] [stdout]   28:     0x556ff21e3b27 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hc5a66a30f0bdfd1f
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   29:     0x556ff21e3b27 - std::panicking::try::do_call::h873b7cf639554a5e
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:557:40
[INFO] [stdout]   30:     0x556ff21e3b27 - std::panicking::try::hdb19862fad9c8bd1
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:520:19
[INFO] [stdout]   31:     0x556ff21e3b27 - std::panic::catch_unwind::h281fe732d236d260
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panic.rs:358:14
[INFO] [stdout]   32:     0x556ff21e3b27 - test::run_test_in_process::h949b6df8457ed338
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:644:27
[INFO] [stdout]   33:     0x556ff21e3b27 - test::run_test::{{closure}}::h52c556a6d4740e10
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:565:43
[INFO] [stdout]   34:     0x556ff21a8e04 - test::run_test::{{closure}}::h4237f6381c45ccb9
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:595:41
[INFO] [stdout]   35:     0x556ff21a8e04 - std::sys::backtrace::__rust_begin_short_backtrace::h505c97a579eca628
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/backtrace.rs:154:18
[INFO] [stdout]   36:     0x556ff21ac4ce - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h9e86b2e2bc107ea3
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/thread/mod.rs:538:17
[INFO] [stdout]   37:     0x556ff21ac4ce - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h8b06ddb275ff4a25
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   38:     0x556ff21ac4ce - std::panicking::try::do_call::hb26ecd7cd9a9355d
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:557:40
[INFO] [stdout]   39:     0x556ff21ac4ce - std::panicking::try::h8ddeca9d705f9069
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:520:19
[INFO] [stdout]   40:     0x556ff21ac4ce - std::panic::catch_unwind::h49e1c33078844c46
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panic.rs:358:14
[INFO] [stdout]   41:     0x556ff21ac4ce - std::thread::Builder::spawn_unchecked_::{{closure}}::h6073db6ff56ad35d
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/thread/mod.rs:537:30
[INFO] [stdout]   42:     0x556ff21ac4ce - core::ops::function::FnOnce::call_once{{vtable.shim}}::h2c5a5f3779c774f1
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   43:     0x556ff244600b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hf75717d9f28faebf
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/alloc/src/boxed.rs:2454:9
[INFO] [stdout]   44:     0x556ff244600b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h7bd883a5f3c5f3c1
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/alloc/src/boxed.rs:2454:9
[INFO] [stdout]   45:     0x556ff244600b - std::sys::pal::unix::thread::Thread::new::thread_start::hcc78f3943333fa94
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/pal/unix/thread.rs:105:17
[INFO] [stdout]   46:     0x77ca5a594ac3 - <unknown>
[INFO] [stdout]   47:     0x77ca5a625a04 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- preferences::manager::tests::test_unwritable_location_handling stdout ----
[INFO] [stdout] thread 'preferences::manager::tests::test_unwritable_location_handling' panicked at src/preferences/manager/tests.rs:98:5:
[INFO] [stdout] assertion failed: !manager.save_handler.is_fs_writable()
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x556ff24404da - std::backtrace_rs::backtrace::libunwind::trace::h5a5b8284f2d0c266
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
[INFO] [stdout]    1:     0x556ff24404da - std::backtrace_rs::backtrace::trace_unsynchronized::h76d4f1c9b0b875e3
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x556ff24404da - std::sys::backtrace::_print_fmt::hc4546b8364a537c6
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x556ff24404da - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h5b6bd5631a6d1f6b
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x556ff2467733 - core::fmt::rt::Argument::fmt::h270f6602a2b96f62
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/fmt/rt.rs:177:76
[INFO] [stdout]    5:     0x556ff2467733 - core::fmt::write::h7550c97b06c86515
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/fmt/mod.rs:1186:21
[INFO] [stdout]    6:     0x556ff243cf83 - std::io::Write::write_fmt::h509ff860e5956e5e
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/io/mod.rs:1839:15
[INFO] [stdout]    7:     0x556ff2440322 - std::sys::backtrace::BacktraceLock::print::h2395ccd2c84ba3aa
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    8:     0x556ff244193a - std::panicking::default_hook::{{closure}}::he19d4c7230e07961
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:268:22
[INFO] [stdout]    9:     0x556ff2441744 - std::panicking::default_hook::hf614597d3c67bbdb
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:292:9
[INFO] [stdout]   10:     0x556ff21df929 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h39b51ce4599c23d1
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/alloc/src/boxed.rs:2468:9
[INFO] [stdout]   11:     0x556ff21df929 - test::test_main::{{closure}}::he977ae839a582784
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:133:21
[INFO] [stdout]   12:     0x556ff2441fd8 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h9455091b6b06f9fb
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/alloc/src/boxed.rs:2468:9
[INFO] [stdout]   13:     0x556ff2441fd8 - std::panicking::rust_panic_with_hook::h8942133a8b252070
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:809:13
[INFO] [stdout]   14:     0x556ff2441d66 - std::panicking::begin_panic_handler::{{closure}}::hb5f5963570096b29
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:667:13
[INFO] [stdout]   15:     0x556ff24409b9 - std::sys::backtrace::__rust_end_short_backtrace::h6208cedc1922feda
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/backtrace.rs:170:18
[INFO] [stdout]   16:     0x556ff2441a2c - rust_begin_unwind
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:665:5
[INFO] [stdout]   17:     0x556ff20ea1c0 - core::panicking::panic_fmt::h0c3082644d1bf418
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/panicking.rs:74:14
[INFO] [stdout]   18:     0x556ff20ea24c - core::panicking::panic::h957f98c65a3b3074
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/panicking.rs:148:5
[INFO] [stdout]   19:     0x556ff218c424 - playtui::preferences::manager::tests::test_unwritable_location_handling::{{closure}}::he355603b4bfb4480
[INFO] [stdout]                                at /opt/rustwide/workdir/src/preferences/manager/tests.rs:98:5
[INFO] [stdout]   20:     0x556ff217247e - core::ops::function::FnOnce::call_once::h86deae7c219f8fb5
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   21:     0x556ff21f3b73 - serial_test::serial_code_lock::local_serial_core::h10e2ed389f5b1993
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-6f17d22bba15001f/serial_test-3.2.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   22:     0x556ff218c0eb - playtui::preferences::manager::tests::test_unwritable_location_handling::hf24f94d2700aa395
[INFO] [stdout]                                at /opt/rustwide/workdir/src/preferences/manager/tests.rs:77:1
[INFO] [stdout]   23:     0x556ff218c067 - playtui::preferences::manager::tests::test_unwritable_location_handling::{{closure}}::habb97d8f66db0079
[INFO] [stdout]                                at /opt/rustwide/workdir/src/preferences/manager/tests.rs:78:39
[INFO] [stdout]   24:     0x556ff21723c6 - core::ops::function::FnOnce::call_once::h819790b61e66bad3
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x556ff21e42eb - core::ops::function::FnOnce::call_once::h109cf8051a59b34e
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x556ff21e42eb - test::__rust_begin_short_backtrace::hf4fff89d377446ba
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:621:18
[INFO] [stdout]   27:     0x556ff21e3b27 - test::run_test_in_process::{{closure}}::h0e39181dd7ee5a43
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:644:60
[INFO] [stdout]   28:     0x556ff21e3b27 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hc5a66a30f0bdfd1f
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   29:     0x556ff21e3b27 - std::panicking::try::do_call::h873b7cf639554a5e
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:557:40
[INFO] [stdout]   30:     0x556ff21e3b27 - std::panicking::try::hdb19862fad9c8bd1
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:520:19
[INFO] [stdout]   31:     0x556ff21e3b27 - std::panic::catch_unwind::h281fe732d236d260
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panic.rs:358:14
[INFO] [stdout]   32:     0x556ff21e3b27 - test::run_test_in_process::h949b6df8457ed338
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:644:27
[INFO] [stdout]   33:     0x556ff21e3b27 - test::run_test::{{closure}}::h52c556a6d4740e10
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:565:43
[INFO] [stdout]   34:     0x556ff21a8e04 - test::run_test::{{closure}}::h4237f6381c45ccb9
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/test/src/lib.rs:595:41
[INFO] [stdout]   35:     0x556ff21a8e04 - std::sys::backtrace::__rust_begin_short_backtrace::h505c97a579eca628
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/backtrace.rs:154:18
[INFO] [stdout]   36:     0x556ff21ac4ce - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::h9e86b2e2bc107ea3
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/thread/mod.rs:538:17
[INFO] [stdout]   37:     0x556ff21ac4ce - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h8b06ddb275ff4a25
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   38:     0x556ff21ac4ce - std::panicking::try::do_call::hb26ecd7cd9a9355d
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:557:40
[INFO] [stdout]   39:     0x556ff21ac4ce - std::panicking::try::h8ddeca9d705f9069
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panicking.rs:520:19
[INFO] [stdout]   40:     0x556ff21ac4ce - std::panic::catch_unwind::h49e1c33078844c46
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/panic.rs:358:14
[INFO] [stdout]   41:     0x556ff21ac4ce - std::thread::Builder::spawn_unchecked_::{{closure}}::h6073db6ff56ad35d
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/thread/mod.rs:537:30
[INFO] [stdout]   42:     0x556ff21ac4ce - core::ops::function::FnOnce::call_once{{vtable.shim}}::h2c5a5f3779c774f1
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   43:     0x556ff244600b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hf75717d9f28faebf
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/alloc/src/boxed.rs:2454:9
[INFO] [stdout]   44:     0x556ff244600b - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h7bd883a5f3c5f3c1
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/alloc/src/boxed.rs:2454:9
[INFO] [stdout]   45:     0x556ff244600b - std::sys::pal::unix::thread::Thread::new::thread_start::hcc78f3943333fa94
[INFO] [stdout]                                at /rustc/90b35a6239c3d8bdabc530a6a0816f7ff89a0aaf/library/std/src/sys/pal/unix/thread.rs:105:17
[INFO] [stdout]   46:     0x77ca5a594ac3 - <unknown>
[INFO] [stdout]   47:     0x77ca5a625a04 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     preferences::manager::tests::test_preferences_manager
[INFO] [stdout]     preferences::manager::tests::test_save_retry_timing
[INFO] [stdout]     preferences::manager::tests::test_unwritable_location_handling
[INFO] [stdout]     preferences::validation::tests::test_theme_validation
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 84 passed; 4 failed; 3 ignored; 0 measured; 0 filtered out; finished in 0.10s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "742389a584b9f0f2ce2c83f11670efb1ff3c0f2390423786d91744ada8edca82", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "742389a584b9f0f2ce2c83f11670efb1ff3c0f2390423786d91744ada8edca82", kill_on_drop: false }`
[INFO] [stdout] 742389a584b9f0f2ce2c83f11670efb1ff3c0f2390423786d91744ada8edca82
