[INFO] cloning repository https://github.com/ruuda/mindec [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ruuda/mindec" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fruuda%2Fmindec", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fruuda%2Fmindec'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 113aadb7a5a9838976fd99af8d8c45fd0562f424 [INFO] testing ruuda/mindec against try#613d1972a772987ed4ee06faccbab0e2fc839871+rustflags=-Copt-level=3 for pr-107051 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fruuda%2Fmindec" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/ruuda/mindec on toolchain 613d1972a772987ed4ee06faccbab0e2fc839871 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+613d1972a772987ed4ee06faccbab0e2fc839871" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] removed /workspace/builds/worker-4-tc2/source/rust-toolchain [INFO] started tweaking git repo https://github.com/ruuda/mindec [INFO] finished tweaking git repo https://github.com/ruuda/mindec [INFO] tweaked toml for git repo https://github.com/ruuda/mindec written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/ruuda/mindec 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" "+613d1972a772987ed4ee06faccbab0e2fc839871" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:7c93e6f9a94679f34221d1005849d4c83862f85b14a264fa0883942f4d043a66" "/opt/rustwide/cargo-home/bin/cargo" "+613d1972a772987ed4ee06faccbab0e2fc839871" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d32df9dd7e938b5d1b08f7d24345fc7dcc2ef3ecd0d8c8b9c5c142384948aa67 [INFO] running `Command { std: "docker" "start" "-a" "d32df9dd7e938b5d1b08f7d24345fc7dcc2ef3ecd0d8c8b9c5c142384948aa67", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d32df9dd7e938b5d1b08f7d24345fc7dcc2ef3ecd0d8c8b9c5c142384948aa67", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d32df9dd7e938b5d1b08f7d24345fc7dcc2ef3ecd0d8c8b9c5c142384948aa67", kill_on_drop: false }` [INFO] [stdout] d32df9dd7e938b5d1b08f7d24345fc7dcc2ef3ecd0d8c8b9c5c142384948aa67 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=forbid -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7c93e6f9a94679f34221d1005849d4c83862f85b14a264fa0883942f4d043a66" "/opt/rustwide/cargo-home/bin/cargo" "+613d1972a772987ed4ee06faccbab0e2fc839871" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e360a77fab1bd4aea7b5467bd0fb8d2f2275d65111357d60c5ceab979524d262 [INFO] running `Command { std: "docker" "start" "-a" "e360a77fab1bd4aea7b5467bd0fb8d2f2275d65111357d60c5ceab979524d262", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling libc v0.2.126 [INFO] [stderr] Compiling autocfg v1.0.0 [INFO] [stderr] Compiling pkg-config v0.3.18 [INFO] [stderr] Compiling cc v1.0.58 [INFO] [stderr] Compiling matches v0.1.8 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling tinyvec v0.3.3 [INFO] [stderr] Compiling itoa v1.0.2 [INFO] [stderr] Compiling log v0.4.17 [INFO] [stderr] Compiling serde v1.0.137 [INFO] [stderr] Compiling percent-encoding v2.1.0 [INFO] [stderr] Compiling num_threads v0.1.6 [INFO] [stderr] Compiling serde_json v1.0.81 [INFO] [stderr] Compiling time-macros v0.2.4 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling ryu v1.0.10 [INFO] [stderr] Compiling unicode-bidi v0.3.4 [INFO] [stderr] Compiling ascii v1.0.0 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Compiling chunked_transfer v1.2.0 [INFO] [stderr] Compiling walkdir v2.3.2 [INFO] [stderr] Compiling bs1770 v1.0.0 [INFO] [stderr] Compiling crossbeam v0.3.2 [INFO] [stderr] Compiling unicode-normalization v0.1.13 [INFO] [stderr] Compiling claxon v0.4.3 (https://github.com/ruuda/claxon?rev=1f868774a250f5937ae70c868d77d1b1479f1831#1f868774) [INFO] [stderr] Compiling num-traits v0.2.12 [INFO] [stderr] Compiling memoffset v0.6.5 [INFO] [stderr] Compiling num-integer v0.1.43 [INFO] [stderr] Compiling idna v0.2.0 [INFO] [stderr] Compiling alsa-sys v0.3.1 [INFO] [stderr] Compiling url v2.1.1 [INFO] [stderr] Compiling nix v0.23.1 [INFO] [stderr] Compiling time v0.1.43 [INFO] [stderr] Compiling wait-timeout v0.2.0 [INFO] [stderr] Compiling num_cpus v1.13.0 [INFO] [stderr] Compiling time v0.3.9 [INFO] [stderr] Compiling chrono v0.4.19 [INFO] [stderr] Compiling tiny_http v0.11.0 [INFO] [stderr] Compiling sqlite3-src v0.3.0 [INFO] [stderr] Compiling sqlite3-sys v0.13.0 [INFO] [stderr] Compiling sqlite v0.26.0 [INFO] [stderr] Compiling alsa v0.6.0 [INFO] [stderr] Compiling musium v0.0.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: field `value_slices` is never read [INFO] [stdout] --> src/search.rs:86:5 [INFO] [stdout] | [INFO] [stdout] 85 | struct Union<'a, I: 'a + WordIndex> { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 86 | value_slices: &'a [Values], [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `len` is never used [INFO] [stdout] --> src/search.rs:106:12 [INFO] [stdout] | [INFO] [stdout] 106 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/thumb_gen.rs:254:25 [INFO] [stdout] | [INFO] [stdout] 254 | for task in GenThumb::new(thumb_dir, track.album_id, fname.as_ref(), mtime)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 254 | while let Some(task) = GenThumb::new(thumb_dir, track.album_id, fname.as_ref(), mtime)? { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 254 | if let Some(task) = GenThumb::new(thumb_dir, track.album_id, fname.as_ref(), mtime)? { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1m 02s [INFO] running `Command { std: "docker" "inspect" "e360a77fab1bd4aea7b5467bd0fb8d2f2275d65111357d60c5ceab979524d262", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e360a77fab1bd4aea7b5467bd0fb8d2f2275d65111357d60c5ceab979524d262", kill_on_drop: false }` [INFO] [stdout] e360a77fab1bd4aea7b5467bd0fb8d2f2275d65111357d60c5ceab979524d262 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=forbid -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7c93e6f9a94679f34221d1005849d4c83862f85b14a264fa0883942f4d043a66" "/opt/rustwide/cargo-home/bin/cargo" "+613d1972a772987ed4ee06faccbab0e2fc839871" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 77d60d649943960b8e155d7d755d5a29c571f8eed8864fe6165c580d13a75e01 [INFO] running `Command { std: "docker" "start" "-a" "77d60d649943960b8e155d7d755d5a29c571f8eed8864fe6165c580d13a75e01", kill_on_drop: false }` [INFO] [stderr] Compiling matches v0.1.8 [INFO] [stderr] Compiling tinyvec v0.3.3 [INFO] [stderr] Compiling itoa v1.0.2 [INFO] [stderr] Compiling percent-encoding v2.1.0 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling num_threads v0.1.6 [INFO] [stderr] Compiling chunked_transfer v1.2.0 [INFO] [stderr] Compiling libc v0.2.126 [INFO] [stderr] Compiling log v0.4.17 [INFO] [stderr] Compiling serde v1.0.137 [INFO] [stderr] Compiling ascii v1.0.0 [INFO] [stderr] Compiling sqlite3-src v0.3.0 [INFO] [stderr] Compiling memoffset v0.6.5 [INFO] [stderr] Compiling num-traits v0.2.12 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Compiling ryu v1.0.10 [INFO] [stderr] Compiling unicode-bidi v0.3.4 [INFO] [stderr] Compiling bs1770 v1.0.0 [INFO] [stderr] Compiling crossbeam v0.3.2 [INFO] [stderr] Compiling claxon v0.4.3 (https://github.com/ruuda/claxon?rev=1f868774a250f5937ae70c868d77d1b1479f1831#1f868774) [INFO] [stderr] Compiling walkdir v2.3.2 [INFO] [stderr] Compiling unicode-normalization v0.1.13 [INFO] [stderr] Compiling idna v0.2.0 [INFO] [stderr] Compiling num-integer v0.1.43 [INFO] [stderr] Compiling nix v0.23.1 [INFO] [stderr] Compiling alsa-sys v0.3.1 [INFO] [stderr] Compiling time v0.3.9 [INFO] [stderr] Compiling sqlite3-sys v0.13.0 [INFO] [stderr] Compiling time v0.1.43 [INFO] [stderr] Compiling num_cpus v1.13.0 [INFO] [stderr] Compiling wait-timeout v0.2.0 [INFO] [stderr] Compiling url v2.1.1 [INFO] [stderr] Compiling sqlite v0.26.0 [INFO] [stderr] Compiling chrono v0.4.19 [INFO] [stderr] Compiling tiny_http v0.11.0 [INFO] [stderr] Compiling alsa v0.6.0 [INFO] [stderr] Compiling serde_json v1.0.81 [INFO] [stderr] Compiling musium v0.0.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: field `value_slices` is never read [INFO] [stdout] --> src/search.rs:86:5 [INFO] [stdout] | [INFO] [stdout] 85 | struct Union<'a, I: 'a + WordIndex> { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 86 | value_slices: &'a [Values], [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `len` is never used [INFO] [stdout] --> src/search.rs:106:12 [INFO] [stdout] | [INFO] [stdout] 106 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/thumb_gen.rs:254:25 [INFO] [stdout] | [INFO] [stdout] 254 | for task in GenThumb::new(thumb_dir, track.album_id, fname.as_ref(), mtime)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 254 | while let Some(task) = GenThumb::new(thumb_dir, track.album_id, fname.as_ref(), mtime)? { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 254 | if let Some(task) = GenThumb::new(thumb_dir, track.album_id, fname.as_ref(), mtime)? { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `value_slices` is never read [INFO] [stdout] --> src/search.rs:86:5 [INFO] [stdout] | [INFO] [stdout] 85 | struct Union<'a, I: 'a + WordIndex> { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 86 | value_slices: &'a [Values], [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `len` is never used [INFO] [stdout] --> src/search.rs:106:12 [INFO] [stdout] | [INFO] [stdout] 106 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement [INFO] [stdout] --> src/thumb_gen.rs:254:25 [INFO] [stdout] | [INFO] [stdout] 254 | for task in GenThumb::new(thumb_dir, track.album_id, fname.as_ref(), mtime)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stdout] help: to check pattern in a loop use `while let` [INFO] [stdout] | [INFO] [stdout] 254 | while let Some(task) = GenThumb::new(thumb_dir, track.album_id, fname.as_ref(), mtime)? { [INFO] [stdout] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stdout] help: consider using `if let` to clear intent [INFO] [stdout] | [INFO] [stdout] 254 | if let Some(task) = GenThumb::new(thumb_dir, track.album_id, fname.as_ref(), mtime)? { [INFO] [stdout] | ~~~~~~~~~~~~ ~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 57.03s [INFO] running `Command { std: "docker" "inspect" "77d60d649943960b8e155d7d755d5a29c571f8eed8864fe6165c580d13a75e01", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "77d60d649943960b8e155d7d755d5a29c571f8eed8864fe6165c580d13a75e01", kill_on_drop: false }` [INFO] [stdout] 77d60d649943960b8e155d7d755d5a29c571f8eed8864fe6165c580d13a75e01 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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=forbid -Copt-level=3" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7c93e6f9a94679f34221d1005849d4c83862f85b14a264fa0883942f4d043a66" "/opt/rustwide/cargo-home/bin/cargo" "+613d1972a772987ed4ee06faccbab0e2fc839871" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] d7de0f84bc5563dc7f80f47794aaaecc59cdacec743d6b8cf45013085ddfe99f [INFO] running `Command { std: "docker" "start" "-a" "d7de0f84bc5563dc7f80f47794aaaecc59cdacec743d6b8cf45013085ddfe99f", kill_on_drop: false }` [INFO] [stderr] warning: field `value_slices` is never read [INFO] [stderr] --> src/search.rs:86:5 [INFO] [stderr] | [INFO] [stderr] 85 | struct Union<'a, I: 'a + WordIndex> { [INFO] [stderr] | ----- field in this struct [INFO] [stderr] 86 | value_slices: &'a [Values], [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated function `len` is never used [INFO] [stderr] --> src/search.rs:106:12 [INFO] [stderr] | [INFO] [stderr] 106 | pub fn len(&self) -> usize { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: for loop over an `Option`. This is more readably written as an `if let` statement [INFO] [stderr] --> src/thumb_gen.rs:254:25 [INFO] [stderr] | [INFO] [stderr] 254 | for task in GenThumb::new(thumb_dir, track.album_id, fname.as_ref(), mtime)? { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(for_loops_over_fallibles)]` on by default [INFO] [stderr] help: to check pattern in a loop use `while let` [INFO] [stderr] | [INFO] [stderr] 254 | while let Some(task) = GenThumb::new(thumb_dir, track.album_id, fname.as_ref(), mtime)? { [INFO] [stderr] | ~~~~~~~~~~~~~~~ ~~~ [INFO] [stderr] help: consider using `if let` to clear intent [INFO] [stderr] | [INFO] [stderr] 254 | if let Some(task) = GenThumb::new(thumb_dir, track.album_id, fname.as_ref(), mtime)? { [INFO] [stderr] | ~~~~~~~~~~~~ ~~~ [INFO] [stderr] [INFO] [stderr] warning: `musium` (lib) generated 3 warnings [INFO] [stderr] warning: `musium` (lib test) generated 3 warnings (3 duplicates) [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.07s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/musium-07ace7bb754225d0) [INFO] [stdout] [INFO] [stdout] running 29 tests [INFO] [stdout] test album_table::tests::album_table_insert_then_get_all_collisions ... ok [INFO] [stdout] test album_table::tests::album_table_insert_then_get_some_collisions ... ok [INFO] [stdout] test album_table::tests::album_table_insert_then_get_no_collisions ... ok [INFO] [stdout] test config::test::config_can_be_parsed ... ok [INFO] [stdout] test prim::struct_sizes_are_as_expected ... ok [INFO] [stdout] test build::tests::parse_date_parses_year ... ok [INFO] [stdout] test build::tests::parse_date_parses_day ... ok [INFO] [stdout] test album_table::tests::album_table_offset_wrapping ... ok [INFO] [stdout] test album_table::tests::album_table_offset_non_wrapping ... ok [INFO] [stdout] test build::tests::parse_date_parses_month ... ok [INFO] [stdout] test build::tests::format_date_formats_year_and_month_and_day ... ok [INFO] [stdout] test word_index::test::test_build_word_index_all_unique ... ok [INFO] [stdout] test word_index::test::test_search_bounds ... ok [INFO] [stdout] test build::tests::format_date_formats_year_and_month ... ok [INFO] [stdout] test word_index::test::test_search_multibyte_needles ... ok [INFO] [stdout] test word_index::test::test_search_multibyte_key ... ok [INFO] [stdout] test word_index::test::test_search_prefix_shorter ... ok [INFO] [stdout] test word_index::test::test_word_meta_fits_u32 ... ok [INFO] [stdout] test word_index::test::test_search_prefix_regression ... ok [INFO] [stdout] test word_index::test::test_search_exact ... ok [INFO] [stdout] test word_index::test::test_search_prefix_longer ... ok [INFO] [stdout] test build::tests::format_date_formats_year_only ... ok [INFO] [stdout] test word_index::test::test_build_word_index_many_per_word ... ok [INFO] [stdout] test scan::test::get_updates_add_remove ... ok [INFO] [stdout] test scan::test::get_updates_memcmp_order ... ok [INFO] [stdout] test scan::test::get_updates_nothing_changed ... ok [INFO] [stdout] test scan::test::get_updates_different_mtime ... ok [INFO] [stdout] test scan::test::get_updates_empty_db ... ok [INFO] [stdout] test scan::test::get_updates_sort_order ... ok [INFO] [stderr] Running unittests src/main.rs (/opt/rustwide/target/debug/deps/musium-5eac3d2ef31e8cfc) [INFO] [stdout] [INFO] [stdout] test result: ok. 29 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Doc-tests musium [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "d7de0f84bc5563dc7f80f47794aaaecc59cdacec743d6b8cf45013085ddfe99f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d7de0f84bc5563dc7f80f47794aaaecc59cdacec743d6b8cf45013085ddfe99f", kill_on_drop: false }` [INFO] [stdout] d7de0f84bc5563dc7f80f47794aaaecc59cdacec743d6b8cf45013085ddfe99f