[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 beta-2024-12-08 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-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/aaronsb/playtui on toolchain beta-2024-12-08
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2024-12-08" "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-tc2/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" "+beta-2024-12-08" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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" "+beta-2024-12-08" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ae8c5a98a738885f5385acb0e173e8f234c242ad2113a4d24f3f4ec723f5e7d2
[INFO] running `Command { std: "docker" "start" "-a" "ae8c5a98a738885f5385acb0e173e8f234c242ad2113a4d24f3f4ec723f5e7d2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ae8c5a98a738885f5385acb0e173e8f234c242ad2113a4d24f3f4ec723f5e7d2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ae8c5a98a738885f5385acb0e173e8f234c242ad2113a4d24f3f4ec723f5e7d2", kill_on_drop: false }`
[INFO] [stdout] ae8c5a98a738885f5385acb0e173e8f234c242ad2113a4d24f3f4ec723f5e7d2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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" "+beta-2024-12-08" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ef2062ab059c7d75cc925067e394acc250e5561b65d4ed7017b420125ee9901d
[INFO] running `Command { std: "docker" "start" "-a" "ef2062ab059c7d75cc925067e394acc250e5561b65d4ed7017b420125ee9901d", kill_on_drop: false }`
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling log v0.4.22
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling bytemuck v1.20.0
[INFO] [stderr]    Compiling libc v0.2.165
[INFO] [stderr]    Compiling lazy_static v1.5.0
[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 parking_lot_core v0.9.10
[INFO] [stderr]    Compiling signal-hook v0.3.17
[INFO] [stderr]    Compiling rustversion v1.0.18
[INFO] [stderr]    Compiling smallvec v1.13.2
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling scopeguard v1.2.0
[INFO] [stderr]    Compiling encoding_rs v0.8.35
[INFO] [stderr]    Compiling equivalent v1.0.1
[INFO] [stderr]    Compiling allocator-api2 v0.2.20
[INFO] [stderr]    Compiling serde v1.0.215
[INFO] [stderr]    Compiling adler2 v2.0.0
[INFO] [stderr]    Compiling bitflags v2.6.0
[INFO] [stderr]    Compiling heck v0.4.1
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]    Compiling foldhash v0.1.3
[INFO] [stderr]    Compiling miniz_oxide v0.8.0
[INFO] [stderr]    Compiling symphonia-core v0.5.4
[INFO] [stderr]    Compiling crc32fast v1.4.2
[INFO] [stderr]    Compiling anyhow v1.0.93
[INFO] [stderr]    Compiling tinyvec_macros v0.1.1
[INFO] [stderr]    Compiling serde_json v1.0.133
[INFO] [stderr]    Compiling either v1.13.0
[INFO] [stderr]    Compiling extended v0.1.0
[INFO] [stderr]    Compiling hashbrown v0.15.2
[INFO] [stderr]    Compiling option-ext v0.2.0
[INFO] [stderr]    Compiling itertools v0.11.0
[INFO] [stderr]    Compiling tinyvec v1.8.0
[INFO] [stderr]    Compiling ogg v0.8.0
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling indoc v2.0.5
[INFO] [stderr]    Compiling lock_api v0.4.12
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling cassowary v0.3.0
[INFO] [stderr]    Compiling itoa v1.0.14
[INFO] [stderr]    Compiling flate2 v1.0.35
[INFO] [stderr]    Compiling lru v0.12.5
[INFO] [stderr]    Compiling ryu v1.0.18
[INFO] [stderr]    Compiling unicode-width v0.1.14
[INFO] [stderr]    Compiling unicode-segmentation v1.12.0
[INFO] [stderr]    Compiling signal-hook-registry v1.4.2
[INFO] [stderr]    Compiling mio v0.8.11
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling symphonia-metadata v0.5.4
[INFO] [stderr]    Compiling syn v2.0.89
[INFO] [stderr]    Compiling symphonia-codec-pcm v0.5.4
[INFO] [stderr]    Compiling symphonia-codec-adpcm v0.5.4
[INFO] [stderr]    Compiling dirs-sys v0.4.1
[INFO] [stderr]    Compiling lewton v0.10.2
[INFO] [stderr]    Compiling id3 v1.15.0
[INFO] [stderr]    Compiling parking_lot v0.12.3
[INFO] [stderr]    Compiling metaflac v0.2.7
[INFO] [stderr]    Compiling signal-hook-mio v0.2.4
[INFO] [stderr]    Compiling crossterm v0.27.0
[INFO] [stderr]    Compiling directories v5.0.1
[INFO] [stderr]    Compiling symphonia-utils-xiph v0.5.4
[INFO] [stderr]    Compiling symphonia-bundle-mp3 v0.5.4
[INFO] [stderr]    Compiling symphonia-format-riff v0.5.4
[INFO] [stderr]    Compiling symphonia-codec-vorbis v0.5.4
[INFO] [stderr]    Compiling symphonia-bundle-flac v0.5.4
[INFO] [stderr]    Compiling symphonia-format-ogg v0.5.4
[INFO] [stderr]    Compiling symphonia-format-mkv v0.5.4
[INFO] [stderr]    Compiling symphonia v0.5.4
[INFO] [stderr]    Compiling serde_derive v1.0.215
[INFO] [stderr]    Compiling strum_macros v0.25.3
[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 23.14s
[INFO] running `Command { std: "docker" "inspect" "ef2062ab059c7d75cc925067e394acc250e5561b65d4ed7017b420125ee9901d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ef2062ab059c7d75cc925067e394acc250e5561b65d4ed7017b420125ee9901d", kill_on_drop: false }`
[INFO] [stdout] ef2062ab059c7d75cc925067e394acc250e5561b65d4ed7017b420125ee9901d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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" "+beta-2024-12-08" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a075810be838af5409b1407bc285a895feb019b1462468d13cf1e7a739aec8d1
[INFO] running `Command { std: "docker" "start" "-a" "a075810be838af5409b1407bc285a895feb019b1462468d13cf1e7a739aec8d1", kill_on_drop: false }`
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling bitflags v2.6.0
[INFO] [stderr]    Compiling slab v0.4.9
[INFO] [stderr]    Compiling futures-sink v0.3.31
[INFO] [stderr]    Compiling futures-core v0.3.31
[INFO] [stderr]    Compiling pin-project-lite v0.2.15
[INFO] [stderr]    Compiling futures-task v0.3.31
[INFO] [stderr]    Compiling syn v2.0.89
[INFO] [stderr]    Compiling futures-io v0.3.31
[INFO] [stderr]    Compiling pin-utils v0.1.0
[INFO] [stderr]    Compiling rustix v0.38.41
[INFO] [stderr]    Compiling once_cell v1.20.2
[INFO] [stderr]    Compiling sdd v3.0.4
[INFO] [stderr]    Compiling linux-raw-sys v0.4.14
[INFO] [stderr]    Compiling fastrand v2.2.0
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling scc v2.2.5
[INFO] [stderr]    Compiling crossterm v0.27.0
[INFO] [stderr]    Compiling id3 v1.15.0
[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 28.77s
[INFO] running `Command { std: "docker" "inspect" "a075810be838af5409b1407bc285a895feb019b1462468d13cf1e7a739aec8d1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a075810be838af5409b1407bc285a895feb019b1462468d13cf1e7a739aec8d1", kill_on_drop: false }`
[INFO] [stdout] a075810be838af5409b1407bc285a895feb019b1462468d13cf1e7a739aec8d1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/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" "+beta-2024-12-08" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] f520c137ab21bbaaef13a481e5c90c94248cbfd20402e765093f95602bda058b
[INFO] running `Command { std: "docker" "start" "-a" "f520c137ab21bbaaef13a481e5c90c94248cbfd20402e765093f95602bda058b", 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.25s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/playtui-90a145b41c6de009)
[INFO] [stdout] running 91 tests
[INFO] [stdout] test app::focus::tests::test_global_events_always_processed ... ok
[INFO] [stdout] test app::focus::tests::test_set_focus ... ok
[INFO] [stdout] test app::focus::tests::test_frame_specific_events_require_focus ... ok
[INFO] [stdout] test audio::formats::flac::tests::test_can_decode ... ok
[INFO] [stdout] test audio::formats::flac::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::tests::test_audio_reader_creation ... ok
[INFO] [stdout] test audio::formats::tests::test_decoder_factory ... ok
[INFO] [stdout] test audio::formats::mp3::tests::test_probe_invalid_extension ... ok
[INFO] [stdout] test audio::formats::wav::tests::test_decode_invalid_extension ... ok
[INFO] [stdout] test audio::formats::wav::tests::test_probe_invalid_extension ... ok
[INFO] [stdout] test audio::stream::tests::test_open_close_stream ... ok
[INFO] [stdout] test audio::stream::tests::test_write_to_closed_stream ... 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_mouse_events_blocked_when_not_focused ... ok
[INFO] [stdout] test audio::formats::mp3::tests::test_decode_invalid_extension ... ok
[INFO] [stdout] test audio::player::tests::test_basic_state_transitions ... ok
[INFO] [stdout] test components::tests::events::test_navigation_events_require_focus ... ok
[INFO] [stdout] test audio::formats::wav::tests::test_can_decode ... ok
[INFO] [stdout] test components::tests::events::test_system_events_ignore_focus ... ok
[INFO] [stdout] test components::tests::mock::tests::test_mock_component_creation ... ok
[INFO] [stdout] test audio::formats::flac::tests::test_decode_invalid_extension ... ok
[INFO] [stdout] test components::tests::events::test_focused_event_handling ... ok
[INFO] [stdout] test components::controls::tests::test_volume_section_navigation ... ok
[INFO] [stdout] test audio::stream::tests::test_new_audio_stream ... ok
[INFO] [stdout] test components::tests::mock::tests::test_focus_state_changes ... ok
[INFO] [stdout] test audio::player::tests::test_new_playback_engine ... ok
[INFO] [stdout] test components::tests::state::test_component_state_clone ... ok
[INFO] [stdout] test components::tests::mock::tests::test_mock_component_event_handling ... ok
[INFO] [stdout] test components::tests::state::test_component_state_default ... 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::tests::theme::tests::test_theme_creation ... ok
[INFO] [stdout] test components::track_details::tests::test_track_details_event_handling ... ok
[INFO] [stdout] test audio::formats::ogg::tests::test_probe_invalid_extension ... ok
[INFO] [stdout] test components::track_details::tests::test_track_details_focus ... 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::controls::tests::test_key_events_blocked_when_not_focused ... ok
[INFO] [stdout] test components::track_details::tests::test_track_details_partial_metadata ... ignored
[INFO] [stdout] test components::track_details::tests::test_track_details_new ... 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::events::tests::test_mouse_scroll ... ok
[INFO] [stdout] test components::track_list::tests::test_track_list_selection ... ok
[INFO] [stdout] test components::track_list::tests::test_track_list_navigation ... ok
[INFO] [stdout] test components::track_list::tests::test_mouse_click ... ok
[INFO] [stdout] test components::track_list::tests::test_mouse_scroll ... ok
[INFO] [stdout] test components::track_list::tests::test_track_list_bounds ... ok
[INFO] [stdout] test components::volume_control::events::tests::test_unfocused_events ... ok
[INFO] [stdout] test components::volume_control::tests::test_key_events ... ok
[INFO] [stdout] test audio::formats::mp3::tests::test_can_decode ... ok
[INFO] [stdout] test components::volume_control::tests::test_unfocused_control ... ok
[INFO] [stdout] test components::tests::events::test_playback_events_ignore_focus ... ok
[INFO] [stdout] test components::volume_control::tests::test_default_volume ... ok
[INFO] [stdout] test components::volume_control::tests::test_volume_up ... 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 metadata::formats::flac_meta::tests::test_supports_format ... ok
[INFO] [stdout] test components::track_details::tests::test_track_details_render ... ok
[INFO] [stdout] test metadata::formats::vorbis::tests::test_supports_format ... ok
[INFO] [stdout] test components::volume_control::tests::test_volume_down ... ok
[INFO] [stdout] test preferences::config::tests::test_preferences_serialization ... 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_volume_bounds ... ok
[INFO] [stdout] test metadata::formats::id3::tests::test_parse_mp3 ... ok
[INFO] [stdout] test metadata::formats::flac_meta::tests::test_parse_flac ... ok
[INFO] [stdout] test metadata::parser::tests::test_metadata_manager ... ok
[INFO] [stdout] test preferences::persistence::tests::test_ensure_preferences_dir ... ok
[INFO] [stdout] test preferences::manager::tests::test_preferences_manager ... ok
[INFO] [stdout] test preferences::validation::tests::test_directory_validation ... ok
[INFO] [stdout] test preferences::persistence::tests::test_save_and_load ... ok
[INFO] [stdout] test preferences::validation::tests::test_full_validation ... ok
[INFO] [stdout] test state::history::tests::test_history_recording ... ok
[INFO] [stdout] test preferences::persistence::tests::test_preferences_path ... ok
[INFO] [stdout] test preferences::validation::tests::test_volume_validation ... ok
[INFO] [stdout] test state::history::tests::test_history_size_limit ... ok
[INFO] [stdout] test state::validation::tests::test_player_state_validation ... ok
[INFO] [stdout] test state::validation::tests::test_playlist_state_validation ... ok
[INFO] [stdout] test metadata::cache::tests::test_cleanup ... ok
[INFO] [stdout] test metadata::formats::vorbis::tests::test_parse_ogg ... ok
[INFO] [stdout] test preferences::validation::tests::test_theme_validation ... FAILED
[INFO] [stdout] test preferences::manager::tests::test_unwritable_location_handling ... FAILED
[INFO] [stdout] test preferences::manager::tests::test_save_retry_timing ... 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:     0x5a61fbb58b7a - std::backtrace_rs::backtrace::libunwind::trace::h8810477743020387
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
[INFO] [stdout]    1:     0x5a61fbb58b7a - std::backtrace_rs::backtrace::trace_unsynchronized::h3aa55355dd6c54a6
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x5a61fbb58b7a - std::sys::backtrace::_print_fmt::h8588b0f62410823f
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x5a61fbb58b7a - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h98c26ac25ffe89bb
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5a61fbb80563 - core::fmt::rt::Argument::fmt::hf95377f4aebd453b
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/fmt/rt.rs:177:76
[INFO] [stdout]    5:     0x5a61fbb80563 - core::fmt::write::h0dd5f6e2238c7982
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/fmt/mod.rs:1189:21
[INFO] [stdout]    6:     0x5a61fbb555f3 - std::io::Write::write_fmt::h03bb0ca26e6faf8c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/io/mod.rs:1884:15
[INFO] [stdout]    7:     0x5a61fbb589c2 - std::sys::backtrace::BacktraceLock::print::h5c19c1c038ee186d
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    8:     0x5a61fbb59ffd - std::panicking::default_hook::{{closure}}::h77172f079a1fcb13
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:268:22
[INFO] [stdout]    9:     0x5a61fbb59e07 - std::panicking::default_hook::he5f8e3b203ccddba
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:292:9
[INFO] [stdout]   10:     0x5a61fb8eb6a7 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h7a3c7b4a1ae77f2f
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1986:9
[INFO] [stdout]   11:     0x5a61fb8eb6a7 - test::test_main::{{closure}}::hf0d3b69ae9b353d1
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:134:21
[INFO] [stdout]   12:     0x5a61fbb5a6a8 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h6332e82e7b189abd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1986:9
[INFO] [stdout]   13:     0x5a61fbb5a6a8 - std::panicking::rust_panic_with_hook::h53863d4e9018df39
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:809:13
[INFO] [stdout]   14:     0x5a61fbb5a46a - std::panicking::begin_panic_handler::{{closure}}::h67280e6fa0757873
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:674:13
[INFO] [stdout]   15:     0x5a61fbb59059 - std::sys::backtrace::__rust_end_short_backtrace::h1dac3f54d6fbbeb2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:170:18
[INFO] [stdout]   16:     0x5a61fbb5a0fc - rust_begin_unwind
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:665:5
[INFO] [stdout]   17:     0x5a61fb7f3210 - core::panicking::panic_fmt::h6792bd1b2bf01041
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panicking.rs:76:14
[INFO] [stdout]   18:     0x5a61fb7f3696 - core::result::unwrap_failed::h05e0602ed34287c5
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/result.rs:1699:5
[INFO] [stdout]   19:     0x5a61fb89b92f - core::result::Result<T,E>::unwrap::h4ffc95a8e139a6ac
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/result.rs:1104:23
[INFO] [stdout]   20:     0x5a61fb89b92f - playtui::preferences::validation::tests::test_theme_validation::hade8e2b62ceb142a
[INFO] [stdout]                                at /opt/rustwide/workdir/src/preferences/validation.rs:71:9
[INFO] [stdout]   21:     0x5a61fb89b7e7 - playtui::preferences::validation::tests::test_theme_validation::{{closure}}::ha9991fd026bbe2ff
[INFO] [stdout]                                at /opt/rustwide/workdir/src/preferences/validation.rs:66:31
[INFO] [stdout]   22:     0x5a61fb835dd6 - core::ops::function::FnOnce::call_once::h7ddc8860c48dca9c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x5a61fb8f01cb - core::ops::function::FnOnce::call_once::h871bf86719ec9aa4
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x5a61fb8f01cb - test::__rust_begin_short_backtrace::h2167df1e2b7d76fd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:632:18
[INFO] [stdout]   25:     0x5a61fb8efbb8 - test::run_test_in_process::{{closure}}::h15d92f75a3adfb79
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:655:60
[INFO] [stdout]   26:     0x5a61fb8efbb8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hb6c8955835a8dbbb
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   27:     0x5a61fb8efbb8 - std::panicking::try::do_call::hc79d0fc888a0bd30
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:557:40
[INFO] [stdout]   28:     0x5a61fb8efbb8 - std::panicking::try::hb8a7878e3a8589d6
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:520:19
[INFO] [stdout]   29:     0x5a61fb8efbb8 - std::panic::catch_unwind::hb8e4600ff0ff5cfa
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panic.rs:358:14
[INFO] [stdout]   30:     0x5a61fb8efbb8 - test::run_test_in_process::hc2900b0b18688dd6
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:655:27
[INFO] [stdout]   31:     0x5a61fb8efbb8 - test::run_test::{{closure}}::hac2a9cb07be3d48d
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:576:43
[INFO] [stdout]   32:     0x5a61fb8b365a - test::run_test::{{closure}}::h4a5b729e66a38cd8
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:606:41
[INFO] [stdout]   33:     0x5a61fb8b365a - std::sys::backtrace::__rust_begin_short_backtrace::h0496fb742492f573
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:154:18
[INFO] [stdout]   34:     0x5a61fb8b6fd4 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbb6d257c550a54bd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/thread/mod.rs:561:17
[INFO] [stdout]   35:     0x5a61fb8b6fd4 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h46696fe4a6832328
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   36:     0x5a61fb8b6fd4 - std::panicking::try::do_call::h2625a51b667bfb64
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:557:40
[INFO] [stdout]   37:     0x5a61fb8b6fd4 - std::panicking::try::hb956a59a1973aa4c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:520:19
[INFO] [stdout]   38:     0x5a61fb8b6fd4 - std::panic::catch_unwind::h64f3b9d1067ef6a0
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panic.rs:358:14
[INFO] [stdout]   39:     0x5a61fb8b6fd4 - std::thread::Builder::spawn_unchecked_::{{closure}}::h42b2841295b6c0b2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/thread/mod.rs:559:30
[INFO] [stdout]   40:     0x5a61fb8b6fd4 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6127de71b8124639
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   41:     0x5a61fbb5e8eb - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h42f0ba71002a1b2c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1972:9
[INFO] [stdout]   42:     0x5a61fbb5e8eb - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::had9e47d7a3dcecb8
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1972:9
[INFO] [stdout]   43:     0x5a61fbb5e8eb - std::sys::pal::unix::thread::Thread::new::thread_start::h48cf765408f6f5f2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/pal/unix/thread.rs:105:17
[INFO] [stdout]   44:     0x76a218be4ac3 - <unknown>
[INFO] [stdout]   45:     0x76a218c75a04 - clone
[INFO] [stdout]   46:                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:     0x5a61fbb58b7a - std::backtrace_rs::backtrace::libunwind::trace::h8810477743020387
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
[INFO] [stdout]    1:     0x5a61fbb58b7a - std::backtrace_rs::backtrace::trace_unsynchronized::h3aa55355dd6c54a6
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x5a61fbb58b7a - std::sys::backtrace::_print_fmt::h8588b0f62410823f
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x5a61fbb58b7a - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h98c26ac25ffe89bb
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5a61fbb80563 - core::fmt::rt::Argument::fmt::hf95377f4aebd453b
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/fmt/rt.rs:177:76
[INFO] [stdout]    5:     0x5a61fbb80563 - core::fmt::write::h0dd5f6e2238c7982
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/fmt/mod.rs:1189:21
[INFO] [stdout]    6:     0x5a61fbb555f3 - std::io::Write::write_fmt::h03bb0ca26e6faf8c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/io/mod.rs:1884:15
[INFO] [stdout]    7:     0x5a61fbb589c2 - std::sys::backtrace::BacktraceLock::print::h5c19c1c038ee186d
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    8:     0x5a61fbb59ffd - std::panicking::default_hook::{{closure}}::h77172f079a1fcb13
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:268:22
[INFO] [stdout]    9:     0x5a61fbb59e07 - std::panicking::default_hook::he5f8e3b203ccddba
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:292:9
[INFO] [stdout]   10:     0x5a61fb8eb6a7 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h7a3c7b4a1ae77f2f
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1986:9
[INFO] [stdout]   11:     0x5a61fb8eb6a7 - test::test_main::{{closure}}::hf0d3b69ae9b353d1
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:134:21
[INFO] [stdout]   12:     0x5a61fbb5a6a8 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h6332e82e7b189abd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1986:9
[INFO] [stdout]   13:     0x5a61fbb5a6a8 - std::panicking::rust_panic_with_hook::h53863d4e9018df39
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:809:13
[INFO] [stdout]   14:     0x5a61fbb5a436 - std::panicking::begin_panic_handler::{{closure}}::h67280e6fa0757873
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:667:13
[INFO] [stdout]   15:     0x5a61fbb59059 - std::sys::backtrace::__rust_end_short_backtrace::h1dac3f54d6fbbeb2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:170:18
[INFO] [stdout]   16:     0x5a61fbb5a0fc - rust_begin_unwind
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:665:5
[INFO] [stdout]   17:     0x5a61fb7f3210 - core::panicking::panic_fmt::h6792bd1b2bf01041
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panicking.rs:76:14
[INFO] [stdout]   18:     0x5a61fb7f329c - core::panicking::panic::hbb5c236a846c507c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panicking.rs:148:5
[INFO] [stdout]   19:     0x5a61fb89d3b4 - playtui::preferences::manager::tests::test_unwritable_location_handling::{{closure}}::hc7b3a25260b862ac
[INFO] [stdout]                                at /opt/rustwide/workdir/src/preferences/manager/tests.rs:98:5
[INFO] [stdout]   20:     0x5a61fb83543e - core::ops::function::FnOnce::call_once::h13dc1901aa88bd4e
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   21:     0x5a61fb904223 - serial_test::serial_code_lock::local_serial_core::h4bddd99d4b10f660
[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:     0x5a61fb89d07b - playtui::preferences::manager::tests::test_unwritable_location_handling::h74848bca26df107b
[INFO] [stdout]                                at /opt/rustwide/workdir/src/preferences/manager/tests.rs:77:1
[INFO] [stdout]   23:     0x5a61fb89cff7 - playtui::preferences::manager::tests::test_unwritable_location_handling::{{closure}}::h3ca1cef7a0bef85a
[INFO] [stdout]                                at /opt/rustwide/workdir/src/preferences/manager/tests.rs:78:39
[INFO] [stdout]   24:     0x5a61fb836296 - core::ops::function::FnOnce::call_once::h974c03000b9062b9
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5a61fb8f01cb - core::ops::function::FnOnce::call_once::h871bf86719ec9aa4
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5a61fb8f01cb - test::__rust_begin_short_backtrace::h2167df1e2b7d76fd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:632:18
[INFO] [stdout]   27:     0x5a61fb8efbb8 - test::run_test_in_process::{{closure}}::h15d92f75a3adfb79
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:655:60
[INFO] [stdout]   28:     0x5a61fb8efbb8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hb6c8955835a8dbbb
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   29:     0x5a61fb8efbb8 - std::panicking::try::do_call::hc79d0fc888a0bd30
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:557:40
[INFO] [stdout]   30:     0x5a61fb8efbb8 - std::panicking::try::hb8a7878e3a8589d6
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:520:19
[INFO] [stdout]   31:     0x5a61fb8efbb8 - std::panic::catch_unwind::hb8e4600ff0ff5cfa
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panic.rs:358:14
[INFO] [stdout]   32:     0x5a61fb8efbb8 - test::run_test_in_process::hc2900b0b18688dd6
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:655:27
[INFO] [stdout]   33:     0x5a61fb8efbb8 - test::run_test::{{closure}}::hac2a9cb07be3d48d
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:576:43
[INFO] [stdout]   34:     0x5a61fb8b365a - test::run_test::{{closure}}::h4a5b729e66a38cd8
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:606:41
[INFO] [stdout]   35:     0x5a61fb8b365a - std::sys::backtrace::__rust_begin_short_backtrace::h0496fb742492f573
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:154:18
[INFO] [stdout]   36:     0x5a61fb8b6fd4 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbb6d257c550a54bd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/thread/mod.rs:561:17
[INFO] [stdout]   37:     0x5a61fb8b6fd4 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h46696fe4a6832328
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   38:     0x5a61fb8b6fd4 - std::panicking::try::do_call::h2625a51b667bfb64
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:557:40
[INFO] [stdout]   39:     0x5a61fb8b6fd4 - std::panicking::try::hb956a59a1973aa4c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:520:19
[INFO] [stdout]   40:     0x5a61fb8b6fd4 - std::panic::catch_unwind::h64f3b9d1067ef6a0
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panic.rs:358:14
[INFO] [stdout]   41:     0x5a61fb8b6fd4 - std::thread::Builder::spawn_unchecked_::{{closure}}::h42b2841295b6c0b2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/thread/mod.rs:559:30
[INFO] [stdout]   42:     0x5a61fb8b6fd4 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6127de71b8124639
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   43:     0x5a61fbb5e8eb - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h42f0ba71002a1b2c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1972:9
[INFO] [stdout]   44:     0x5a61fbb5e8eb - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::had9e47d7a3dcecb8
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1972:9
[INFO] [stdout]   45:     0x5a61fbb5e8eb - std::sys::pal::unix::thread::Thread::new::thread_start::h48cf765408f6f5f2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/pal/unix/thread.rs:105:17
[INFO] [stdout]   46:     0x76a218be4ac3 - <unknown>
[INFO] [stdout]   47:     0x76a218c75a04 - clone
[INFO] [stdout]   48:                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:     0x5a61fbb58b7a - std::backtrace_rs::backtrace::libunwind::trace::h8810477743020387
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5
[INFO] [stdout]    1:     0x5a61fbb58b7a - std::backtrace_rs::backtrace::trace_unsynchronized::h3aa55355dd6c54a6
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5
[INFO] [stdout]    2:     0x5a61fbb58b7a - std::sys::backtrace::_print_fmt::h8588b0f62410823f
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:66:9
[INFO] [stdout]    3:     0x5a61fbb58b7a - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h98c26ac25ffe89bb
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:39:26
[INFO] [stdout]    4:     0x5a61fbb80563 - core::fmt::rt::Argument::fmt::hf95377f4aebd453b
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/fmt/rt.rs:177:76
[INFO] [stdout]    5:     0x5a61fbb80563 - core::fmt::write::h0dd5f6e2238c7982
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/fmt/mod.rs:1189:21
[INFO] [stdout]    6:     0x5a61fbb555f3 - std::io::Write::write_fmt::h03bb0ca26e6faf8c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/io/mod.rs:1884:15
[INFO] [stdout]    7:     0x5a61fbb589c2 - std::sys::backtrace::BacktraceLock::print::h5c19c1c038ee186d
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:42:9
[INFO] [stdout]    8:     0x5a61fbb59ffd - std::panicking::default_hook::{{closure}}::h77172f079a1fcb13
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:268:22
[INFO] [stdout]    9:     0x5a61fbb59e07 - std::panicking::default_hook::he5f8e3b203ccddba
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:292:9
[INFO] [stdout]   10:     0x5a61fb8eb6a7 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h7a3c7b4a1ae77f2f
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1986:9
[INFO] [stdout]   11:     0x5a61fb8eb6a7 - test::test_main::{{closure}}::hf0d3b69ae9b353d1
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:134:21
[INFO] [stdout]   12:     0x5a61fbb5a6a8 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h6332e82e7b189abd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1986:9
[INFO] [stdout]   13:     0x5a61fbb5a6a8 - std::panicking::rust_panic_with_hook::h53863d4e9018df39
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:809:13
[INFO] [stdout]   14:     0x5a61fbb5a436 - std::panicking::begin_panic_handler::{{closure}}::h67280e6fa0757873
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:667:13
[INFO] [stdout]   15:     0x5a61fbb59059 - std::sys::backtrace::__rust_end_short_backtrace::h1dac3f54d6fbbeb2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:170:18
[INFO] [stdout]   16:     0x5a61fbb5a0fc - rust_begin_unwind
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:665:5
[INFO] [stdout]   17:     0x5a61fb7f3210 - core::panicking::panic_fmt::h6792bd1b2bf01041
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panicking.rs:76:14
[INFO] [stdout]   18:     0x5a61fb7f329c - core::panicking::panic::hbb5c236a846c507c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panicking.rs:148:5
[INFO] [stdout]   19:     0x5a61fb89dfcf - playtui::preferences::manager::tests::test_save_retry_timing::{{closure}}::hc2e4d4a9d17f0795
[INFO] [stdout]                                at /opt/rustwide/workdir/src/preferences/manager/tests.rs:138:5
[INFO] [stdout]   20:     0x5a61fb83625e - core::ops::function::FnOnce::call_once::h96a9bf9ced75d51b
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   21:     0x5a61fb904223 - serial_test::serial_code_lock::local_serial_core::h4bddd99d4b10f660
[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:     0x5a61fb89da9b - playtui::preferences::manager::tests::test_save_retry_timing::ha7b52e35dd3050da
[INFO] [stdout]                                at /opt/rustwide/workdir/src/preferences/manager/tests.rs:117:1
[INFO] [stdout]   23:     0x5a61fb89da17 - playtui::preferences::manager::tests::test_save_retry_timing::{{closure}}::h9fb22f4821716c11
[INFO] [stdout]                                at /opt/rustwide/workdir/src/preferences/manager/tests.rs:118:28
[INFO] [stdout]   24:     0x5a61fb8369c6 - core::ops::function::FnOnce::call_once::hce88305dc26ceb43
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5a61fb8f01cb - core::ops::function::FnOnce::call_once::h871bf86719ec9aa4
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5a61fb8f01cb - test::__rust_begin_short_backtrace::h2167df1e2b7d76fd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:632:18
[INFO] [stdout]   27:     0x5a61fb8efbb8 - test::run_test_in_process::{{closure}}::h15d92f75a3adfb79
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:655:60
[INFO] [stdout]   28:     0x5a61fb8efbb8 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hb6c8955835a8dbbb
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   29:     0x5a61fb8efbb8 - std::panicking::try::do_call::hc79d0fc888a0bd30
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:557:40
[INFO] [stdout]   30:     0x5a61fb8efbb8 - std::panicking::try::hb8a7878e3a8589d6
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:520:19
[INFO] [stdout]   31:     0x5a61fb8efbb8 - std::panic::catch_unwind::hb8e4600ff0ff5cfa
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panic.rs:358:14
[INFO] [stdout]   32:     0x5a61fb8efbb8 - test::run_test_in_process::hc2900b0b18688dd6
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:655:27
[INFO] [stdout]   33:     0x5a61fb8efbb8 - test::run_test::{{closure}}::hac2a9cb07be3d48d
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:576:43
[INFO] [stdout]   34:     0x5a61fb8b365a - test::run_test::{{closure}}::h4a5b729e66a38cd8
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/test/src/lib.rs:606:41
[INFO] [stdout]   35:     0x5a61fb8b365a - std::sys::backtrace::__rust_begin_short_backtrace::h0496fb742492f573
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/backtrace.rs:154:18
[INFO] [stdout]   36:     0x5a61fb8b6fd4 - std::thread::Builder::spawn_unchecked_::{{closure}}::{{closure}}::hbb6d257c550a54bd
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/thread/mod.rs:561:17
[INFO] [stdout]   37:     0x5a61fb8b6fd4 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h46696fe4a6832328
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/panic/unwind_safe.rs:272:9
[INFO] [stdout]   38:     0x5a61fb8b6fd4 - std::panicking::try::do_call::h2625a51b667bfb64
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:557:40
[INFO] [stdout]   39:     0x5a61fb8b6fd4 - std::panicking::try::hb956a59a1973aa4c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panicking.rs:520:19
[INFO] [stdout]   40:     0x5a61fb8b6fd4 - std::panic::catch_unwind::h64f3b9d1067ef6a0
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/panic.rs:358:14
[INFO] [stdout]   41:     0x5a61fb8b6fd4 - std::thread::Builder::spawn_unchecked_::{{closure}}::h42b2841295b6c0b2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/thread/mod.rs:559:30
[INFO] [stdout]   42:     0x5a61fb8b6fd4 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h6127de71b8124639
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   43:     0x5a61fbb5e8eb - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h42f0ba71002a1b2c
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1972:9
[INFO] [stdout]   44:     0x5a61fbb5e8eb - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::had9e47d7a3dcecb8
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/alloc/src/boxed.rs:1972:9
[INFO] [stdout]   45:     0x5a61fbb5e8eb - std::sys::pal::unix::thread::Thread::new::thread_start::h48cf765408f6f5f2
[INFO] [stdout]                                at /rustc/202008a1b8de96d2e5b6bc02d379db03a877d34d/library/std/src/sys/pal/unix/thread.rs:105:17
[INFO] [stdout]   46:     0x76a218be4ac3 - <unknown>
[INFO] [stdout]   47:     0x76a218c75a04 - clone
[INFO] [stdout]   48:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[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. 85 passed; 3 failed; 3 ignored; 0 measured; 0 filtered out; finished in 0.13s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "f520c137ab21bbaaef13a481e5c90c94248cbfd20402e765093f95602bda058b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f520c137ab21bbaaef13a481e5c90c94248cbfd20402e765093f95602bda058b", kill_on_drop: false }`
[INFO] [stdout] f520c137ab21bbaaef13a481e5c90c94248cbfd20402e765093f95602bda058b
