[INFO] fetching crate rmqtt-retainer 0.1.2... [INFO] checking rmqtt-retainer-0.1.2 against master#350d0ef0ec0493e6d21cfb265cb8211a0e74d766 for pr-145342-1 [INFO] extracting crate rmqtt-retainer 0.1.2 into /workspace/builds/worker-6-tc1/source [INFO] started tweaking crates.io crate rmqtt-retainer 0.1.2 [INFO] finished tweaking crates.io crate rmqtt-retainer 0.1.2 [INFO] tweaked toml for crates.io crate rmqtt-retainer 0.1.2 written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate rmqtt-retainer 0.1.2 on toolchain 350d0ef0ec0493e6d21cfb265cb8211a0e74d766 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate rmqtt-retainer 0.1.2 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" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded sha1_smol v1.0.1 [INFO] [stderr] Downloaded parking_lot_core v0.8.6 [INFO] [stderr] Downloaded fxhash v0.2.1 [INFO] [stderr] Downloaded parking_lot v0.11.2 [INFO] [stderr] Downloaded instant v0.1.13 [INFO] [stderr] Downloaded num-bigint v0.4.6 [INFO] [stderr] Downloaded async-lock v2.8.0 [INFO] [stderr] Downloaded async-channel v1.9.0 [INFO] [stderr] Downloaded hermit-abi v0.3.9 [INFO] [stderr] Downloaded polling v2.8.0 [INFO] [stderr] Downloaded itertools v0.14.0 [INFO] [stderr] Downloaded raw-cpuid v11.5.0 [INFO] [stderr] Downloaded governor v0.10.1 [INFO] [stderr] Downloaded rmqtt v0.15.0-rc.6 [INFO] [stderr] Downloaded protobuf v2.28.0 [INFO] [stderr] Downloaded rustix v0.37.28 [INFO] [stderr] Downloaded arc-swap v1.7.1 [INFO] [stderr] Downloaded toml_parser v1.0.2 [INFO] [stderr] Downloaded portable-atomic v1.11.1 [INFO] [stderr] Downloaded prost v0.13.5 [INFO] [stderr] Downloaded queue-ext v0.4.1 [INFO] [stderr] Downloaded bytesize v1.3.3 [INFO] [stderr] Downloaded systemstat v0.2.5 [INFO] [stderr] Downloaded box-convert v0.1.1 [INFO] [stderr] Downloaded fastrand v2.3.0 [INFO] [stderr] Downloaded base64 v0.22.1 [INFO] [stderr] Downloaded num-integer v0.1.46 [INFO] [stderr] Downloaded collection_literals v1.0.2 [INFO] [stderr] Downloaded derive-where v1.6.0 [INFO] [stderr] Downloaded attribute-derive-macro v0.6.1 [INFO] [stderr] Downloaded get-size-derive v0.1.3 [INFO] [stderr] Downloaded get-size v0.1.4 [INFO] [stderr] Downloaded futures-timer v3.0.3 [INFO] [stderr] Downloaded quanta v0.12.6 [INFO] [stderr] Downloaded spinning_top v0.3.0 [INFO] [stderr] Downloaded prost-derive v0.13.5 [INFO] [stderr] Downloaded rmqtt-net v0.1.5 [INFO] [stderr] Downloaded waker-fn v1.2.0 [INFO] [stderr] Downloaded linux-raw-sys v0.3.8 [INFO] [stderr] Downloaded prometheus v0.13.4 [INFO] [stderr] Downloaded crossbeam-queue v0.3.12 [INFO] [stderr] Downloaded mpsc v0.2.6 [INFO] [stderr] Downloaded rust-box v0.15.0 [INFO] [stderr] Downloaded event-listener v2.5.3 [INFO] [stderr] Downloaded io-lifetimes v1.0.11 [INFO] [stderr] Downloaded futures-time v3.0.0 [INFO] [stderr] Downloaded serde_spanned v1.0.0 [INFO] [stderr] Downloaded toml_datetime v0.7.0 [INFO] [stderr] Downloaded toml v0.9.5 [INFO] [stderr] Downloaded config v0.15.14 [INFO] [stderr] Downloaded proc-macro-utils v0.8.0 [INFO] [stderr] Downloaded quote-use v0.7.2 [INFO] [stderr] Downloaded attribute-derive v0.6.1 [INFO] [stderr] Downloaded leaky-bucket v1.1.2 [INFO] [stderr] Downloaded rmqtt-macros v0.1.1 [INFO] [stderr] Downloaded box-counter v0.3.0 [INFO] [stderr] Downloaded fastrand v1.9.0 [INFO] [stderr] Downloaded parking v2.2.1 [INFO] [stderr] Downloaded dequemap v0.2.2 [INFO] [stderr] Downloaded std-ext v0.3.2 [INFO] [stderr] Downloaded task-exec-queue v0.9.3 [INFO] [stderr] Downloaded uuid v1.18.0 [INFO] [stderr] Downloaded async-trait v0.1.89 [INFO] [stderr] Downloaded dashmap v6.1.0 [INFO] [stderr] Downloaded backon v1.5.2 [INFO] [stderr] Downloaded redis v0.32.5 [INFO] [stderr] Downloaded sled v0.34.7 [INFO] [stderr] Downloaded async-io v1.13.0 [INFO] [stderr] Downloaded interpolator v0.5.0 [INFO] [stderr] Downloaded quote-use-macros v0.7.2 [INFO] [stderr] Downloaded futures-lite v1.13.0 [INFO] [stderr] Downloaded bincode v1.3.3 [INFO] [stderr] Downloaded rmqtt-storage v0.7.3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 8343d3c8fb5a63d6ddc956480465e05310d79a91424a65958d3292bf81b087bc [INFO] running `Command { std: "docker" "start" "-a" "8343d3c8fb5a63d6ddc956480465e05310d79a91424a65958d3292bf81b087bc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "8343d3c8fb5a63d6ddc956480465e05310d79a91424a65958d3292bf81b087bc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8343d3c8fb5a63d6ddc956480465e05310d79a91424a65958d3292bf81b087bc", kill_on_drop: false }` [INFO] [stdout] 8343d3c8fb5a63d6ddc956480465e05310d79a91424a65958d3292bf81b087bc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+350d0ef0ec0493e6d21cfb265cb8211a0e74d766" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 96192086050b58b2133424c52d0bfd4bbf031aa1b7b8601448c35102d644f3c0 [INFO] running `Command { std: "docker" "start" "-a" "96192086050b58b2133424c52d0bfd4bbf031aa1b7b8601448c35102d644f3c0", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.175 [INFO] [stderr] Checking cfg-if v1.0.1 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Checking memchr v2.7.5 [INFO] [stderr] Compiling version_check v0.9.5 [INFO] [stderr] Checking pin-project-lite v0.2.16 [INFO] [stderr] Checking futures-core v0.3.31 [INFO] [stderr] Checking smallvec v1.15.1 [INFO] [stderr] Checking stable_deref_trait v1.2.0 [INFO] [stderr] Compiling crossbeam-utils v0.8.21 [INFO] [stderr] Checking futures-io v0.3.31 [INFO] [stderr] Checking futures-sink v0.3.31 [INFO] [stderr] Compiling lock_api v0.4.13 [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Checking slab v0.4.11 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling parking_lot_core v0.9.11 [INFO] [stderr] Checking log v0.4.27 [INFO] [stderr] Checking pin-utils v0.1.0 [INFO] [stderr] Checking futures-task v0.3.31 [INFO] [stderr] Compiling anyhow v1.0.99 [INFO] [stderr] Compiling thiserror v1.0.69 [INFO] [stderr] Checking writeable v0.6.1 [INFO] [stderr] Checking once_cell v1.21.3 [INFO] [stderr] Checking futures-channel v0.3.31 [INFO] [stderr] Checking equivalent v1.0.2 [INFO] [stderr] Checking foldhash v0.1.5 [INFO] [stderr] Checking allocator-api2 v0.2.21 [INFO] [stderr] Checking litemap v0.8.0 [INFO] [stderr] Compiling icu_properties_data v2.0.1 [INFO] [stderr] Compiling icu_normalizer_data v2.0.0 [INFO] [stderr] Compiling serde_json v1.0.142 [INFO] [stderr] Checking fastrand v1.9.0 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Compiling ahash v0.8.12 [INFO] [stderr] Checking bitflags v2.9.2 [INFO] [stderr] Checking waker-fn v1.2.0 [INFO] [stderr] Compiling doc-comment v0.3.3 [INFO] [stderr] Checking parking v2.2.1 [INFO] [stderr] Compiling semver v1.0.26 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Checking futures-lite v1.13.0 [INFO] [stderr] Checking iana-time-zone v0.1.63 [INFO] [stderr] Compiling collection_literals v1.0.2 [INFO] [stderr] Checking ryu v1.0.20 [INFO] [stderr] Compiling io-lifetimes v1.0.11 [INFO] [stderr] Compiling proc-macro-utils v0.8.0 [INFO] [stderr] Checking itoa v1.0.15 [INFO] [stderr] Compiling interpolator v0.5.0 [INFO] [stderr] Checking chrono v0.4.41 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking hashbrown v0.15.5 [INFO] [stderr] Checking crossbeam-queue v0.3.12 [INFO] [stderr] Compiling polling v2.8.0 [INFO] [stderr] Compiling portable-atomic v1.11.1 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling protobuf v2.28.0 [INFO] [stderr] Compiling rustix v0.37.28 [INFO] [stderr] Checking event-listener v2.5.3 [INFO] [stderr] Checking nonzero_ext v0.3.0 [INFO] [stderr] Checking powerfmt v0.2.0 [INFO] [stderr] Checking winnow v0.7.12 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Checking getrandom v0.2.16 [INFO] [stderr] Checking mio v1.0.4 [INFO] [stderr] Checking socket2 v0.6.0 [INFO] [stderr] Checking dequemap v0.2.2 [INFO] [stderr] Checking deranged v0.4.0 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking parking_lot v0.12.4 [INFO] [stderr] Checking dashmap v6.1.0 [INFO] [stderr] Checking rand_core v0.9.3 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking std-ext v0.3.2 [INFO] [stderr] Checking rand_chacha v0.9.0 [INFO] [stderr] Compiling itertools v0.14.0 [INFO] [stderr] Checking concurrent-queue v2.5.0 [INFO] [stderr] Checking raw-cpuid v11.5.0 [INFO] [stderr] Compiling async-io v1.13.0 [INFO] [stderr] Checking percent-encoding v2.3.1 [INFO] [stderr] Checking minimal-lexical v0.2.1 [INFO] [stderr] Checking linux-raw-sys v0.3.8 [INFO] [stderr] Checking time-core v0.1.4 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking num-conv v0.1.0 [INFO] [stderr] Checking utf8_iter v1.0.4 [INFO] [stderr] Checking bitflags v1.3.2 [INFO] [stderr] Compiling prometheus v0.13.4 [INFO] [stderr] Checking nom v7.1.3 [INFO] [stderr] Checking rand v0.9.2 [INFO] [stderr] Checking form_urlencoded v1.2.1 [INFO] [stderr] Checking time v0.3.41 [INFO] [stderr] Checking socket2 v0.4.10 [INFO] [stderr] Checking socket2 v0.5.10 [INFO] [stderr] Checking async-lock v2.8.0 [INFO] [stderr] Checking spinning_top v0.3.0 [INFO] [stderr] Checking web-time v1.1.0 [INFO] [stderr] Checking pathdiff v0.2.3 [INFO] [stderr] Checking futures-timer v3.0.3 [INFO] [stderr] Checking fnv v1.0.7 [INFO] [stderr] Checking bytesize v1.3.3 [INFO] [stderr] Checking async-channel v1.9.0 [INFO] [stderr] Checking uuid v1.18.0 [INFO] [stderr] Checking base64 v0.22.1 [INFO] [stderr] Checking systemstat v0.2.5 [INFO] [stderr] Checking toml_parser v1.0.2 [INFO] [stderr] Compiling rmqtt v0.15.0-rc.6 [INFO] [stderr] Compiling snafu-derive v0.6.10 [INFO] [stderr] Checking quanta v0.12.6 [INFO] [stderr] Checking snafu v0.6.10 [INFO] [stderr] Checking futures-time v3.0.0 [INFO] [stderr] Compiling synstructure v0.13.2 [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stderr] Compiling zerovec-derive v0.11.1 [INFO] [stderr] Compiling displaydoc v0.2.5 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Compiling derive-where v1.6.0 [INFO] [stderr] Compiling pin-project-internal v1.1.10 [INFO] [stderr] Compiling tokio-macros v2.5.0 [INFO] [stderr] Compiling prost-derive v0.13.5 [INFO] [stderr] Compiling rmqtt-macros v0.1.1 [INFO] [stderr] Compiling async-trait v0.1.89 [INFO] [stderr] Compiling zerofrom-derive v0.1.6 [INFO] [stderr] Compiling yoke-derive v0.8.0 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Checking pin-project v1.1.10 [INFO] [stderr] Compiling quote-use-macros v0.7.2 [INFO] [stderr] Compiling quote-use v0.7.2 [INFO] [stderr] Compiling attribute-derive-macro v0.6.1 [INFO] [stderr] Checking zerofrom v0.1.6 [INFO] [stderr] Checking yoke v0.8.0 [INFO] [stderr] Checking zerovec v0.11.4 [INFO] [stderr] Checking zerotrie v0.2.2 [INFO] [stderr] Compiling attribute-derive v0.6.1 [INFO] [stderr] Compiling get-size-derive v0.1.3 [INFO] [stderr] Checking futures-executor v0.3.31 [INFO] [stderr] Checking governor v0.10.1 [INFO] [stderr] Checking get-size v0.1.4 [INFO] [stderr] Checking futures v0.3.31 [INFO] [stderr] Checking queue-ext v0.4.1 [INFO] [stderr] Checking tinystr v0.8.1 [INFO] [stderr] Checking potential_utf v0.1.2 [INFO] [stderr] Checking icu_collections v2.0.0 [INFO] [stderr] Checking mpsc v0.2.6 [INFO] [stderr] Checking icu_locale_core v2.0.0 [INFO] [stderr] Checking icu_provider v2.0.0 [INFO] [stderr] Checking icu_normalizer v2.0.0 [INFO] [stderr] Checking icu_properties v2.0.1 [INFO] [stderr] Checking bytes v1.10.1 [INFO] [stderr] Checking bincode v1.3.3 [INFO] [stderr] Checking serde_spanned v1.0.0 [INFO] [stderr] Checking toml_datetime v0.7.0 [INFO] [stderr] Checking toml v0.9.5 [INFO] [stderr] Checking idna_adapter v1.2.1 [INFO] [stderr] Checking tokio v1.47.1 [INFO] [stderr] Checking bytestring v1.4.0 [INFO] [stderr] Checking proxy-protocol v0.5.0 [INFO] [stderr] Checking prost v0.13.5 [INFO] [stderr] Checking box-counter v0.3.0 [INFO] [stderr] Checking idna v1.0.3 [INFO] [stderr] Checking task-exec-queue v0.9.3 [INFO] [stderr] Checking url v2.5.4 [INFO] [stderr] Checking rmqtt-utils v0.1.3 [INFO] [stderr] Checking rust-box v0.15.0 [INFO] [stderr] Checking config v0.15.14 [INFO] [stderr] Checking tokio-util v0.7.16 [INFO] [stderr] Checking leaky-bucket v1.1.2 [INFO] [stderr] Checking rmqtt-codec v0.1.2 [INFO] [stderr] Checking rmqtt-net v0.1.5 [INFO] [stderr] Checking rmqtt-retainer v0.1.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `json` [INFO] [stdout] --> src/lib.rs:8:24 [INFO] [stdout] | [INFO] [stdout] 8 | use serde_json::{self, json}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Config` [INFO] [stdout] --> src/lib.rs:24:14 [INFO] [stdout] | [INFO] [stdout] 24 | use config::{Config, PluginConfig}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/lib.rs:88:9 [INFO] [stdout] | [INFO] [stdout] 57 | let (retainer, support_cluster) = match &mut cfg.write().await.storage { [INFO] [stdout] | ___________________________________________- [INFO] [stdout] 58 | | #[cfg(feature = "ram")] [INFO] [stdout] 59 | | Config::Ram => (Retainer::Ram(RamRetainer::new(cfg.clone(), retain_enable.clone())), false), [INFO] [stdout] 60 | | #[cfg(any(feature = "sled", feature = "redis"))] [INFO] [stdout] ... | [INFO] [stdout] 86 | | }; [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 87 | [INFO] [stdout] 88 | Ok(Self { scx, register, cfg, retainer, support_cluster, retain_enable }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `json` [INFO] [stdout] --> src/lib.rs:8:24 [INFO] [stdout] | [INFO] [stdout] 8 | use serde_json::{self, json}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Config` [INFO] [stdout] --> src/lib.rs:24:14 [INFO] [stdout] | [INFO] [stdout] 24 | use config::{Config, PluginConfig}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0004]: non-exhaustive patterns: type `&mut Config` is non-empty [INFO] [stdout] --> src/lib.rs:57:49 [INFO] [stdout] | [INFO] [stdout] 57 | let (retainer, support_cluster) = match &mut cfg.write().await.storage { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Config` defined here [INFO] [stdout] --> src/config.rs:76:10 [INFO] [stdout] | [INFO] [stdout] 76 | pub enum Config { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] = note: the matched value is of type `&mut Config` [INFO] [stdout] = note: references are always considered inhabited [INFO] [stdout] help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern as shown [INFO] [stdout] | [INFO] [stdout] 57 ~ let (retainer, support_cluster) = match &mut cfg.write().await.storage { [INFO] [stdout] 58 + _ => todo!(), [INFO] [stdout] 59 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0004]: non-exhaustive patterns: type `&Retainer` is non-empty [INFO] [stdout] --> src/lib.rs:211:15 [INFO] [stdout] | [INFO] [stdout] 211 | match self { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Retainer` defined here [INFO] [stdout] --> src/lib.rs:202:6 [INFO] [stdout] | [INFO] [stdout] 202 | enum Retainer { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] = note: the matched value is of type `&Retainer` [INFO] [stdout] = note: references are always considered inhabited [INFO] [stdout] help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern as shown [INFO] [stdout] | [INFO] [stdout] 211 ~ match self { [INFO] [stdout] 212 + _ => todo!(), [INFO] [stdout] 213 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0004]: non-exhaustive patterns: type `&Retainer` is non-empty [INFO] [stdout] --> src/lib.rs:220:15 [INFO] [stdout] | [INFO] [stdout] 220 | match self { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Retainer` defined here [INFO] [stdout] --> src/lib.rs:202:6 [INFO] [stdout] | [INFO] [stdout] 202 | enum Retainer { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] = note: the matched value is of type `&Retainer` [INFO] [stdout] = note: references are always considered inhabited [INFO] [stdout] help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern as shown [INFO] [stdout] | [INFO] [stdout] 220 ~ match self { [INFO] [stdout] 221 + _ => todo!(), [INFO] [stdout] 222 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/lib.rs:149:9 [INFO] [stdout] | [INFO] [stdout] 143 | let r: Box = match self.retainer.clone() { [INFO] [stdout] | _________________________________________- [INFO] [stdout] 144 | | #[cfg(feature = "ram")] [INFO] [stdout] 145 | | Retainer::Ram(r) => Box::new(r), [INFO] [stdout] 146 | | #[cfg(any(feature = "sled", feature = "redis"))] [INFO] [stdout] 147 | | Retainer::Storage(r) => Box::new(r), [INFO] [stdout] 148 | | }; [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 149 | *self.scx.extends.retain_mut().await = r; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/lib.rs:88:9 [INFO] [stdout] | [INFO] [stdout] 57 | let (retainer, support_cluster) = match &mut cfg.write().await.storage { [INFO] [stdout] | ___________________________________________- [INFO] [stdout] 58 | | #[cfg(feature = "ram")] [INFO] [stdout] 59 | | Config::Ram => (Retainer::Ram(RamRetainer::new(cfg.clone(), retain_enable.clone())), false), [INFO] [stdout] 60 | | #[cfg(any(feature = "sled", feature = "redis"))] [INFO] [stdout] ... | [INFO] [stdout] 86 | | }; [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 87 | [INFO] [stdout] 88 | Ok(Self { scx, register, cfg, retainer, support_cluster, retain_enable }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable expression [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unreachable_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0004]: non-exhaustive patterns: type `&mut Config` is non-empty [INFO] [stdout] --> src/lib.rs:57:49 [INFO] [stdout] | [INFO] [stdout] 57 | let (retainer, support_cluster) = match &mut cfg.write().await.storage { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Config` defined here [INFO] [stdout] --> src/config.rs:76:10 [INFO] [stdout] | [INFO] [stdout] 76 | pub enum Config { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] = note: the matched value is of type `&mut Config` [INFO] [stdout] = note: references are always considered inhabited [INFO] [stdout] help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern as shown [INFO] [stdout] | [INFO] [stdout] 57 ~ let (retainer, support_cluster) = match &mut cfg.write().await.storage { [INFO] [stdout] 58 + _ => todo!(), [INFO] [stdout] 59 ~ }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0004]: non-exhaustive patterns: type `&Retainer` is non-empty [INFO] [stdout] --> src/lib.rs:211:15 [INFO] [stdout] | [INFO] [stdout] 211 | match self { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Retainer` defined here [INFO] [stdout] --> src/lib.rs:202:6 [INFO] [stdout] | [INFO] [stdout] 202 | enum Retainer { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] = note: the matched value is of type `&Retainer` [INFO] [stdout] = note: references are always considered inhabited [INFO] [stdout] help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern as shown [INFO] [stdout] | [INFO] [stdout] 211 ~ match self { [INFO] [stdout] 212 + _ => todo!(), [INFO] [stdout] 213 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0004]: non-exhaustive patterns: type `&Retainer` is non-empty [INFO] [stdout] --> src/lib.rs:220:15 [INFO] [stdout] | [INFO] [stdout] 220 | match self { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] note: `Retainer` defined here [INFO] [stdout] --> src/lib.rs:202:6 [INFO] [stdout] | [INFO] [stdout] 202 | enum Retainer { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] = note: the matched value is of type `&Retainer` [INFO] [stdout] = note: references are always considered inhabited [INFO] [stdout] help: ensure that all possible cases are being handled by adding a match arm with a wildcard pattern as shown [INFO] [stdout] | [INFO] [stdout] 220 ~ match self { [INFO] [stdout] 221 + _ => todo!(), [INFO] [stdout] 222 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `retainer` [INFO] [stdout] --> src/lib.rs:108:13 [INFO] [stdout] | [INFO] [stdout] 108 | let retainer = self.retainer.clone(); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_retainer` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable statement [INFO] [stdout] --> src/lib.rs:149:9 [INFO] [stdout] | [INFO] [stdout] 143 | let r: Box = match self.retainer.clone() { [INFO] [stdout] | _________________________________________- [INFO] [stdout] 144 | | #[cfg(feature = "ram")] [INFO] [stdout] 145 | | Retainer::Ram(r) => Box::new(r), [INFO] [stdout] 146 | | #[cfg(any(feature = "sled", feature = "redis"))] [INFO] [stdout] 147 | | Retainer::Storage(r) => Box::new(r), [INFO] [stdout] 148 | | }; [INFO] [stdout] | |_________- any code following this expression is unreachable [INFO] [stdout] 149 | *self.scx.extends.retain_mut().await = r; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ unreachable statement [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `retainer` [INFO] [stdout] --> src/lib.rs:108:13 [INFO] [stdout] | [INFO] [stdout] 108 | let retainer = self.retainer.clone(); [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_retainer` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/lib.rs:143:41 [INFO] [stdout] | [INFO] [stdout] 143 | let r: Box = match self.retainer.clone() { [INFO] [stdout] | ^ --------------------- any code following this expression is unreachable [INFO] [stdout] | _________________________________________| [INFO] [stdout] | | [INFO] [stdout] 144 | | #[cfg(feature = "ram")] [INFO] [stdout] 145 | | Retainer::Ram(r) => Box::new(r), [INFO] [stdout] 146 | | #[cfg(any(feature = "sled", feature = "redis"))] [INFO] [stdout] 147 | | Retainer::Storage(r) => Box::new(r), [INFO] [stdout] 148 | | }; [INFO] [stdout] | |_________^ unreachable expression [INFO] [stdout] | [INFO] [stdout] note: this expression has type `Retainer`, which is uninhabited [INFO] [stdout] --> src/lib.rs:143:47 [INFO] [stdout] | [INFO] [stdout] 143 | let r: Box = match self.retainer.clone() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r` [INFO] [stdout] --> src/lib.rs:143:13 [INFO] [stdout] | [INFO] [stdout] 143 | let r: Box = match self.retainer.clone() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unreachable expression [INFO] [stdout] --> src/lib.rs:143:41 [INFO] [stdout] | [INFO] [stdout] 143 | let r: Box = match self.retainer.clone() { [INFO] [stdout] | ^ --------------------- any code following this expression is unreachable [INFO] [stdout] | _________________________________________| [INFO] [stdout] | | [INFO] [stdout] 144 | | #[cfg(feature = "ram")] [INFO] [stdout] 145 | | Retainer::Ram(r) => Box::new(r), [INFO] [stdout] 146 | | #[cfg(any(feature = "sled", feature = "redis"))] [INFO] [stdout] 147 | | Retainer::Storage(r) => Box::new(r), [INFO] [stdout] 148 | | }; [INFO] [stdout] | |_________^ unreachable expression [INFO] [stdout] | [INFO] [stdout] note: this expression has type `Retainer`, which is uninhabited [INFO] [stdout] --> src/lib.rs:143:47 [INFO] [stdout] | [INFO] [stdout] 143 | let r: Box = match self.retainer.clone() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `r` [INFO] [stdout] --> src/lib.rs:143:13 [INFO] [stdout] | [INFO] [stdout] 143 | let r: Box = match self.retainer.clone() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_r` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0004`. [INFO] [stdout] [INFO] [stderr] error: could not compile `rmqtt-retainer` (lib) due to 3 previous errors; 7 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] For more information about this error, try `rustc --explain E0004`. [INFO] [stdout] [INFO] [stderr] error: could not compile `rmqtt-retainer` (lib test) due to 3 previous errors; 7 warnings emitted [INFO] running `Command { std: "docker" "inspect" "96192086050b58b2133424c52d0bfd4bbf031aa1b7b8601448c35102d644f3c0", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "96192086050b58b2133424c52d0bfd4bbf031aa1b7b8601448c35102d644f3c0", kill_on_drop: false }` [INFO] [stdout] 96192086050b58b2133424c52d0bfd4bbf031aa1b7b8601448c35102d644f3c0