[INFO] fetching crate firebase-rs-sdk 1.34.2... [INFO] linting firebase-rs-sdk-1.34.2 against nightly for clippy-nonminimal_bool-denied [INFO] extracting crate firebase-rs-sdk 1.34.2 into /workspace/builds/worker-5-tc1/source [INFO] started tweaking crates.io crate firebase-rs-sdk 1.34.2 [INFO] removed 0 missing examples [INFO] finished tweaking crates.io crate firebase-rs-sdk 1.34.2 [INFO] tweaked toml for crates.io crate firebase-rs-sdk 1.34.2 written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate firebase-rs-sdk 1.34.2 on toolchain nightly [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+nightly" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate firebase-rs-sdk 1.34.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" "+nightly" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded tokio-tungstenite v0.21.0 [INFO] [stderr] Downloaded wasm-bindgen-test v0.3.55 [INFO] [stderr] Downloaded serde-wasm-bindgen v0.5.0 [INFO] [stderr] Downloaded wasm-bindgen-test-macro v0.3.55 [INFO] [stderr] Downloaded webbrowser v0.8.15 [INFO] [stderr] Downloaded tungstenite v0.21.0 [INFO] [stderr] Downloaded rustls-native-certs v0.7.3 [INFO] [stderr] Downloaded tokio-rustls v0.25.0 [INFO] [stderr] Downloaded raw-window-handle v0.5.2 [INFO] [stderr] Downloaded zerocopy-derive v0.8.30 [INFO] [stderr] Downloaded zerocopy v0.8.30 [INFO] [stderr] Downloaded rustls v0.22.4 [INFO] [stderr] Downloaded async-std v1.13.2 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 60afa134b40f39b73e63f268332d3ad5bb51e1dc14a9f08a1636bc56f73db372 [INFO] running `Command { std: "docker" "start" "-a" "60afa134b40f39b73e63f268332d3ad5bb51e1dc14a9f08a1636bc56f73db372", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "60afa134b40f39b73e63f268332d3ad5bb51e1dc14a9f08a1636bc56f73db372", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "60afa134b40f39b73e63f268332d3ad5bb51e1dc14a9f08a1636bc56f73db372", kill_on_drop: false }` [INFO] [stdout] 60afa134b40f39b73e63f268332d3ad5bb51e1dc14a9f08a1636bc56f73db372 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+nightly" "clippy" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3792997188bde4278eaa0ff00be4bd0217aaf2bf8f3a51db54992f552f06f180 [INFO] running `Command { std: "docker" "start" "-a" "3792997188bde4278eaa0ff00be4bd0217aaf2bf8f3a51db54992f552f06f180", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.177 [INFO] [stderr] Checking bytes v1.11.0 [INFO] [stderr] Compiling ring v0.17.14 [INFO] [stderr] Checking value-bag v1.12.0 [INFO] [stderr] Checking concurrent-queue v2.5.0 [INFO] [stderr] Checking futures-sink v0.3.31 [INFO] [stderr] Compiling futures-macro v0.3.31 [INFO] [stderr] Compiling rustix v1.1.2 [INFO] [stderr] Checking futures-channel v0.3.31 [INFO] [stderr] Checking event-listener v5.4.1 [INFO] [stderr] Checking smallvec v1.15.1 [INFO] [stderr] Checking log v0.4.28 [INFO] [stderr] Checking icu_normalizer v2.1.1 [INFO] [stderr] Checking linux-raw-sys v0.11.0 [INFO] [stderr] Compiling wasm-bindgen-shared v0.2.105 [INFO] [stderr] Checking event-listener-strategy v0.5.4 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Checking idna_adapter v1.2.1 [INFO] [stderr] Checking rustls-pki-types v1.13.0 [INFO] [stderr] Compiling scopeguard v1.2.0 [INFO] [stderr] Checking futures-util v0.3.31 [INFO] [stderr] Compiling zerocopy v0.8.30 [INFO] [stderr] Compiling regex-syntax v0.8.8 [INFO] [stderr] Checking http v0.2.12 [INFO] [stderr] Checking getrandom v0.2.16 [INFO] [stderr] Checking signal-hook-registry v1.4.7 [INFO] [stderr] Checking mio v1.1.0 [INFO] [stderr] Checking socket2 v0.6.1 [INFO] [stderr] Compiling dirs-sys-next v0.1.2 [INFO] [stderr] Checking tokio v1.48.0 [INFO] [stderr] Compiling dirs-next v2.0.0 [INFO] [stderr] Compiling lock_api v0.4.14 [INFO] [stderr] Checking idna v1.1.0 [INFO] [stderr] Checking tracing-core v0.1.35 [INFO] [stderr] Compiling siphasher v1.0.1 [INFO] [stderr] Compiling tiny-keccak v2.0.2 [INFO] [stderr] Compiling phf_shared v0.11.3 [INFO] [stderr] Checking tracing v0.1.41 [INFO] [stderr] Checking url v2.5.7 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling term v0.7.0 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Checking async-channel v2.5.0 [INFO] [stderr] Checking async-lock v3.4.1 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Compiling either v1.15.0 [INFO] [stderr] Compiling fixedbitset v0.4.2 [INFO] [stderr] Compiling rustls v0.21.12 [INFO] [stderr] Compiling bit-vec v0.6.3 [INFO] [stderr] Compiling new_debug_unreachable v1.0.6 [INFO] [stderr] Compiling precomputed-hash v0.1.1 [INFO] [stderr] Compiling rustls v0.22.4 [INFO] [stderr] Compiling ena v0.14.3 [INFO] [stderr] Compiling string_cache v0.8.9 [INFO] [stderr] Compiling bit-set v0.5.3 [INFO] [stderr] Compiling petgraph v0.6.5 [INFO] [stderr] Compiling itertools v0.11.0 [INFO] [stderr] Checking rustls-webpki v0.102.8 [INFO] [stderr] Checking rustls-webpki v0.101.7 [INFO] [stderr] Checking sct v0.7.1 [INFO] [stderr] Compiling walkdir v2.5.0 [INFO] [stderr] Compiling ascii-canvas v3.0.0 [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Checking polling v3.11.0 [INFO] [stderr] Checking http-body v0.4.6 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking async-io v2.6.0 [INFO] [stderr] Checking socket2 v0.5.10 [INFO] [stderr] Compiling unicode-xid v0.2.6 [INFO] [stderr] Compiling bumpalo v3.19.0 [INFO] [stderr] Compiling pico-args v0.5.0 [INFO] [stderr] Checking async-channel v1.9.0 [INFO] [stderr] Compiling wasm-bindgen-macro-support v0.2.105 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking async-signal v0.2.13 [INFO] [stderr] Checking tokio-util v0.7.17 [INFO] [stderr] Compiling wasm-bindgen v0.2.105 [INFO] [stderr] Compiling regex v1.12.2 [INFO] [stderr] Compiling lalrpop-util v0.20.2 [INFO] [stderr] Checking blocking v1.6.2 [INFO] [stderr] Checking async-executor v1.13.3 [INFO] [stderr] Compiling lalrpop v0.20.2 [INFO] [stderr] Checking h2 v0.3.27 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling thiserror-impl v1.0.69 [INFO] [stderr] Checking base64 v0.21.7 [INFO] [stderr] Checking async-global-executor v2.4.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking async-process v2.5.0 [INFO] [stderr] Checking sha1 v0.10.6 [INFO] [stderr] Checking thiserror v1.0.69 [INFO] [stderr] Checking rustls-pemfile v2.2.0 [INFO] [stderr] Checking http v1.4.0 [INFO] [stderr] Checking kv-log-macro v1.0.7 [INFO] [stderr] Checking utf-8 v0.7.6 [INFO] [stderr] Checking data-encoding v2.9.0 [INFO] [stderr] Checking rustls-native-certs v0.7.3 [INFO] [stderr] Checking tokio-rustls v0.24.1 [INFO] [stderr] Checking rustls-pemfile v1.0.4 [INFO] [stderr] Checking tokio-rustls v0.25.0 [INFO] [stderr] Checking futures-executor v0.3.31 [INFO] [stderr] Checking sync_wrapper v0.1.2 [INFO] [stderr] Checking tungstenite v0.21.0 [INFO] [stderr] Checking iana-time-zone v0.1.64 [INFO] [stderr] Checking webpki-roots v0.25.4 [INFO] [stderr] Checking futures v0.3.31 [INFO] [stderr] Checking serde_regex v1.1.0 [INFO] [stderr] Checking assert-json-diff v2.0.2 [INFO] [stderr] Checking hyper v0.14.32 [INFO] [stderr] Checking base64 v0.22.1 [INFO] [stderr] Checking chrono v0.4.42 [INFO] [stderr] Checking levenshtein v1.0.5 [INFO] [stderr] Checking home v0.5.12 [INFO] [stderr] Checking similar v2.7.0 [INFO] [stderr] Compiling wasm-bindgen-macro v0.2.105 [INFO] [stderr] Checking tokio-tungstenite v0.21.0 [INFO] [stderr] Checking webbrowser v0.8.15 [INFO] [stderr] Compiling async-attributes v1.1.2 [INFO] [stderr] Checking async-std v1.13.2 [INFO] [stderr] Checking js-sys v0.3.82 [INFO] [stderr] Checking hyper-rustls v0.24.2 [INFO] [stderr] Checking reqwest v0.11.27 [INFO] [stderr] Checking async-object-pool v0.1.5 [INFO] [stderr] Checking firebase-rs-sdk v1.34.2 (/opt/rustwide/workdir) [INFO] [stderr] Compiling basic-cookies v0.1.5 [INFO] [stderr] Checking serde-wasm-bindgen v0.5.0 [INFO] [stderr] Checking httpmock v0.7.0 [INFO] [stdout] warning: bound is defined in more than one place [INFO] [stdout] --> src/remote_config/api.rs:631:24 [INFO] [stdout] | [INFO] [stdout] 631 | fn block_on_future(future: F) -> F::Output [INFO] [stdout] | ^ [INFO] [stdout] 632 | where [INFO] [stdout] 633 | F: Future + 'static, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#multiple_bound_locations [INFO] [stdout] = note: `#[warn(clippy::multiple_bound_locations)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/ai/api.rs:62:22 [INFO] [stdout] | [INFO] [stdout] 62 | static AI_OVERRIDES: LazyLock>>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] = note: `#[warn(clippy::incompatible_msrv)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/ai/api.rs:62:75 [INFO] [stdout] | [INFO] [stdout] 62 | static AI_OVERRIDES: LazyLock>>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/ai/api.rs:62:75 [INFO] [stdout] | [INFO] [stdout] 62 | static AI_OVERRIDES: LazyLock>>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/ai/api.rs:495:22 [INFO] [stdout] | [INFO] [stdout] 495 | static AI_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/ai/api.rs:495:37 [INFO] [stdout] | [INFO] [stdout] 495 | static AI_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/ai/api.rs:495:37 [INFO] [stdout] | [INFO] [stdout] 495 | static AI_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/ai/api.rs:516:14 [INFO] [stdout] | [INFO] [stdout] 516 | .map(|identifier| decode_instance_identifier(identifier)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `decode_instance_identifier` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/ai/api.rs:568:5 [INFO] [stdout] | [INFO] [stdout] 568 | LazyLock::force(&AI_COMPONENT); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/ai/api.rs:568:5 [INFO] [stdout] | [INFO] [stdout] 568 | LazyLock::force(&AI_COMPONENT); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/ai/error.rs:66:1 [INFO] [stdout] | [INFO] [stdout] 66 | / impl Default for ErrorDetails { [INFO] [stdout] 67 | | fn default() -> Self { [INFO] [stdout] 68 | | Self { [INFO] [stdout] 69 | | type_url: None, [INFO] [stdout] ... | [INFO] [stdout] 75 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] = note: `#[warn(clippy::derivable_impls)]` on by default [INFO] [stdout] help: replace the manual implementation with a derive attribute [INFO] [stdout] | [INFO] [stdout] 59 + #[derive(Default)] [INFO] [stdout] 60 | pub struct ErrorDetails { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (8/7) [INFO] [stdout] --> src/ai/requests.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | / pub fn new( [INFO] [stdout] 29 | | api_key: String, [INFO] [stdout] 30 | | project: String, [INFO] [stdout] 31 | | app_id: String, [INFO] [stdout] ... | [INFO] [stdout] 36 | | auth_token: Option, [INFO] [stdout] 37 | | ) -> Self { [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] = note: `#[warn(clippy::too_many_arguments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `.as_ref().map(|value| value.as_str())` on an `Option` value [INFO] [stdout] --> src/ai/requests.rs:175:20 [INFO] [stdout] | [INFO] [stdout] 175 | let base = options [INFO] [stdout] | ____________________^ [INFO] [stdout] 176 | | .base_url [INFO] [stdout] 177 | | .as_ref() [INFO] [stdout] 178 | | .map(|value| value.as_str()) [INFO] [stdout] | |________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#option_as_ref_deref [INFO] [stdout] = note: `#[warn(clippy::option_as_ref_deref)]` on by default [INFO] [stdout] help: consider using as_deref [INFO] [stdout] | [INFO] [stdout] 175 ~ let base = options [INFO] [stdout] 176 + .base_url.as_deref() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/analytics/api.rs:118:13 [INFO] [stdout] | [INFO] [stdout] 118 | let mut events = self.inner.events.lock().unwrap(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/analytics/api.rs:126:37 [INFO] [stdout] | [INFO] [stdout] 126 | self.dispatch_event(&event).await [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] = note: `#[warn(clippy::await_holding_lock)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/analytics/api.rs:329:29 [INFO] [stdout] | [INFO] [stdout] 329 | static ANALYTICS_COMPONENT: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/analytics/api.rs:329:51 [INFO] [stdout] | [INFO] [stdout] 329 | static ANALYTICS_COMPONENT: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/analytics/api.rs:329:51 [INFO] [stdout] | [INFO] [stdout] 329 | static ANALYTICS_COMPONENT: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/analytics/api.rs:349:21 [INFO] [stdout] | [INFO] [stdout] 349 | let component = LazyLock::force(&ANALYTICS_COMPONENT).clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/analytics/api.rs:349:21 [INFO] [stdout] | [INFO] [stdout] 349 | let component = LazyLock::force(&ANALYTICS_COMPONENT).clone(); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/analytics/api.rs:383:28 [INFO] [stdout] | [INFO] [stdout] 383 | .set_component(LazyLock::force(&ANALYTICS_COMPONENT).clone()) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/analytics/api.rs:383:28 [INFO] [stdout] | [INFO] [stdout] 383 | .set_component(LazyLock::force(&ANALYTICS_COMPONENT).clone()) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/analytics/config.rs:112:20 [INFO] [stdout] | [INFO] [stdout] 112 | static RETRY_DATA: LazyLock>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/analytics/config.rs:112:73 [INFO] [stdout] | [INFO] [stdout] 112 | static RETRY_DATA: LazyLock>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/analytics/config.rs:112:73 [INFO] [stdout] | [INFO] [stdout] 112 | static RETRY_DATA: LazyLock>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/analytics/gtag.rs:84:26 [INFO] [stdout] | [INFO] [stdout] 84 | static INSTANCE: LazyLock> = LazyLock::new(|| Arc::new(GtagRegistry::new())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/analytics/gtag.rs:84:56 [INFO] [stdout] | [INFO] [stdout] 84 | static INSTANCE: LazyLock> = LazyLock::new(|| Arc::new(GtagRegistry::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/analytics/gtag.rs:84:56 [INFO] [stdout] | [INFO] [stdout] 84 | static INSTANCE: LazyLock> = LazyLock::new(|| Arc::new(GtagRegistry::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/api.rs:20:29 [INFO] [stdout] | [INFO] [stdout] 20 | static REGISTERED_VERSIONS: LazyLock>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app/api.rs:20:72 [INFO] [stdout] | [INFO] [stdout] 20 | static REGISTERED_VERSIONS: LazyLock>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/api.rs:20:72 [INFO] [stdout] | [INFO] [stdout] 20 | static REGISTERED_VERSIONS: LazyLock>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/api.rs:22:25 [INFO] [stdout] | [INFO] [stdout] 22 | static GLOBAL_APP_LOCK: LazyLock> = LazyLock::new(|| Mutex::new(())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app/api.rs:22:47 [INFO] [stdout] | [INFO] [stdout] 22 | static GLOBAL_APP_LOCK: LazyLock> = LazyLock::new(|| Mutex::new(())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/api.rs:22:47 [INFO] [stdout] | [INFO] [stdout] 22 | static GLOBAL_APP_LOCK: LazyLock> = LazyLock::new(|| Mutex::new(())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/constants.rs:6:33 [INFO] [stdout] | [INFO] [stdout] 6 | pub static PLATFORM_LOG_STRING: LazyLock> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app/constants.rs:6:81 [INFO] [stdout] | [INFO] [stdout] 6 | pub static PLATFORM_LOG_STRING: LazyLock> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/constants.rs:6:81 [INFO] [stdout] | [INFO] [stdout] 6 | pub static PLATFORM_LOG_STRING: LazyLock> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/heartbeat.rs:214:25 [INFO] [stdout] | [INFO] [stdout] 214 | static HEARTBEAT_STORE: LazyLock>> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app/heartbeat.rs:215:5 [INFO] [stdout] | [INFO] [stdout] 215 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/heartbeat.rs:215:5 [INFO] [stdout] | [INFO] [stdout] 215 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/logger.rs:5:20 [INFO] [stdout] | [INFO] [stdout] 5 | pub static LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/app")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app/logger.rs:5:39 [INFO] [stdout] | [INFO] [stdout] 5 | pub static LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/app")); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/logger.rs:5:39 [INFO] [stdout] | [INFO] [stdout] 5 | pub static LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/app")); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/registry.rs:14:18 [INFO] [stdout] | [INFO] [stdout] 14 | pub static APPS: LazyLock>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app/registry.rs:14:66 [INFO] [stdout] | [INFO] [stdout] 14 | pub static APPS: LazyLock>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/registry.rs:14:66 [INFO] [stdout] | [INFO] [stdout] 14 | pub static APPS: LazyLock>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/registry.rs:16:25 [INFO] [stdout] | [INFO] [stdout] 16 | pub static SERVER_APPS: LazyLock>> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app/registry.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/registry.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/app/types.rs:357:5 [INFO] [stdout] | [INFO] [stdout] 357 | options.api_key = string_value(map, "apiKey"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `app::types::FirebaseOptions { api_key: string_value(map, "apiKey"), auth_domain: string_value(map, "authDomain"), database_url: string_value(map, "databaseURL"), project_id: string_value(map, "projectId"), storage_bucket: string_value(map, "storageBucket"), messaging_sender_id: string_value(map, "messagingSenderId"), app_id: string_value(map, "appId"), measurement_id: string_value(map, "measurementId") }` and removing relevant reassignments [INFO] [stdout] --> src/app/types.rs:355:5 [INFO] [stdout] | [INFO] [stdout] 355 | let mut options = FirebaseOptions::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] = note: `#[warn(clippy::field_reassign_with_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:34:18 [INFO] [stdout] | [INFO] [stdout] 34 | static REGISTRY: LazyLock, AppCheckRegistryEntry>>> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:37:29 [INFO] [stdout] | [INFO] [stdout] 37 | static APP_CHECK_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:37:44 [INFO] [stdout] | [INFO] [stdout] 37 | static APP_CHECK_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:37:44 [INFO] [stdout] | [INFO] [stdout] 37 | static APP_CHECK_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:47:38 [INFO] [stdout] | [INFO] [stdout] 47 | static APP_CHECK_INTERNAL_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:47:53 [INFO] [stdout] | [INFO] [stdout] 47 | static APP_CHECK_INTERNAL_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:47:53 [INFO] [stdout] | [INFO] [stdout] 47 | static APP_CHECK_INTERNAL_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 58 | LazyLock::force(&APP_CHECK_COMPONENT); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 58 | LazyLock::force(&APP_CHECK_COMPONENT); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 59 | LazyLock::force(&APP_CHECK_INTERNAL_COMPONENT); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 59 | LazyLock::force(&APP_CHECK_INTERNAL_COMPONENT); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/client.rs:22:27 [INFO] [stdout] | [INFO] [stdout] 22 | static EXCHANGE_OVERRIDE: LazyLock>> = LazyLock::new(|| Mutex::new(None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app_check/client.rs:22:70 [INFO] [stdout] | [INFO] [stdout] 22 | static EXCHANGE_OVERRIDE: LazyLock>> = LazyLock::new(|| Mutex::new(None)); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/client.rs:22:70 [INFO] [stdout] | [INFO] [stdout] 22 | static EXCHANGE_OVERRIDE: LazyLock>> = LazyLock::new(|| Mutex::new(None)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/logger.rs:5:20 [INFO] [stdout] | [INFO] [stdout] 5 | pub static LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/app-check")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app_check/logger.rs:5:39 [INFO] [stdout] | [INFO] [stdout] 5 | pub static LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/app-check")); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/logger.rs:5:39 [INFO] [stdout] | [INFO] [stdout] 5 | pub static LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/app-check")); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/recaptcha.rs:27:25 [INFO] [stdout] | [INFO] [stdout] 27 | static DRIVER_OVERRIDE: LazyLock>>> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app_check/recaptcha.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | LazyLock::new(|| Mutex::new(None)); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/recaptcha.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | LazyLock::new(|| Mutex::new(None)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/recaptcha.rs:35:24 [INFO] [stdout] | [INFO] [stdout] 35 | static DEFAULT_DRIVER: LazyLock> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: you may want to conditionally increase the MSRV considered by Clippy using the `clippy::msrv` attribute [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app_check/recaptcha.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | LazyLock::new(|| Arc::new(UnsupportedRecaptchaDriver) as Arc); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/recaptcha.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | LazyLock::new(|| Arc::new(UnsupportedRecaptchaDriver) as Arc); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/state.rs:15:16 [INFO] [stdout] | [INFO] [stdout] 15 | static STATES: LazyLock, AppCheckState>>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app_check/state.rs:15:68 [INFO] [stdout] | [INFO] [stdout] 15 | static STATES: LazyLock, AppCheckState>>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/state.rs:15:68 [INFO] [stdout] | [INFO] [stdout] 15 | static STATES: LazyLock, AppCheckState>>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/auth/api/core/account.rs:361:36 [INFO] [stdout] | [INFO] [stdout] 361 | let url = identity_toolkit_url(&endpoint, "accounts:update", &api_key); [INFO] [stdout] | ^^^^^^^^^ help: change this to: `endpoint` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/auth/api/core/account.rs:361:66 [INFO] [stdout] | [INFO] [stdout] 361 | let url = identity_toolkit_url(&endpoint, "accounts:update", &api_key); [INFO] [stdout] | ^^^^^^^^ help: change this to: `api_key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/auth/api/core/mod.rs:247:13 [INFO] [stdout] | [INFO] [stdout] 247 | context.local_id = Some(response.local_id.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `auth::types::MultiFactorSignInContext { local_id: Some(response.local_id.clone()), email: Some(response.email.clone()), provider_id: Some(EmailAuthProvider::PROVIDER_ID.to_string()), anonymous: false, ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/auth/api/core/mod.rs:246:13 [INFO] [stdout] | [INFO] [stdout] 246 | let mut context = MultiFactorSignInContext::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/auth/api/core/mod.rs:286:9 [INFO] [stdout] | [INFO] [stdout] 286 | request.email = Some(email.to_owned()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `auth::model::SignUpRequest { email: Some(email.to_owned()), password: Some(password.to_owned()), return_secure_token: Some(true), ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/auth/api/core/mod.rs:285:9 [INFO] [stdout] | [INFO] [stdout] 285 | let mut request = SignUpRequest::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/auth/api/core/mod.rs:347:13 [INFO] [stdout] | [INFO] [stdout] 347 | context.local_id = response.local_id.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `auth::types::MultiFactorSignInContext { local_id: response.local_id.clone(), email: response.email.clone(), provider_id: Some("custom".to_string()), anonymous: false, ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/auth/api/core/mod.rs:346:13 [INFO] [stdout] | [INFO] [stdout] 346 | let mut context = MultiFactorSignInContext::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/auth/api/core/mod.rs:421:9 [INFO] [stdout] | [INFO] [stdout] 421 | request.return_secure_token = Some(true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `auth::model::SignUpRequest { return_secure_token: Some(true), ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/auth/api/core/mod.rs:420:9 [INFO] [stdout] | [INFO] [stdout] 420 | let mut request = SignUpRequest::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `unwrap_or_else` to construct default value [INFO] [stdout] --> src/auth/api/core/mod.rs:1321:14 [INFO] [stdout] | [INFO] [stdout] 1321 | .unwrap_or_else(Vec::new); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] = note: `#[warn(clippy::unwrap_or_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/auth/api/core/mod.rs:1341:9 [INFO] [stdout] | [INFO] [stdout] 1341 | request.session_info = Some(session_info); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `auth::api::core::phone::SignInWithPhoneNumberRequest { session_info: Some(session_info), code: Some(verification_code), ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/auth/api/core/mod.rs:1340:9 [INFO] [stdout] | [INFO] [stdout] 1340 | let mut request = SignInWithPhoneNumberRequest::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/auth/api/core/mod.rs:1391:13 [INFO] [stdout] | [INFO] [stdout] 1391 | context.local_id = local_id.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `auth::types::MultiFactorSignInContext { local_id: local_id.clone(), phone_number: phone_number.clone(), provider_id: Some(PHONE_PROVIDER_ID.to_string()), is_new_user: is_new_user, ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/auth/api/core/mod.rs:1390:13 [INFO] [stdout] | [INFO] [stdout] 1390 | let mut context = MultiFactorSignInContext::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/auth/api/core/mod.rs:1692:13 [INFO] [stdout] | [INFO] [stdout] 1692 | context.local_id = response.local_id.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `auth::types::MultiFactorSignInContext { local_id: response.local_id.clone(), email: response.email.clone().or_else(|| Some(email.to_owned())), provider_id: Some(EmailAuthProvider::PROVIDER_ID.to_string()), anonymous: false, ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/auth/api/core/mod.rs:1691:13 [INFO] [stdout] | [INFO] [stdout] 1691 | let mut context = MultiFactorSignInContext::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/auth/api/core/mod.rs:1950:13 [INFO] [stdout] | [INFO] [stdout] 1950 | context.local_id = response.local_id.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `auth::types::MultiFactorSignInContext { local_id: response.local_id.clone(), email: response.email.clone(), provider_id: response [INFO] [stdout] .provider_id [INFO] [stdout] .clone() [INFO] [stdout] .or_else(|| Some(oauth_credential.provider_id().to_string())), is_new_user: match operation { [INFO] [stdout] MultiFactorOperation::SignIn => response.is_new_user, [INFO] [stdout] _ => Some(false), [INFO] [stdout] }, ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/auth/api/core/mod.rs:1949:13 [INFO] [stdout] | [INFO] [stdout] 1949 | let mut context = MultiFactorSignInContext::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/auth/api/core/mod.rs:2051:13 [INFO] [stdout] | [INFO] [stdout] 2051 | context.local_id = Some(response.local_id.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `auth::types::MultiFactorSignInContext { local_id: Some(response.local_id.clone()), email: Some(response.email.clone()), provider_id: Some(EmailAuthProvider::PROVIDER_ID.to_string()), anonymous: false, ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/auth/api/core/mod.rs:2050:13 [INFO] [stdout] | [INFO] [stdout] 2050 | let mut context = MultiFactorSignInContext::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant guard [INFO] [stdout] --> src/auth/api/core/mod.rs:2321:28 [INFO] [stdout] | [INFO] [stdout] 2321 | Some(value) if value.is_empty() => None, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_guards [INFO] [stdout] = note: `#[warn(clippy::redundant_guards)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 2321 - Some(value) if value.is_empty() => None, [INFO] [stdout] 2321 + Some("") => None, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant guard [INFO] [stdout] --> src/auth/api/core/mod.rs:2327:28 [INFO] [stdout] | [INFO] [stdout] 2327 | Some(value) if value.is_empty() => None, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_guards [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 2327 - Some(value) if value.is_empty() => None, [INFO] [stdout] 2327 + Some("") => None, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/auth/api/core/mod.rs:2518:24 [INFO] [stdout] | [INFO] [stdout] 2518 | static REGISTERED: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/auth/api/core/mod.rs:2518:39 [INFO] [stdout] | [INFO] [stdout] 2518 | static REGISTERED: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/auth/api/core/mod.rs:2518:39 [INFO] [stdout] | [INFO] [stdout] 2518 | static REGISTERED: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/auth/api/core/mod.rs:2523:5 [INFO] [stdout] | [INFO] [stdout] 2523 | LazyLock::force(®ISTERED); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/auth/api/core/mod.rs:2523:5 [INFO] [stdout] | [INFO] [stdout] 2523 | LazyLock::force(®ISTERED); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `new` usually return `Self` [INFO] [stdout] --> src/auth/oauth/providers.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | fn new() -> OAuthProvider; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stdout] = note: `#[warn(clippy::new_ret_no_self)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/auth/types.rs:400:1 [INFO] [stdout] | [INFO] [stdout] 400 | / impl Default for MultiFactorSignInContext { [INFO] [stdout] 401 | | fn default() -> Self { [INFO] [stdout] 402 | | Self { [INFO] [stdout] 403 | | local_id: None, [INFO] [stdout] ... | [INFO] [stdout] 411 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] help: replace the manual implementation with a derive attribute [INFO] [stdout] | [INFO] [stdout] 391 + #[derive(Default)] [INFO] [stdout] 392 | pub(crate) struct MultiFactorSignInContext { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/component/mod.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | mod component; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] = note: `#[warn(clippy::module_inception)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/component/mod.rs:19:27 [INFO] [stdout] | [INFO] [stdout] 19 | static GLOBAL_COMPONENTS: LazyLock, Component>>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/component/mod.rs:19:75 [INFO] [stdout] | [INFO] [stdout] 19 | static GLOBAL_COMPONENTS: LazyLock, Component>>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/component/mod.rs:19:75 [INFO] [stdout] | [INFO] [stdout] 19 | static GLOBAL_COMPONENTS: LazyLock, Component>>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/data_connect/api.rs:34:28 [INFO] [stdout] | [INFO] [stdout] 34 | static DATA_CONNECT_CACHE: LazyLock>>> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] = note: `#[warn(clippy::type_complexity)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/data_connect/api.rs:34:28 [INFO] [stdout] | [INFO] [stdout] 34 | static DATA_CONNECT_CACHE: LazyLock>>> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/data_connect/api.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/data_connect/api.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/data_connect/api.rs:43:29 [INFO] [stdout] | [INFO] [stdout] 43 | static QUERY_MANAGER_CACHE: LazyLock>> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/data_connect/api.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/data_connect/api.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/data_connect/api.rs:226:23 [INFO] [stdout] | [INFO] [stdout] 226 | .and_then(|snapshot| cache_from_serialized(snapshot)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `cache_from_serialized` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/data_connect/api.rs:349:19 [INFO] [stdout] | [INFO] [stdout] 349 | .and_then(|snapshot| cache_from_serialized(snapshot)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `cache_from_serialized` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `if let` since only the `Some` variant of the iterator element is used [INFO] [stdout] --> src/data_connect/query.rs:305:9 [INFO] [stdout] | [INFO] [stdout] 305 | / for maybe_handler in subscribers { [INFO] [stdout] 306 | | if let Some(handler) = maybe_handler { [INFO] [stdout] 307 | | handler(&error); [INFO] [stdout] 308 | | } [INFO] [stdout] 309 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] help: try `.flatten()` and remove the `if let` statement in the for loop [INFO] [stdout] --> src/data_connect/query.rs:306:13 [INFO] [stdout] | [INFO] [stdout] 306 | / if let Some(handler) = maybe_handler { [INFO] [stdout] 307 | | handler(&error); [INFO] [stdout] 308 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_flatten [INFO] [stdout] = note: `#[warn(clippy::manual_flatten)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 305 ~ for handler in subscribers.into_iter().flatten() { [INFO] [stdout] 306 + handler(&error); [INFO] [stdout] 307 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/data_connect/transport.rs:26:1 [INFO] [stdout] | [INFO] [stdout] 26 | / impl Default for CallerSdkType { [INFO] [stdout] 27 | | fn default() -> Self { [INFO] [stdout] 28 | | CallerSdkType::Base [INFO] [stdout] 29 | | } [INFO] [stdout] 30 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] help: replace the manual implementation with a derive attribute and mark the default variant [INFO] [stdout] | [INFO] [stdout] 17 + #[derive(Default)] [INFO] [stdout] 18 | pub enum CallerSdkType { [INFO] [stdout] 19 ~ #[default] [INFO] [stdout] 20 ~ Base, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/data_connect/transport.rs:215:72 [INFO] [stdout] | [INFO] [stdout] 215 | ... Value::Number(num) => num.as_i64().map(|idx| DataConnectErrorPathSegment::Index(idx)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `DataConnectErrorPathSegment::Index` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/api.rs:24:25 [INFO] [stdout] | [INFO] [stdout] 24 | static REALTIME_LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/database/realtime")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/database/api.rs:24:44 [INFO] [stdout] | [INFO] [stdout] 24 | static REALTIME_LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/database/realtime")); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/api.rs:24:44 [INFO] [stdout] | [INFO] [stdout] 24 | static REALTIME_LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/database/realtime")); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/database/api.rs:516:31 [INFO] [stdout] | [INFO] [stdout] 516 | reference.run_transaction(|value| update(value)).await [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `update` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/database/api.rs:782:17 [INFO] [stdout] | [INFO] [stdout] 782 | let mut listeners = self.inner.listeners.lock().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/database/api.rs:785:43 [INFO] [stdout] | [INFO] [stdout] 785 | let _ = self.go_offline().await; [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the following explicit lifetimes could be elided: 'a [INFO] [stdout] --> src/database/api.rs:1636:21 [INFO] [stdout] | [INFO] [stdout] 1636 | fn extract_data_ref<'a>(value: &'a Value) -> &'a Value { [INFO] [stdout] | ^^ ^^ ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stdout] = note: `#[warn(clippy::needless_lifetimes)]` on by default [INFO] [stdout] help: elide the lifetimes [INFO] [stdout] | [INFO] [stdout] 1636 - fn extract_data_ref<'a>(value: &'a Value) -> &'a Value { [INFO] [stdout] 1636 + fn extract_data_ref(value: &Value) -> &Value { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/api.rs:1808:28 [INFO] [stdout] | [INFO] [stdout] 1808 | static DATABASE_COMPONENT: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/database/api.rs:1808:50 [INFO] [stdout] | [INFO] [stdout] 1808 | static DATABASE_COMPONENT: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/api.rs:1808:50 [INFO] [stdout] | [INFO] [stdout] 1808 | static DATABASE_COMPONENT: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/api.rs:1829:21 [INFO] [stdout] | [INFO] [stdout] 1829 | let component = LazyLock::force(&DATABASE_COMPONENT).clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/api.rs:1829:21 [INFO] [stdout] | [INFO] [stdout] 1829 | let component = LazyLock::force(&DATABASE_COMPONENT).clone(); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/api.rs:1838:21 [INFO] [stdout] | [INFO] [stdout] 1838 | let component = LazyLock::force(&DATABASE_COMPONENT).clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/api.rs:1838:21 [INFO] [stdout] | [INFO] [stdout] 1838 | let component = LazyLock::force(&DATABASE_COMPONENT).clone(); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `unwrap_or_else` to construct default value [INFO] [stdout] --> src/database/backend.rs:254:51 [INFO] [stdout] | [INFO] [stdout] 254 | message.map(|b| format!(": {b}")).unwrap_or_else(String::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> src/database/backend.rs:318:9 [INFO] [stdout] | [INFO] [stdout] 318 | / let mut params = Vec::with_capacity(1); [INFO] [stdout] 319 | | params.push(("print".to_string(), "silent".to_string())); [INFO] [stdout] | |_________________________________________________________________^ help: consider using the `vec![]` macro: `let params = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] = note: `#[warn(clippy::vec_init_then_push)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> src/database/backend.rs:344:9 [INFO] [stdout] | [INFO] [stdout] 344 | / let mut params = Vec::with_capacity(1); [INFO] [stdout] 345 | | params.push(("print".to_string(), "silent".to_string())); [INFO] [stdout] | |_________________________________________________________________^ help: consider using the `vec![]` macro: `let params = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> src/database/backend.rs:353:9 [INFO] [stdout] | [INFO] [stdout] 353 | / let mut params = Vec::with_capacity(1); [INFO] [stdout] 354 | | params.push(("print".to_string(), "silent".to_string())); [INFO] [stdout] | |_________________________________________________________________^ help: consider using the `vec![]` macro: `let params = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/backend.rs:473:16 [INFO] [stdout] | [INFO] [stdout] 473 | static LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/database")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/database/backend.rs:473:35 [INFO] [stdout] | [INFO] [stdout] 473 | static LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/database")); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/backend.rs:473:35 [INFO] [stdout] | [INFO] [stdout] 473 | static LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/database")); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/push_id.rs:20:20 [INFO] [stdout] | [INFO] [stdout] 20 | static PUSH_STATE: LazyLock> = LazyLock::new(|| Mutex::new(PushState::new())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/database/push_id.rs:20:49 [INFO] [stdout] | [INFO] [stdout] 20 | static PUSH_STATE: LazyLock> = LazyLock::new(|| Mutex::new(PushState::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/push_id.rs:20:49 [INFO] [stdout] | [INFO] [stdout] 20 | static PUSH_STATE: LazyLock> = LazyLock::new(|| Mutex::new(PushState::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `default` to create a unit struct [INFO] [stdout] --> src/database/realtime/mod.rs:293:14 [INFO] [stdout] | [INFO] [stdout] 293 | Arc::new(NoopTransport::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs [INFO] [stdout] = note: `#[warn(clippy::default_constructed_unit_structs)]` on by default [INFO] [stdout] help: remove this call to `default` [INFO] [stdout] | [INFO] [stdout] 293 - Arc::new(NoopTransport::default()) [INFO] [stdout] 293 + Arc::new(NoopTransport) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/realtime/mod.rs:408:27 [INFO] [stdout] | [INFO] [stdout] 408 | static NATIVE_LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/database/native_websocket")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/database/realtime/mod.rs:408:46 [INFO] [stdout] | [INFO] [stdout] 408 | static NATIVE_LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/database/native_websocket")); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/realtime/mod.rs:408:46 [INFO] [stdout] | [INFO] [stdout] 408 | static NATIVE_LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/database/native_websocket")); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `from_*` usually take no `self` [INFO] [stdout] --> src/firestore/api/converter.rs:19:17 [INFO] [stdout] | [INFO] [stdout] 19 | fn from_map(&self, value: &MapValue) -> FirestoreResult; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider choosing a less ambiguous name [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stdout] = note: `#[warn(clippy::wrong_self_convention)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/firestore/api/database.rs:84:29 [INFO] [stdout] | [INFO] [stdout] 84 | static FIRESTORE_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/firestore/api/database.rs:84:44 [INFO] [stdout] | [INFO] [stdout] 84 | static FIRESTORE_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/firestore/api/database.rs:84:44 [INFO] [stdout] | [INFO] [stdout] 84 | static FIRESTORE_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/firestore/api/database.rs:141:5 [INFO] [stdout] | [INFO] [stdout] 141 | LazyLock::force(&FIRESTORE_COMPONENT); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/firestore/api/database.rs:141:5 [INFO] [stdout] | [INFO] [stdout] 141 | LazyLock::force(&FIRESTORE_COMPONENT); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/firestore/api/operations.rs:175:6 [INFO] [stdout] | [INFO] [stdout] 175 | ) -> FirestoreResult<(BTreeMap, Vec, Vec)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> src/firestore/api/operations.rs:280:9 [INFO] [stdout] | [INFO] [stdout] 280 | / let mut segments = Vec::new(); [INFO] [stdout] 281 | | segments.push(key.clone()); [INFO] [stdout] | |___________________________________^ help: consider using the `vec![]` macro: `let segments = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` can be collapsed into the outer `match` [INFO] [stdout] --> src/firestore/api/query.rs:424:17 [INFO] [stdout] | [INFO] [stdout] 424 | / if is_nan(value) { [INFO] [stdout] 425 | | return Err(invalid_argument("Invalid query. You cannot use '!=' filters with NaN values.")); [INFO] [stdout] 426 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] = note: `#[warn(clippy::collapsible_match)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 423 ~ FilterOperator::NotEqual [INFO] [stdout] 424 ~ if is_nan(value) => { [INFO] [stdout] 425 | return Err(invalid_argument("Invalid query. You cannot use '!=' filters with NaN values.")); [INFO] [stdout] 426 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded cloning of iterator items [INFO] [stdout] --> src/firestore/api/query.rs:1177:9 [INFO] [stdout] | [INFO] [stdout] 1177 | / self.base [INFO] [stdout] 1178 | | .doc_changes() [INFO] [stdout] 1179 | | .iter() [INFO] [stdout] 1180 | | .cloned() [INFO] [stdout] ... | [INFO] [stdout] 1183 | | TypedQueryDocumentChange::new(change.change_type, typed_doc, change.old_index, change.new_index) [INFO] [stdout] 1184 | | }) [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_iter_cloned [INFO] [stdout] = note: `#[warn(clippy::redundant_iter_cloned)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 1179 ~ .iter() [INFO] [stdout] 1180 + .map(|change| { [INFO] [stdout] 1181 + let typed_doc = change.doc.clone().into_typed(Arc::clone(&converter)); [INFO] [stdout] 1182 + TypedQueryDocumentChange::new(change.change_type, typed_doc, change.old_index, change.new_index) [INFO] [stdout] 1183 + }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `MemoryLocalStore` [INFO] [stdout] --> src/firestore/local/memory.rs:164:5 [INFO] [stdout] | [INFO] [stdout] 164 | / pub fn new() -> Self { [INFO] [stdout] 165 | | Self::new_internal(None) [INFO] [stdout] 166 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] = note: `#[warn(clippy::new_without_default)]` on by default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 142 + impl Default for MemoryLocalStore { [INFO] [stdout] 143 + fn default() -> Self { [INFO] [stdout] 144 + Self::new() [INFO] [stdout] 145 + } [INFO] [stdout] 146 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> src/firestore/local/memory.rs:581:18 [INFO] [stdout] | [INFO] [stdout] 581 | .or_insert_with(Vec::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` [INFO] [stdout] --> src/firestore/local/memory.rs:908:58 [INFO] [stdout] | [INFO] [stdout] 908 | for key in added_documents.into_iter().chain(modified_documents.into_iter()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` [INFO] [stdout] --> /rustc/91021ccc790478a1a89c003e7d32b8d155ae6aae/library/core/src/iter/traits/iterator.rs:510:11 [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] = note: `#[warn(clippy::useless_conversion)]` on by default [INFO] [stdout] help: consider removing the `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 908 - for key in added_documents.into_iter().chain(modified_documents.into_iter()) { [INFO] [stdout] 908 + for key in added_documents.into_iter().chain(modified_documents) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the following explicit lifetimes could be elided: 'a [INFO] [stdout] --> src/firestore/model/field_path.rs:65:6 [INFO] [stdout] | [INFO] [stdout] 65 | impl<'a> IntoFieldPath for &'a FieldPath { [INFO] [stdout] | ^^ ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stdout] help: elide the lifetimes [INFO] [stdout] | [INFO] [stdout] 65 - impl<'a> IntoFieldPath for &'a FieldPath { [INFO] [stdout] 65 + impl IntoFieldPath for &FieldPath { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the following explicit lifetimes could be elided: 'a [INFO] [stdout] --> src/firestore/model/field_path.rs:77:6 [INFO] [stdout] | [INFO] [stdout] 77 | impl<'a> IntoFieldPath for &'a str { [INFO] [stdout] | ^^ ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stdout] help: elide the lifetimes [INFO] [stdout] | [INFO] [stdout] 77 - impl<'a> IntoFieldPath for &'a str { [INFO] [stdout] 77 + impl IntoFieldPath for &str { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `default` to create a unit struct [INFO] [stdout] --> src/firestore/remote/network/mod.rs:218:41 [INFO] [stdout] | [INFO] [stdout] 218 | .unwrap_or_else(|| Arc::new(NoopTokenProvider::default()) as TokenProviderArc); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs [INFO] [stdout] help: remove this call to `default` [INFO] [stdout] | [INFO] [stdout] 218 - .unwrap_or_else(|| Arc::new(NoopTokenProvider::default()) as TokenProviderArc); [INFO] [stdout] 218 + .unwrap_or_else(|| Arc::new(NoopTokenProvider) as TokenProviderArc); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/firestore/remote/remote_store.rs:60:1 [INFO] [stdout] | [INFO] [stdout] 60 | / impl Default for RemoteStoreState { [INFO] [stdout] 61 | | fn default() -> Self { [INFO] [stdout] 62 | | Self { [INFO] [stdout] 63 | | listen_targets: BTreeMap::new(), [INFO] [stdout] ... | [INFO] [stdout] 73 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] help: replace the manual implementation with a derive attribute [INFO] [stdout] | [INFO] [stdout] 49 + #[derive(Default)] [INFO] [stdout] 50 | struct RemoteStoreState { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/firestore/remote/remote_store.rs:430:10 [INFO] [stdout] | [INFO] [stdout] 430 | ) -> ( [INFO] [stdout] | __________^ [INFO] [stdout] 431 | | Option>>, [INFO] [stdout] 432 | | Option>>, [INFO] [stdout] 433 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/firestore/remote/remote_store.rs:447:18 [INFO] [stdout] | [INFO] [stdout] 447 | streams: ( [INFO] [stdout] | __________________^ [INFO] [stdout] 448 | | Option>>, [INFO] [stdout] 449 | | Option>>, [INFO] [stdout] 450 | | ), [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `Option` which implements the `Copy` trait [INFO] [stdout] --> src/firestore/remote/remote_store.rs:557:46 [INFO] [stdout] | [INFO] [stdout] 557 | WatchChange::TargetChange(change) => change.read_time.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `change.read_time` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] = note: `#[warn(clippy::clone_on_copy)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `Option` which implements the `Copy` trait [INFO] [stdout] --> src/firestore/remote/remote_store.rs:558:74 [INFO] [stdout] | [INFO] [stdout] 558 | WatchChange::DocumentDelete(DocumentDelete { read_time, .. }) => read_time.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*read_time` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `Option` which implements the `Copy` trait [INFO] [stdout] --> src/firestore/remote/remote_store.rs:559:74 [INFO] [stdout] | [INFO] [stdout] 559 | WatchChange::DocumentRemove(DocumentRemove { read_time, .. }) => read_time.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*read_time` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/firestore/remote/syncer_bridge.rs:109:13 [INFO] [stdout] | [INFO] [stdout] 109 | update.added_documents = keys; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `firestore::remote::syncer_bridge::TargetMetadataUpdate { added_documents: keys, ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/firestore/remote/syncer_bridge.rs:108:13 [INFO] [stdout] | [INFO] [stdout] 108 | let mut update = TargetMetadataUpdate::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/functions/api.rs:280:29 [INFO] [stdout] | [INFO] [stdout] 280 | static FUNCTIONS_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/functions/api.rs:280:44 [INFO] [stdout] | [INFO] [stdout] 280 | static FUNCTIONS_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/functions/api.rs:280:44 [INFO] [stdout] | [INFO] [stdout] 280 | static FUNCTIONS_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/functions/api.rs:304:5 [INFO] [stdout] | [INFO] [stdout] 304 | LazyLock::force(&FUNCTIONS_COMPONENT); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/functions/api.rs:304:5 [INFO] [stdout] | [INFO] [stdout] 304 | LazyLock::force(&FUNCTIONS_COMPONENT); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match can be simplified with `.unwrap_or_default()` [INFO] [stdout] --> src/functions/context.rs:165:25 [INFO] [stdout] | [INFO] [stdout] 165 | let heartbeat = match app_check.heartbeat_header().await { [INFO] [stdout] | _________________________^ [INFO] [stdout] 166 | | Ok(header) => header, [INFO] [stdout] 167 | | Err(_) => None, [INFO] [stdout] 168 | | }; [INFO] [stdout] | |_________^ help: ascribe the type std::option::Option and replace your expression with: `app_check.heartbeat_header().await.unwrap_or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_unwrap_or_default [INFO] [stdout] = note: `#[warn(clippy::manual_unwrap_or_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if let` can be collapsed into the outer `if let` [INFO] [stdout] --> src/functions/error.rs:136:13 [INFO] [stdout] | [INFO] [stdout] 136 | / if let JsonValue::Object(error_obj) = error_value { [INFO] [stdout] 137 | | if let Some(JsonValue::String(status_label)) = error_obj.get("status") { [INFO] [stdout] 138 | | match code_for_backend_status(status_label) { [INFO] [stdout] 139 | | Some(mapped) => { [INFO] [stdout] ... | [INFO] [stdout] 159 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/functions/error.rs:135:21 [INFO] [stdout] | [INFO] [stdout] 135 | if let Some(error_value) = map.get("error") { [INFO] [stdout] | ^^^^^^^^^^^ replace this binding [INFO] [stdout] 136 | if let JsonValue::Object(error_obj) = error_value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/functions/transport.rs:44:19 [INFO] [stdout] | [INFO] [stdout] 44 | static TRANSPORT: LazyLock = LazyLock::new(NativeCallableTransport::new); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/functions/transport.rs:44:55 [INFO] [stdout] | [INFO] [stdout] 44 | static TRANSPORT: LazyLock = LazyLock::new(NativeCallableTransport::new); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/functions/transport.rs:44:55 [INFO] [stdout] | [INFO] [stdout] 44 | static TRANSPORT: LazyLock = LazyLock::new(NativeCallableTransport::new); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/functions/transport.rs:80:24 [INFO] [stdout] | [INFO] [stdout] 80 | static CLIENT: LazyLock = [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/functions/transport.rs:81:13 [INFO] [stdout] | [INFO] [stdout] 81 | LazyLock::new(|| Client::builder().build().expect("Failed to construct reqwest client")); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/functions/transport.rs:81:13 [INFO] [stdout] | [INFO] [stdout] 81 | LazyLock::new(|| Client::builder().build().expect("Failed to construct reqwest client")); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/installations/api.rs:39:16 [INFO] [stdout] | [INFO] [stdout] 39 | listeners: StdMutex>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:145:29 [INFO] [stdout] | [INFO] [stdout] 145 | static INSTALLATIONS_CACHE: LazyLock>>> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:146:5 [INFO] [stdout] | [INFO] [stdout] 146 | LazyLock::new(|| StdMutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:146:5 [INFO] [stdout] | [INFO] [stdout] 146 | LazyLock::new(|| StdMutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:148:26 [INFO] [stdout] | [INFO] [stdout] 148 | static NEXT_LISTENER_ID: LazyLock = LazyLock::new(|| AtomicUsize::new(1)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:148:50 [INFO] [stdout] | [INFO] [stdout] 148 | static NEXT_LISTENER_ID: LazyLock = LazyLock::new(|| AtomicUsize::new(1)); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:148:50 [INFO] [stdout] | [INFO] [stdout] 148 | static NEXT_LISTENER_ID: LazyLock = LazyLock::new(|| AtomicUsize::new(1)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:446:33 [INFO] [stdout] | [INFO] [stdout] 446 | static INSTALLATIONS_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:446:48 [INFO] [stdout] | [INFO] [stdout] 446 | static INSTALLATIONS_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:446:48 [INFO] [stdout] | [INFO] [stdout] 446 | static INSTALLATIONS_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:456:42 [INFO] [stdout] | [INFO] [stdout] 456 | static INSTALLATIONS_INTERNAL_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:456:57 [INFO] [stdout] | [INFO] [stdout] 456 | static INSTALLATIONS_INTERNAL_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:456:57 [INFO] [stdout] | [INFO] [stdout] 456 | static INSTALLATIONS_INTERNAL_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:484:5 [INFO] [stdout] | [INFO] [stdout] 484 | LazyLock::force(&INSTALLATIONS_COMPONENT); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:484:5 [INFO] [stdout] | [INFO] [stdout] 484 | LazyLock::force(&INSTALLATIONS_COMPONENT); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:485:5 [INFO] [stdout] | [INFO] [stdout] 485 | LazyLock::force(&INSTALLATIONS_INTERNAL_COMPONENT); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:485:5 [INFO] [stdout] | [INFO] [stdout] 485 | LazyLock::force(&INSTALLATIONS_INTERNAL_COMPONENT); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `default` can be confused for the standard trait method `std::default::Default::default` [INFO] [stdout] --> src/installations/persistence.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / pub fn default() -> InstallationsResult { [INFO] [stdout] 90 | | if let Ok(dir) = std::env::var("FIREBASE_INSTALLATIONS_CACHE_DIR") { [INFO] [stdout] 91 | | return Self::new(PathBuf::from(dir)); [INFO] [stdout] ... | [INFO] [stdout] 97 | | Self::new(dir) [INFO] [stdout] 98 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: consider implementing the trait `std::default::Default` or choosing a less ambiguous method name [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait [INFO] [stdout] = note: `#[warn(clippy::should_implement_trait)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/logger/mod.rs:10:19 [INFO] [stdout] | [INFO] [stdout] 10 | static INSTANCES: LazyLock>>> = LazyLock::new(|| Mutex::new(Vec::new())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/logger/mod.rs:10:61 [INFO] [stdout] | [INFO] [stdout] 10 | static INSTANCES: LazyLock>>> = LazyLock::new(|| Mutex::new(Vec::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/logger/mod.rs:10:61 [INFO] [stdout] | [INFO] [stdout] 10 | static INSTANCES: LazyLock>>> = LazyLock::new(|| Mutex::new(Vec::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/messaging/api.rs:260:29 [INFO] [stdout] | [INFO] [stdout] 260 | static MESSAGING_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/messaging/api.rs:260:44 [INFO] [stdout] | [INFO] [stdout] 260 | static MESSAGING_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/messaging/api.rs:260:44 [INFO] [stdout] | [INFO] [stdout] 260 | static MESSAGING_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/messaging/api.rs:281:5 [INFO] [stdout] | [INFO] [stdout] 281 | LazyLock::force(&MESSAGING_COMPONENT); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/messaging/api.rs:281:5 [INFO] [stdout] | [INFO] [stdout] 281 | LazyLock::force(&MESSAGING_COMPONENT); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/performance/api.rs:853:31 [INFO] [stdout] | [INFO] [stdout] 853 | static PERFORMANCE_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/performance/api.rs:853:46 [INFO] [stdout] | [INFO] [stdout] 853 | static PERFORMANCE_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/performance/api.rs:853:46 [INFO] [stdout] | [INFO] [stdout] 853 | static PERFORMANCE_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/performance/api.rs:885:5 [INFO] [stdout] | [INFO] [stdout] 885 | LazyLock::force(&PERFORMANCE_COMPONENT); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/performance/api.rs:885:5 [INFO] [stdout] | [INFO] [stdout] 885 | LazyLock::force(&PERFORMANCE_COMPONENT); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/performance/transport.rs:178:9 [INFO] [stdout] | [INFO] [stdout] 178 | return "native".into(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 178 - return "native".into(); [INFO] [stdout] 178 + "native".into() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/platform/runtime.rs:28:32 [INFO] [stdout] | [INFO] [stdout] 28 | static BACKGROUND_RUNTIME: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/platform/runtime.rs:28:52 [INFO] [stdout] | [INFO] [stdout] 28 | static BACKGROUND_RUNTIME: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/platform/runtime.rs:28:52 [INFO] [stdout] | [INFO] [stdout] 28 | static BACKGROUND_RUNTIME: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-binding `let` on a future [INFO] [stdout] --> src/platform/runtime.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | let _ = BACKGROUND_RUNTIME.spawn(future); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider awaiting the future or dropping explicitly with `std::mem::drop` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_underscore_future [INFO] [stdout] = note: `#[warn(clippy::let_underscore_future)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/remote_config/api.rs:65:29 [INFO] [stdout] | [INFO] [stdout] 65 | static REMOTE_CONFIG_CACHE: LazyLock>>> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/remote_config/api.rs:66:5 [INFO] [stdout] | [INFO] [stdout] 66 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/remote_config/api.rs:66:5 [INFO] [stdout] | [INFO] [stdout] 66 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/remote_config/api.rs:258:13 [INFO] [stdout] | [INFO] [stdout] 258 | let mut activated = self.inner.activated.lock().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/remote_config/api.rs:278:64 [INFO] [stdout] | [INFO] [stdout] 278 | self.inner.storage_cache.set_active_config(config).await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] 279 | self.inner.storage_cache.set_active_config_etag(etag).await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 283 | .await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/remote_config/api.rs:261:17 [INFO] [stdout] | [INFO] [stdout] 261 | let mut fetched = self.inner.fetched_config.lock().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/remote_config/api.rs:278:64 [INFO] [stdout] | [INFO] [stdout] 278 | self.inner.storage_cache.set_active_config(config).await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] 279 | self.inner.storage_cache.set_active_config_etag(etag).await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 283 | .await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/remote_config/api.rs:270:17 [INFO] [stdout] | [INFO] [stdout] 270 | let mut fetched_etag = self.inner.fetched_etag.lock().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/remote_config/api.rs:278:64 [INFO] [stdout] | [INFO] [stdout] 278 | self.inner.storage_cache.set_active_config(config).await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] 279 | self.inner.storage_cache.set_active_config_etag(etag).await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 283 | .await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/remote_config/api.rs:274:17 [INFO] [stdout] | [INFO] [stdout] 274 | let mut fetched_template_version = self.inner.fetched_template_version.lock().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/remote_config/api.rs:278:64 [INFO] [stdout] | [INFO] [stdout] 278 | self.inner.storage_cache.set_active_config(config).await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] 279 | self.inner.storage_cache.set_active_config_etag(etag).await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 283 | .await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `default` to create a unit struct [INFO] [stdout] --> src/remote_config/api.rs:431:22 [INFO] [stdout] | [INFO] [stdout] 431 | Arc::new(NoopFetchClient::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs [INFO] [stdout] help: remove this call to `default` [INFO] [stdout] | [INFO] [stdout] 431 - Arc::new(NoopFetchClient::default()) [INFO] [stdout] 431 + Arc::new(NoopFetchClient) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/remote_config/api.rs:477:9 [INFO] [stdout] | [INFO] [stdout] 477 | return Ok(Arc::new(fetch)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 477 - return Ok(Arc::new(fetch)); [INFO] [stdout] 477 + Ok(Arc::new(fetch)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/remote_config/api.rs:518:33 [INFO] [stdout] | [INFO] [stdout] 518 | static REMOTE_CONFIG_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/remote_config/api.rs:518:48 [INFO] [stdout] | [INFO] [stdout] 518 | static REMOTE_CONFIG_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/remote_config/api.rs:518:48 [INFO] [stdout] | [INFO] [stdout] 518 | static REMOTE_CONFIG_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/remote_config/api.rs:551:5 [INFO] [stdout] | [INFO] [stdout] 551 | LazyLock::force(&REMOTE_CONFIG_COMPONENT); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/remote_config/api.rs:551:5 [INFO] [stdout] | [INFO] [stdout] 551 | LazyLock::force(&REMOTE_CONFIG_COMPONENT); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/remote_config/storage.rs:39:1 [INFO] [stdout] | [INFO] [stdout] 39 | / impl Default for FetchStatus { [INFO] [stdout] 40 | | fn default() -> Self { [INFO] [stdout] 41 | | FetchStatus::NoFetchYet [INFO] [stdout] 42 | | } [INFO] [stdout] 43 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] help: replace the manual implementation with a derive attribute and mark the default variant [INFO] [stdout] | [INFO] [stdout] 32 + #[derive(Default)] [INFO] [stdout] 33 | pub enum FetchStatus { [INFO] [stdout] 34 ~ #[default] [INFO] [stdout] 35 ~ NoFetchYet, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/storage/api.rs:13:38 [INFO] [stdout] | [INFO] [stdout] 13 | static STORAGE_COMPONENT_REGISTERED: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/storage/api.rs:13:53 [INFO] [stdout] | [INFO] [stdout] 13 | static STORAGE_COMPONENT_REGISTERED: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/storage/api.rs:13:53 [INFO] [stdout] | [INFO] [stdout] 13 | static STORAGE_COMPONENT_REGISTERED: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/storage/api.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 50 | LazyLock::force(&STORAGE_COMPONENT_REGISTERED); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/storage/api.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 50 | LazyLock::force(&STORAGE_COMPONENT_REGISTERED); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/storage/reference.rs:120:13 [INFO] [stdout] | [INFO] [stdout] 120 | options.page_token = page_token.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `storage::list::ListOptions { page_token: page_token.clone(), ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/storage/reference.rs:119:13 [INFO] [stdout] | [INFO] [stdout] 119 | let mut options = ListOptions::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`usize` -> `usize`) [INFO] [stdout] --> src/storage/reference.rs:371:26 [INFO] [stdout] | [INFO] [stdout] 371 | let chunk_size = RESUMABLE_UPLOAD_CHUNK_SIZE as usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `RESUMABLE_UPLOAD_CHUNK_SIZE` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] = note: `#[warn(clippy::unnecessary_cast)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this can be `std::io::Error::other(_)` [INFO] [stdout] --> src/storage/request/transport.rs:244:28 [INFO] [stdout] | [INFO] [stdout] 244 | .map_err(|err| IoError::new(ErrorKind::Other, err)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#io_other_error [INFO] [stdout] = note: `#[warn(clippy::io_other_error)]` on by default [INFO] [stdout] help: use `std::io::Error::other` [INFO] [stdout] | [INFO] [stdout] 244 - .map_err(|err| IoError::new(ErrorKind::Other, err)); [INFO] [stdout] 244 + .map_err(|err| IoError::other(err)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/storage/string.rs:20:1 [INFO] [stdout] | [INFO] [stdout] 20 | / impl Default for StringFormat { [INFO] [stdout] 21 | | fn default() -> Self { [INFO] [stdout] 22 | | StringFormat::Raw [INFO] [stdout] 23 | | } [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] help: replace the manual implementation with a derive attribute and mark the default variant [INFO] [stdout] | [INFO] [stdout] 9 + #[derive(Default)] [INFO] [stdout] 10 | pub enum StringFormat { [INFO] [stdout] 11 | /// Interpret the input as UTF-8 text. [INFO] [stdout] 12 ~ #[default] [INFO] [stdout] 13 ~ Raw, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/util/runtime.rs:10:21 [INFO] [stdout] | [INFO] [stdout] 10 | static RUNTIME: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/util/runtime.rs:10:41 [INFO] [stdout] | [INFO] [stdout] 10 | static RUNTIME: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/util/runtime.rs:10:41 [INFO] [stdout] | [INFO] [stdout] 10 | static RUNTIME: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: sub-expression diverges [INFO] [stdout] --> examples/auth_oauth_redirect_desktop.rs:53:29 [INFO] [stdout] | [INFO] [stdout] 53 | let _app: FirebaseApp = todo!("Initialize Firebase app with your configuration"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#diverging_sub_expression [INFO] [stdout] = note: `#[warn(clippy::diverging_sub_expression)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/ai/api.rs:62:22 [INFO] [stdout] | [INFO] [stdout] 62 | static AI_OVERRIDES: LazyLock>>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] = note: `#[warn(clippy::incompatible_msrv)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/ai/api.rs:62:75 [INFO] [stdout] | [INFO] [stdout] 62 | static AI_OVERRIDES: LazyLock>>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/ai/api.rs:62:75 [INFO] [stdout] | [INFO] [stdout] 62 | static AI_OVERRIDES: LazyLock>>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/ai/api.rs:495:22 [INFO] [stdout] | [INFO] [stdout] 495 | static AI_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/ai/api.rs:495:37 [INFO] [stdout] | [INFO] [stdout] 495 | static AI_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/ai/api.rs:495:37 [INFO] [stdout] | [INFO] [stdout] 495 | static AI_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/ai/api.rs:516:14 [INFO] [stdout] | [INFO] [stdout] 516 | .map(|identifier| decode_instance_identifier(identifier)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `decode_instance_identifier` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] = note: `#[warn(clippy::redundant_closure)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/ai/api.rs:568:5 [INFO] [stdout] | [INFO] [stdout] 568 | LazyLock::force(&AI_COMPONENT); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/ai/api.rs:568:5 [INFO] [stdout] | [INFO] [stdout] 568 | LazyLock::force(&AI_COMPONENT); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/ai/error.rs:66:1 [INFO] [stdout] | [INFO] [stdout] 66 | / impl Default for ErrorDetails { [INFO] [stdout] 67 | | fn default() -> Self { [INFO] [stdout] 68 | | Self { [INFO] [stdout] 69 | | type_url: None, [INFO] [stdout] ... | [INFO] [stdout] 75 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] = note: `#[warn(clippy::derivable_impls)]` on by default [INFO] [stdout] help: replace the manual implementation with a derive attribute [INFO] [stdout] | [INFO] [stdout] 59 + #[derive(Default)] [INFO] [stdout] 60 | pub struct ErrorDetails { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this function has too many arguments (8/7) [INFO] [stdout] --> src/ai/requests.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | / pub fn new( [INFO] [stdout] 29 | | api_key: String, [INFO] [stdout] 30 | | project: String, [INFO] [stdout] 31 | | app_id: String, [INFO] [stdout] ... | [INFO] [stdout] 36 | | auth_token: Option, [INFO] [stdout] 37 | | ) -> Self { [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#too_many_arguments [INFO] [stdout] = note: `#[warn(clippy::too_many_arguments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `.as_ref().map(|value| value.as_str())` on an `Option` value [INFO] [stdout] --> src/ai/requests.rs:175:20 [INFO] [stdout] | [INFO] [stdout] 175 | let base = options [INFO] [stdout] | ____________________^ [INFO] [stdout] 176 | | .base_url [INFO] [stdout] 177 | | .as_ref() [INFO] [stdout] 178 | | .map(|value| value.as_str()) [INFO] [stdout] | |________________________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#option_as_ref_deref [INFO] [stdout] = note: `#[warn(clippy::option_as_ref_deref)]` on by default [INFO] [stdout] help: consider using as_deref [INFO] [stdout] | [INFO] [stdout] 175 ~ let base = options [INFO] [stdout] 176 + .base_url.as_deref() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/analytics/api.rs:118:13 [INFO] [stdout] | [INFO] [stdout] 118 | let mut events = self.inner.events.lock().unwrap(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/analytics/api.rs:126:37 [INFO] [stdout] | [INFO] [stdout] 126 | self.dispatch_event(&event).await [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] = note: `#[warn(clippy::await_holding_lock)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/analytics/api.rs:329:29 [INFO] [stdout] | [INFO] [stdout] 329 | static ANALYTICS_COMPONENT: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/analytics/api.rs:329:51 [INFO] [stdout] | [INFO] [stdout] 329 | static ANALYTICS_COMPONENT: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/analytics/api.rs:329:51 [INFO] [stdout] | [INFO] [stdout] 329 | static ANALYTICS_COMPONENT: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/analytics/api.rs:349:21 [INFO] [stdout] | [INFO] [stdout] 349 | let component = LazyLock::force(&ANALYTICS_COMPONENT).clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/analytics/api.rs:349:21 [INFO] [stdout] | [INFO] [stdout] 349 | let component = LazyLock::force(&ANALYTICS_COMPONENT).clone(); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/analytics/api.rs:383:28 [INFO] [stdout] | [INFO] [stdout] 383 | .set_component(LazyLock::force(&ANALYTICS_COMPONENT).clone()) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/analytics/api.rs:383:28 [INFO] [stdout] | [INFO] [stdout] 383 | .set_component(LazyLock::force(&ANALYTICS_COMPONENT).clone()) [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/analytics/api.rs:422:17 [INFO] [stdout] | [INFO] [stdout] 422 | events: Arc)>>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] = note: `#[warn(clippy::type_complexity)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/analytics/api.rs:457:13 [INFO] [stdout] | [INFO] [stdout] 457 | let _guard = gtag_test_guard(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/analytics/api.rs:465:68 [INFO] [stdout] | [INFO] [stdout] 465 | let app = initialize_app(options, Some(unique_settings())).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] 466 | let analytics = get_analytics(Some(app)).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 469 | analytics.log_event("test_event", params.clone()).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/analytics/api.rs:478:13 [INFO] [stdout] | [INFO] [stdout] 478 | let _guard = gtag_test_guard(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/analytics/api.rs:486:68 [INFO] [stdout] | [INFO] [stdout] 486 | let app = initialize_app(options, Some(unique_settings())).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] 487 | let analytics = get_analytics(Some(app)).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 492 | analytics.log_event("test", params).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/analytics/api.rs:502:13 [INFO] [stdout] | [INFO] [stdout] 502 | let _guard = gtag_test_guard(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/analytics/api.rs:510:68 [INFO] [stdout] | [INFO] [stdout] 510 | let app = initialize_app(options, Some(unique_settings())).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] 511 | let analytics = get_analytics(Some(app)).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 516 | analytics.log_event("test", params).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/analytics/api.rs:525:13 [INFO] [stdout] | [INFO] [stdout] 525 | let _guard = gtag_test_guard(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/analytics/api.rs:533:68 [INFO] [stdout] | [INFO] [stdout] 533 | let app = initialize_app(options, Some(unique_settings())).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] 534 | let analytics = get_analytics(Some(app)).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] 535 | [INFO] [stdout] 536 | let config = analytics.measurement_config().await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/analytics/api.rs:546:13 [INFO] [stdout] | [INFO] [stdout] 546 | let _guard = gtag_test_guard(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/analytics/api.rs:554:68 [INFO] [stdout] | [INFO] [stdout] 554 | let app = initialize_app(options, Some(unique_settings())).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] 555 | let analytics = get_analytics(Some(app)).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] 556 | [INFO] [stdout] 557 | runtime::yield_now().await; [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/analytics/api.rs:564:13 [INFO] [stdout] | [INFO] [stdout] 564 | let _guard = gtag_test_guard(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/analytics/api.rs:571:68 [INFO] [stdout] | [INFO] [stdout] 571 | let app = initialize_app(options, Some(unique_settings())).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] 572 | let analytics = get_analytics(Some(app)).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 576 | .await [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/analytics/api.rs:583:13 [INFO] [stdout] | [INFO] [stdout] 583 | let _guard = gtag_test_guard(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/analytics/api.rs:591:68 [INFO] [stdout] | [INFO] [stdout] 591 | let app = initialize_app(options, Some(unique_settings())).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] 592 | let analytics = get_analytics(Some(app)).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/analytics/api.rs:603:13 [INFO] [stdout] | [INFO] [stdout] 603 | let _guard = gtag_test_guard(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/analytics/api.rs:611:68 [INFO] [stdout] | [INFO] [stdout] 611 | let app = initialize_app(options, Some(unique_settings())).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] 612 | let analytics = get_analytics(Some(app)).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] 613 | analytics.measurement_config().await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/analytics/api.rs:626:13 [INFO] [stdout] | [INFO] [stdout] 626 | let _guard = gtag_test_guard(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/analytics/api.rs:634:68 [INFO] [stdout] | [INFO] [stdout] 634 | let app = initialize_app(options, Some(unique_settings())).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] 635 | let analytics = get_analytics(Some(app)).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 646 | analytics.measurement_config().await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/analytics/api.rs:663:13 [INFO] [stdout] | [INFO] [stdout] 663 | let _guard = gtag_test_guard(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/analytics/api.rs:672:68 [INFO] [stdout] | [INFO] [stdout] 672 | let app = initialize_app(options, Some(unique_settings())).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] 673 | let analytics = get_analytics(Some(app)).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 682 | analytics.log_event("test_event", params.clone()).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/analytics/config.rs:112:20 [INFO] [stdout] | [INFO] [stdout] 112 | static RETRY_DATA: LazyLock>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/analytics/config.rs:112:73 [INFO] [stdout] | [INFO] [stdout] 112 | static RETRY_DATA: LazyLock>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/analytics/config.rs:112:73 [INFO] [stdout] | [INFO] [stdout] 112 | static RETRY_DATA: LazyLock>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/analytics/gtag.rs:84:26 [INFO] [stdout] | [INFO] [stdout] 84 | static INSTANCE: LazyLock> = LazyLock::new(|| Arc::new(GtagRegistry::new())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/analytics/gtag.rs:84:56 [INFO] [stdout] | [INFO] [stdout] 84 | static INSTANCE: LazyLock> = LazyLock::new(|| Arc::new(GtagRegistry::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/analytics/gtag.rs:84:56 [INFO] [stdout] | [INFO] [stdout] 84 | static INSTANCE: LazyLock> = LazyLock::new(|| Arc::new(GtagRegistry::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/api.rs:20:29 [INFO] [stdout] | [INFO] [stdout] 20 | static REGISTERED_VERSIONS: LazyLock>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app/api.rs:20:72 [INFO] [stdout] | [INFO] [stdout] 20 | static REGISTERED_VERSIONS: LazyLock>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/api.rs:20:72 [INFO] [stdout] | [INFO] [stdout] 20 | static REGISTERED_VERSIONS: LazyLock>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/api.rs:22:25 [INFO] [stdout] | [INFO] [stdout] 22 | static GLOBAL_APP_LOCK: LazyLock> = LazyLock::new(|| Mutex::new(())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app/api.rs:22:47 [INFO] [stdout] | [INFO] [stdout] 22 | static GLOBAL_APP_LOCK: LazyLock> = LazyLock::new(|| Mutex::new(())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/api.rs:22:47 [INFO] [stdout] | [INFO] [stdout] 22 | static GLOBAL_APP_LOCK: LazyLock> = LazyLock::new(|| Mutex::new(())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/constants.rs:6:33 [INFO] [stdout] | [INFO] [stdout] 6 | pub static PLATFORM_LOG_STRING: LazyLock> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app/constants.rs:6:81 [INFO] [stdout] | [INFO] [stdout] 6 | pub static PLATFORM_LOG_STRING: LazyLock> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/constants.rs:6:81 [INFO] [stdout] | [INFO] [stdout] 6 | pub static PLATFORM_LOG_STRING: LazyLock> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/heartbeat.rs:214:25 [INFO] [stdout] | [INFO] [stdout] 214 | static HEARTBEAT_STORE: LazyLock>> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app/heartbeat.rs:215:5 [INFO] [stdout] | [INFO] [stdout] 215 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/heartbeat.rs:215:5 [INFO] [stdout] | [INFO] [stdout] 215 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/logger.rs:5:20 [INFO] [stdout] | [INFO] [stdout] 5 | pub static LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/app")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app/logger.rs:5:39 [INFO] [stdout] | [INFO] [stdout] 5 | pub static LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/app")); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/logger.rs:5:39 [INFO] [stdout] | [INFO] [stdout] 5 | pub static LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/app")); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/registry.rs:14:18 [INFO] [stdout] | [INFO] [stdout] 14 | pub static APPS: LazyLock>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app/registry.rs:14:66 [INFO] [stdout] | [INFO] [stdout] 14 | pub static APPS: LazyLock>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/registry.rs:14:66 [INFO] [stdout] | [INFO] [stdout] 14 | pub static APPS: LazyLock>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/registry.rs:16:25 [INFO] [stdout] | [INFO] [stdout] 16 | pub static SERVER_APPS: LazyLock>> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app/registry.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/registry.rs:17:5 [INFO] [stdout] | [INFO] [stdout] 17 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/registry.rs:34:30 [INFO] [stdout] | [INFO] [stdout] 34 | static COMPONENT_TEST_GUARD: LazyLock> = LazyLock::new(|| AsyncMutex::new(())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: you may want to conditionally increase the MSRV considered by Clippy using the `clippy::msrv` attribute [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app/registry.rs:34:57 [INFO] [stdout] | [INFO] [stdout] 34 | static COMPONENT_TEST_GUARD: LazyLock> = LazyLock::new(|| AsyncMutex::new(())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app/registry.rs:34:57 [INFO] [stdout] | [INFO] [stdout] 34 | static COMPONENT_TEST_GUARD: LazyLock> = LazyLock::new(|| AsyncMutex::new(())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `usize` which implements the `Copy` trait [INFO] [stdout] --> src/app/registry.rs:212:25 [INFO] [stdout] | [INFO] [stdout] 212 | let first = first_provider [INFO] [stdout] | _________________________^ [INFO] [stdout] 213 | | .get_immediate::() [INFO] [stdout] 214 | | .expect("first instance") [INFO] [stdout] 215 | | .as_ref() [INFO] [stdout] 216 | | .clone(); [INFO] [stdout] | |________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] = note: `#[warn(clippy::clone_on_copy)]` on by default [INFO] [stdout] help: try dereferencing it [INFO] [stdout] | [INFO] [stdout] 212 ~ let first = *first_provider [INFO] [stdout] 213 + .get_immediate::() [INFO] [stdout] 214 + .expect("first instance") [INFO] [stdout] 215 ~ .as_ref(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `usize` which implements the `Copy` trait [INFO] [stdout] --> src/app/registry.rs:229:26 [INFO] [stdout] | [INFO] [stdout] 229 | let second = provider_after [INFO] [stdout] | __________________________^ [INFO] [stdout] 230 | | .get_immediate::() [INFO] [stdout] 231 | | .expect("second instance") [INFO] [stdout] 232 | | .as_ref() [INFO] [stdout] 233 | | .clone(); [INFO] [stdout] | |________________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] help: try dereferencing it [INFO] [stdout] | [INFO] [stdout] 229 ~ let second = *provider_after [INFO] [stdout] 230 + .get_immediate::() [INFO] [stdout] 231 + .expect("second instance") [INFO] [stdout] 232 ~ .as_ref(); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `usize` which implements the `Copy` trait [INFO] [stdout] --> src/app/registry.rs:305:25 [INFO] [stdout] | [INFO] [stdout] 305 | let first = provider.get_immediate::().expect("first").as_ref().clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*provider.get_immediate::().expect("first").as_ref()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `usize` which implements the `Copy` trait [INFO] [stdout] --> src/app/registry.rs:309:26 [INFO] [stdout] | [INFO] [stdout] 309 | let second = provider.get_immediate::().expect("second").as_ref().clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*provider.get_immediate::().expect("second").as_ref()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/app/types.rs:357:5 [INFO] [stdout] | [INFO] [stdout] 357 | options.api_key = string_value(map, "apiKey"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `app::types::FirebaseOptions { api_key: string_value(map, "apiKey"), auth_domain: string_value(map, "authDomain"), database_url: string_value(map, "databaseURL"), project_id: string_value(map, "projectId"), storage_bucket: string_value(map, "storageBucket"), messaging_sender_id: string_value(map, "messagingSenderId"), app_id: string_value(map, "appId"), measurement_id: string_value(map, "measurementId") }` and removing relevant reassignments [INFO] [stdout] --> src/app/types.rs:355:5 [INFO] [stdout] | [INFO] [stdout] 355 | let mut options = FirebaseOptions::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] = note: `#[warn(clippy::field_reassign_with_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:34:18 [INFO] [stdout] | [INFO] [stdout] 34 | static REGISTRY: LazyLock, AppCheckRegistryEntry>>> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:37:29 [INFO] [stdout] | [INFO] [stdout] 37 | static APP_CHECK_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:37:44 [INFO] [stdout] | [INFO] [stdout] 37 | static APP_CHECK_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:37:44 [INFO] [stdout] | [INFO] [stdout] 37 | static APP_CHECK_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:47:38 [INFO] [stdout] | [INFO] [stdout] 47 | static APP_CHECK_INTERNAL_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:47:53 [INFO] [stdout] | [INFO] [stdout] 47 | static APP_CHECK_INTERNAL_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:47:53 [INFO] [stdout] | [INFO] [stdout] 47 | static APP_CHECK_INTERNAL_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 58 | LazyLock::force(&APP_CHECK_COMPONENT); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 58 | LazyLock::force(&APP_CHECK_COMPONENT); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 59 | LazyLock::force(&APP_CHECK_INTERNAL_COMPONENT); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/api.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 59 | LazyLock::force(&APP_CHECK_INTERNAL_COMPONENT); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/app_check/api.rs:527:13 [INFO] [stdout] | [INFO] [stdout] 527 | let _guard = test_guard(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/app_check/api.rs:536:14 [INFO] [stdout] | [INFO] [stdout] 536 | .await [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 539 | let first = get_token(&app_check, false).await.expect("first token"); [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 542 | let err = get_token(&app_check, true).await.expect_err("second token"); [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 550 | delete_app(&app).await.expect("delete app"); [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/app_check/api.rs:566:13 [INFO] [stdout] | [INFO] [stdout] 566 | let _guard = test_guard(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/app_check/api.rs:573:14 [INFO] [stdout] | [INFO] [stdout] 573 | .await [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 576 | let _ = get_token(&app_check, false).await.expect("token fetch"); [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 582 | delete_app(&app).await.expect("delete app"); [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/client.rs:22:27 [INFO] [stdout] | [INFO] [stdout] 22 | static EXCHANGE_OVERRIDE: LazyLock>> = LazyLock::new(|| Mutex::new(None)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app_check/client.rs:22:70 [INFO] [stdout] | [INFO] [stdout] 22 | static EXCHANGE_OVERRIDE: LazyLock>> = LazyLock::new(|| Mutex::new(None)); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/client.rs:22:70 [INFO] [stdout] | [INFO] [stdout] 22 | static EXCHANGE_OVERRIDE: LazyLock>> = LazyLock::new(|| Mutex::new(None)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/app_check/interop.rs:120:13 [INFO] [stdout] | [INFO] [stdout] 120 | let _guard = test_guard(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/app_check/interop.rs:121:66 [INFO] [stdout] | [INFO] [stdout] 121 | let internal = setup_internal("app-check-internal-test").await; [INFO] [stdout] | ^^^^^ [INFO] [stdout] 122 | let result = internal.get_token(false).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 125 | let heartbeat = internal.heartbeat_header().await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/app_check/interop.rs:131:13 [INFO] [stdout] | [INFO] [stdout] 131 | let _guard = test_guard(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/app_check/interop.rs:132:66 [INFO] [stdout] | [INFO] [stdout] 132 | let internal = setup_internal("app-check-listener-test").await; [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 143 | internal.get_token(false).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 147 | internal.get_token(true).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 151 | internal.get_token(true).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/logger.rs:5:20 [INFO] [stdout] | [INFO] [stdout] 5 | pub static LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/app-check")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app_check/logger.rs:5:39 [INFO] [stdout] | [INFO] [stdout] 5 | pub static LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/app-check")); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/logger.rs:5:39 [INFO] [stdout] | [INFO] [stdout] 5 | pub static LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/app-check")); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `.err().expect()` on a `Result` value [INFO] [stdout] --> src/app_check/providers.rs:375:46 [INFO] [stdout] | [INFO] [stdout] 375 | let err = provider.get_token().await.err().expect("error"); [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `expect_err` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#err_expect [INFO] [stdout] = note: `#[warn(clippy::err_expect)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `.err().expect()` on a `Result` value [INFO] [stdout] --> src/app_check/providers.rs:388:46 [INFO] [stdout] | [INFO] [stdout] 388 | let err = provider.get_token().await.err().expect("throttled"); [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `expect_err` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#err_expect [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `.err().expect()` on a `Result` value [INFO] [stdout] --> src/app_check/providers.rs:424:46 [INFO] [stdout] | [INFO] [stdout] 424 | let err = provider.get_token().await.err().expect("initial throttle"); [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `expect_err` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#err_expect [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `.err().expect()` on a `Result` value [INFO] [stdout] --> src/app_check/providers.rs:428:46 [INFO] [stdout] | [INFO] [stdout] 428 | let err = provider.get_token().await.err().expect("throttled"); [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `expect_err` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#err_expect [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `.err().expect()` on a `Result` value [INFO] [stdout] --> src/app_check/providers.rs:439:46 [INFO] [stdout] | [INFO] [stdout] 439 | let err = provider.get_token().await.err().expect("second throttle"); [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `expect_err` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#err_expect [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: called `.err().expect()` on a `Result` value [INFO] [stdout] --> src/app_check/providers.rs:464:46 [INFO] [stdout] | [INFO] [stdout] 464 | let err = provider.get_token().await.err().expect("error"); [INFO] [stdout] | ^^^^^^^^^^^^ help: try: `expect_err` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#err_expect [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/recaptcha.rs:27:25 [INFO] [stdout] | [INFO] [stdout] 27 | static DRIVER_OVERRIDE: LazyLock>>> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app_check/recaptcha.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | LazyLock::new(|| Mutex::new(None)); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/recaptcha.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | LazyLock::new(|| Mutex::new(None)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/recaptcha.rs:35:24 [INFO] [stdout] | [INFO] [stdout] 35 | static DEFAULT_DRIVER: LazyLock> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app_check/recaptcha.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | LazyLock::new(|| Arc::new(UnsupportedRecaptchaDriver) as Arc); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/recaptcha.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | LazyLock::new(|| Arc::new(UnsupportedRecaptchaDriver) as Arc); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/state.rs:15:16 [INFO] [stdout] | [INFO] [stdout] 15 | static STATES: LazyLock, AppCheckState>>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/app_check/state.rs:15:68 [INFO] [stdout] | [INFO] [stdout] 15 | static STATES: LazyLock, AppCheckState>>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/app_check/state.rs:15:68 [INFO] [stdout] | [INFO] [stdout] 15 | static STATES: LazyLock, AppCheckState>>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/auth/api/core/account.rs:361:36 [INFO] [stdout] | [INFO] [stdout] 361 | let url = identity_toolkit_url(&endpoint, "accounts:update", &api_key); [INFO] [stdout] | ^^^^^^^^^ help: change this to: `endpoint` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] = note: `#[warn(clippy::needless_borrow)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this expression creates a reference which is immediately dereferenced by the compiler [INFO] [stdout] --> src/auth/api/core/account.rs:361:66 [INFO] [stdout] | [INFO] [stdout] 361 | let url = identity_toolkit_url(&endpoint, "accounts:update", &api_key); [INFO] [stdout] | ^^^^^^^^ help: change this to: `api_key` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/auth/api/core/mod.rs:247:13 [INFO] [stdout] | [INFO] [stdout] 247 | context.local_id = Some(response.local_id.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `auth::types::MultiFactorSignInContext { local_id: Some(response.local_id.clone()), email: Some(response.email.clone()), provider_id: Some(EmailAuthProvider::PROVIDER_ID.to_string()), anonymous: false, ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/auth/api/core/mod.rs:246:13 [INFO] [stdout] | [INFO] [stdout] 246 | let mut context = MultiFactorSignInContext::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/auth/api/core/mod.rs:286:9 [INFO] [stdout] | [INFO] [stdout] 286 | request.email = Some(email.to_owned()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `auth::model::SignUpRequest { email: Some(email.to_owned()), password: Some(password.to_owned()), return_secure_token: Some(true), ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/auth/api/core/mod.rs:285:9 [INFO] [stdout] | [INFO] [stdout] 285 | let mut request = SignUpRequest::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/auth/api/core/mod.rs:347:13 [INFO] [stdout] | [INFO] [stdout] 347 | context.local_id = response.local_id.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `auth::types::MultiFactorSignInContext { local_id: response.local_id.clone(), email: response.email.clone(), provider_id: Some("custom".to_string()), anonymous: false, ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/auth/api/core/mod.rs:346:13 [INFO] [stdout] | [INFO] [stdout] 346 | let mut context = MultiFactorSignInContext::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/auth/api/core/mod.rs:421:9 [INFO] [stdout] | [INFO] [stdout] 421 | request.return_secure_token = Some(true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `auth::model::SignUpRequest { return_secure_token: Some(true), ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/auth/api/core/mod.rs:420:9 [INFO] [stdout] | [INFO] [stdout] 420 | let mut request = SignUpRequest::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `unwrap_or_else` to construct default value [INFO] [stdout] --> src/auth/api/core/mod.rs:1321:14 [INFO] [stdout] | [INFO] [stdout] 1321 | .unwrap_or_else(Vec::new); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] = note: `#[warn(clippy::unwrap_or_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/auth/api/core/mod.rs:1341:9 [INFO] [stdout] | [INFO] [stdout] 1341 | request.session_info = Some(session_info); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `auth::api::core::phone::SignInWithPhoneNumberRequest { session_info: Some(session_info), code: Some(verification_code), ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/auth/api/core/mod.rs:1340:9 [INFO] [stdout] | [INFO] [stdout] 1340 | let mut request = SignInWithPhoneNumberRequest::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/auth/api/core/mod.rs:1391:13 [INFO] [stdout] | [INFO] [stdout] 1391 | context.local_id = local_id.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `auth::types::MultiFactorSignInContext { local_id: local_id.clone(), phone_number: phone_number.clone(), provider_id: Some(PHONE_PROVIDER_ID.to_string()), is_new_user: is_new_user, ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/auth/api/core/mod.rs:1390:13 [INFO] [stdout] | [INFO] [stdout] 1390 | let mut context = MultiFactorSignInContext::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/auth/api/core/mod.rs:1692:13 [INFO] [stdout] | [INFO] [stdout] 1692 | context.local_id = response.local_id.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `auth::types::MultiFactorSignInContext { local_id: response.local_id.clone(), email: response.email.clone().or_else(|| Some(email.to_owned())), provider_id: Some(EmailAuthProvider::PROVIDER_ID.to_string()), anonymous: false, ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/auth/api/core/mod.rs:1691:13 [INFO] [stdout] | [INFO] [stdout] 1691 | let mut context = MultiFactorSignInContext::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/auth/api/core/mod.rs:1950:13 [INFO] [stdout] | [INFO] [stdout] 1950 | context.local_id = response.local_id.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `auth::types::MultiFactorSignInContext { local_id: response.local_id.clone(), email: response.email.clone(), provider_id: response [INFO] [stdout] .provider_id [INFO] [stdout] .clone() [INFO] [stdout] .or_else(|| Some(oauth_credential.provider_id().to_string())), is_new_user: match operation { [INFO] [stdout] MultiFactorOperation::SignIn => response.is_new_user, [INFO] [stdout] _ => Some(false), [INFO] [stdout] }, ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/auth/api/core/mod.rs:1949:13 [INFO] [stdout] | [INFO] [stdout] 1949 | let mut context = MultiFactorSignInContext::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/auth/api/core/mod.rs:2051:13 [INFO] [stdout] | [INFO] [stdout] 2051 | context.local_id = Some(response.local_id.clone()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `auth::types::MultiFactorSignInContext { local_id: Some(response.local_id.clone()), email: Some(response.email.clone()), provider_id: Some(EmailAuthProvider::PROVIDER_ID.to_string()), anonymous: false, ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/auth/api/core/mod.rs:2050:13 [INFO] [stdout] | [INFO] [stdout] 2050 | let mut context = MultiFactorSignInContext::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant guard [INFO] [stdout] --> src/auth/api/core/mod.rs:2321:28 [INFO] [stdout] | [INFO] [stdout] 2321 | Some(value) if value.is_empty() => None, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_guards [INFO] [stdout] = note: `#[warn(clippy::redundant_guards)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 2321 - Some(value) if value.is_empty() => None, [INFO] [stdout] 2321 + Some("") => None, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant guard [INFO] [stdout] --> src/auth/api/core/mod.rs:2327:28 [INFO] [stdout] | [INFO] [stdout] 2327 | Some(value) if value.is_empty() => None, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_guards [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 2327 - Some(value) if value.is_empty() => None, [INFO] [stdout] 2327 + Some("") => None, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/auth/api/core/mod.rs:2518:24 [INFO] [stdout] | [INFO] [stdout] 2518 | static REGISTERED: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/auth/api/core/mod.rs:2518:39 [INFO] [stdout] | [INFO] [stdout] 2518 | static REGISTERED: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/auth/api/core/mod.rs:2518:39 [INFO] [stdout] | [INFO] [stdout] 2518 | static REGISTERED: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/auth/api/core/mod.rs:2523:5 [INFO] [stdout] | [INFO] [stdout] 2523 | LazyLock::force(®ISTERED); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/auth/api/core/mod.rs:2523:5 [INFO] [stdout] | [INFO] [stdout] 2523 | LazyLock::force(®ISTERED); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `new` usually return `Self` [INFO] [stdout] --> src/auth/oauth/providers.rs:7:5 [INFO] [stdout] | [INFO] [stdout] 7 | fn new() -> OAuthProvider; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_ret_no_self [INFO] [stdout] = note: `#[warn(clippy::new_ret_no_self)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/auth/types.rs:400:1 [INFO] [stdout] | [INFO] [stdout] 400 | / impl Default for MultiFactorSignInContext { [INFO] [stdout] 401 | | fn default() -> Self { [INFO] [stdout] 402 | | Self { [INFO] [stdout] 403 | | local_id: None, [INFO] [stdout] ... | [INFO] [stdout] 411 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] help: replace the manual implementation with a derive attribute [INFO] [stdout] | [INFO] [stdout] 391 + #[derive(Default)] [INFO] [stdout] 392 | pub(crate) struct MultiFactorSignInContext { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/component/mod.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | mod component; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] = note: `#[warn(clippy::module_inception)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module has the same name as its containing module [INFO] [stdout] --> src/component/tests.rs:2:1 [INFO] [stdout] | [INFO] [stdout] 2 | / mod tests { [INFO] [stdout] 3 | | use crate::component::types::{DynService, InstanceFactory}; [INFO] [stdout] 4 | | use crate::component::{Component, ComponentContainer, ComponentError, ComponentType, InstantiationMode}; [INFO] [stdout] 5 | | use serde_json::{json, Value}; [INFO] [stdout] ... | [INFO] [stdout] 48 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/component/mod.rs:19:27 [INFO] [stdout] | [INFO] [stdout] 19 | static GLOBAL_COMPONENTS: LazyLock, Component>>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/component/mod.rs:19:75 [INFO] [stdout] | [INFO] [stdout] 19 | static GLOBAL_COMPONENTS: LazyLock, Component>>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/component/mod.rs:19:75 [INFO] [stdout] | [INFO] [stdout] 19 | static GLOBAL_COMPONENTS: LazyLock, Component>>> = LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/data_connect/api.rs:34:28 [INFO] [stdout] | [INFO] [stdout] 34 | static DATA_CONNECT_CACHE: LazyLock>>> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/data_connect/api.rs:34:28 [INFO] [stdout] | [INFO] [stdout] 34 | static DATA_CONNECT_CACHE: LazyLock>>> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/data_connect/api.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/data_connect/api.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/data_connect/api.rs:43:29 [INFO] [stdout] | [INFO] [stdout] 43 | static QUERY_MANAGER_CACHE: LazyLock>> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/data_connect/api.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/data_connect/api.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/data_connect/api.rs:226:23 [INFO] [stdout] | [INFO] [stdout] 226 | .and_then(|snapshot| cache_from_serialized(snapshot)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `cache_from_serialized` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/data_connect/api.rs:349:19 [INFO] [stdout] | [INFO] [stdout] 349 | .and_then(|snapshot| cache_from_serialized(snapshot)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `cache_from_serialized` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/data_connect/api.rs:576:24 [INFO] [stdout] | [INFO] [stdout] 576 | static TEST_GUARD: LazyLock> = LazyLock::new(|| AsyncMutex::new(())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/data_connect/api.rs:576:51 [INFO] [stdout] | [INFO] [stdout] 576 | static TEST_GUARD: LazyLock> = LazyLock::new(|| AsyncMutex::new(())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/data_connect/api.rs:576:51 [INFO] [stdout] | [INFO] [stdout] 576 | static TEST_GUARD: LazyLock> = LazyLock::new(|| AsyncMutex::new(())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary `if let` since only the `Some` variant of the iterator element is used [INFO] [stdout] --> src/data_connect/query.rs:305:9 [INFO] [stdout] | [INFO] [stdout] 305 | / for maybe_handler in subscribers { [INFO] [stdout] 306 | | if let Some(handler) = maybe_handler { [INFO] [stdout] 307 | | handler(&error); [INFO] [stdout] 308 | | } [INFO] [stdout] 309 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] help: try `.flatten()` and remove the `if let` statement in the for loop [INFO] [stdout] --> src/data_connect/query.rs:306:13 [INFO] [stdout] | [INFO] [stdout] 306 | / if let Some(handler) = maybe_handler { [INFO] [stdout] 307 | | handler(&error); [INFO] [stdout] 308 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_flatten [INFO] [stdout] = note: `#[warn(clippy::manual_flatten)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 305 ~ for handler in subscribers.into_iter().flatten() { [INFO] [stdout] 306 + handler(&error); [INFO] [stdout] 307 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/data_connect/transport.rs:26:1 [INFO] [stdout] | [INFO] [stdout] 26 | / impl Default for CallerSdkType { [INFO] [stdout] 27 | | fn default() -> Self { [INFO] [stdout] 28 | | CallerSdkType::Base [INFO] [stdout] 29 | | } [INFO] [stdout] 30 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] help: replace the manual implementation with a derive attribute and mark the default variant [INFO] [stdout] | [INFO] [stdout] 17 + #[derive(Default)] [INFO] [stdout] 18 | pub enum CallerSdkType { [INFO] [stdout] 19 ~ #[default] [INFO] [stdout] 20 ~ Base, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/data_connect/transport.rs:215:72 [INFO] [stdout] | [INFO] [stdout] 215 | ... Value::Number(num) => num.as_i64().map(|idx| DataConnectErrorPathSegment::Index(idx)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the tuple variant itself: `DataConnectErrorPathSegment::Index` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/api.rs:24:25 [INFO] [stdout] | [INFO] [stdout] 24 | static REALTIME_LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/database/realtime")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/database/api.rs:24:44 [INFO] [stdout] | [INFO] [stdout] 24 | static REALTIME_LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/database/realtime")); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/api.rs:24:44 [INFO] [stdout] | [INFO] [stdout] 24 | static REALTIME_LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/database/realtime")); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/database/api.rs:516:31 [INFO] [stdout] | [INFO] [stdout] 516 | reference.run_transaction(|value| update(value)).await [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `update` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/database/api.rs:782:17 [INFO] [stdout] | [INFO] [stdout] 782 | let mut listeners = self.inner.listeners.lock().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/database/api.rs:785:43 [INFO] [stdout] | [INFO] [stdout] 785 | let _ = self.go_offline().await; [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the following explicit lifetimes could be elided: 'a [INFO] [stdout] --> src/database/api.rs:1636:21 [INFO] [stdout] | [INFO] [stdout] 1636 | fn extract_data_ref<'a>(value: &'a Value) -> &'a Value { [INFO] [stdout] | ^^ ^^ ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stdout] = note: `#[warn(clippy::needless_lifetimes)]` on by default [INFO] [stdout] help: elide the lifetimes [INFO] [stdout] | [INFO] [stdout] 1636 - fn extract_data_ref<'a>(value: &'a Value) -> &'a Value { [INFO] [stdout] 1636 + fn extract_data_ref(value: &Value) -> &Value { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/api.rs:1808:28 [INFO] [stdout] | [INFO] [stdout] 1808 | static DATABASE_COMPONENT: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/database/api.rs:1808:50 [INFO] [stdout] | [INFO] [stdout] 1808 | static DATABASE_COMPONENT: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/api.rs:1808:50 [INFO] [stdout] | [INFO] [stdout] 1808 | static DATABASE_COMPONENT: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/api.rs:1829:21 [INFO] [stdout] | [INFO] [stdout] 1829 | let component = LazyLock::force(&DATABASE_COMPONENT).clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/api.rs:1829:21 [INFO] [stdout] | [INFO] [stdout] 1829 | let component = LazyLock::force(&DATABASE_COMPONENT).clone(); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/api.rs:1838:21 [INFO] [stdout] | [INFO] [stdout] 1838 | let component = LazyLock::force(&DATABASE_COMPONENT).clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/api.rs:1838:21 [INFO] [stdout] | [INFO] [stdout] 1838 | let component = LazyLock::force(&DATABASE_COMPONENT).clone(); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/database/api.rs:2260:13 [INFO] [stdout] | [INFO] [stdout] 2260 | let values = events.lock().unwrap(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/database/api.rs:2264:36 [INFO] [stdout] | [INFO] [stdout] 2264 | assert_eq!(reference.get().await.unwrap(), json!({ "count": 5 })); [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `unwrap_or_else` to construct default value [INFO] [stdout] --> src/database/backend.rs:254:51 [INFO] [stdout] | [INFO] [stdout] 254 | message.map(|b| format!(": {b}")).unwrap_or_else(String::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `unwrap_or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> src/database/backend.rs:318:9 [INFO] [stdout] | [INFO] [stdout] 318 | / let mut params = Vec::with_capacity(1); [INFO] [stdout] 319 | | params.push(("print".to_string(), "silent".to_string())); [INFO] [stdout] | |_________________________________________________________________^ help: consider using the `vec![]` macro: `let params = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] = note: `#[warn(clippy::vec_init_then_push)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> src/database/backend.rs:344:9 [INFO] [stdout] | [INFO] [stdout] 344 | / let mut params = Vec::with_capacity(1); [INFO] [stdout] 345 | | params.push(("print".to_string(), "silent".to_string())); [INFO] [stdout] | |_________________________________________________________________^ help: consider using the `vec![]` macro: `let params = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> src/database/backend.rs:353:9 [INFO] [stdout] | [INFO] [stdout] 353 | / let mut params = Vec::with_capacity(1); [INFO] [stdout] 354 | | params.push(("print".to_string(), "silent".to_string())); [INFO] [stdout] | |_________________________________________________________________^ help: consider using the `vec![]` macro: `let params = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/backend.rs:473:16 [INFO] [stdout] | [INFO] [stdout] 473 | static LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/database")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/database/backend.rs:473:35 [INFO] [stdout] | [INFO] [stdout] 473 | static LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/database")); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/backend.rs:473:35 [INFO] [stdout] | [INFO] [stdout] 473 | static LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/database")); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/push_id.rs:20:20 [INFO] [stdout] | [INFO] [stdout] 20 | static PUSH_STATE: LazyLock> = LazyLock::new(|| Mutex::new(PushState::new())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/database/push_id.rs:20:49 [INFO] [stdout] | [INFO] [stdout] 20 | static PUSH_STATE: LazyLock> = LazyLock::new(|| Mutex::new(PushState::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/push_id.rs:20:49 [INFO] [stdout] | [INFO] [stdout] 20 | static PUSH_STATE: LazyLock> = LazyLock::new(|| Mutex::new(PushState::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `default` to create a unit struct [INFO] [stdout] --> src/database/realtime/mod.rs:293:14 [INFO] [stdout] | [INFO] [stdout] 293 | Arc::new(NoopTransport::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs [INFO] [stdout] = note: `#[warn(clippy::default_constructed_unit_structs)]` on by default [INFO] [stdout] help: remove this call to `default` [INFO] [stdout] | [INFO] [stdout] 293 - Arc::new(NoopTransport::default()) [INFO] [stdout] 293 + Arc::new(NoopTransport) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/realtime/mod.rs:408:27 [INFO] [stdout] | [INFO] [stdout] 408 | static NATIVE_LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/database/native_websocket")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/database/realtime/mod.rs:408:46 [INFO] [stdout] | [INFO] [stdout] 408 | static NATIVE_LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/database/native_websocket")); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/database/realtime/mod.rs:408:46 [INFO] [stdout] | [INFO] [stdout] 408 | static NATIVE_LOGGER: LazyLock = LazyLock::new(|| Logger::new("@firebase/database/native_websocket")); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods called `from_*` usually take no `self` [INFO] [stdout] --> src/firestore/api/converter.rs:19:17 [INFO] [stdout] | [INFO] [stdout] 19 | fn from_map(&self, value: &MapValue) -> FirestoreResult; [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider choosing a less ambiguous name [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#wrong_self_convention [INFO] [stdout] = note: `#[warn(clippy::wrong_self_convention)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/firestore/api/database.rs:84:29 [INFO] [stdout] | [INFO] [stdout] 84 | static FIRESTORE_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/firestore/api/database.rs:84:44 [INFO] [stdout] | [INFO] [stdout] 84 | static FIRESTORE_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/firestore/api/database.rs:84:44 [INFO] [stdout] | [INFO] [stdout] 84 | static FIRESTORE_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/firestore/api/database.rs:141:5 [INFO] [stdout] | [INFO] [stdout] 141 | LazyLock::force(&FIRESTORE_COMPONENT); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/firestore/api/database.rs:141:5 [INFO] [stdout] | [INFO] [stdout] 141 | LazyLock::force(&FIRESTORE_COMPONENT); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/firestore/api/operations.rs:175:6 [INFO] [stdout] | [INFO] [stdout] 175 | ) -> FirestoreResult<(BTreeMap, Vec, Vec)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calls to `push` immediately after creation [INFO] [stdout] --> src/firestore/api/operations.rs:280:9 [INFO] [stdout] | [INFO] [stdout] 280 | / let mut segments = Vec::new(); [INFO] [stdout] 281 | | segments.push(key.clone()); [INFO] [stdout] | |___________________________________^ help: consider using the `vec![]` macro: `let segments = vec![..];` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#vec_init_then_push [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if` can be collapsed into the outer `match` [INFO] [stdout] --> src/firestore/api/query.rs:424:17 [INFO] [stdout] | [INFO] [stdout] 424 | / if is_nan(value) { [INFO] [stdout] 425 | | return Err(invalid_argument("Invalid query. You cannot use '!=' filters with NaN values.")); [INFO] [stdout] 426 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] = note: `#[warn(clippy::collapsible_match)]` on by default [INFO] [stdout] help: collapse nested if block [INFO] [stdout] | [INFO] [stdout] 423 ~ FilterOperator::NotEqual [INFO] [stdout] 424 ~ if is_nan(value) => { [INFO] [stdout] 425 | return Err(invalid_argument("Invalid query. You cannot use '!=' filters with NaN values.")); [INFO] [stdout] 426 ~ } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded cloning of iterator items [INFO] [stdout] --> src/firestore/api/query.rs:1177:9 [INFO] [stdout] | [INFO] [stdout] 1177 | / self.base [INFO] [stdout] 1178 | | .doc_changes() [INFO] [stdout] 1179 | | .iter() [INFO] [stdout] 1180 | | .cloned() [INFO] [stdout] ... | [INFO] [stdout] 1183 | | TypedQueryDocumentChange::new(change.change_type, typed_doc, change.old_index, change.new_index) [INFO] [stdout] 1184 | | }) [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_iter_cloned [INFO] [stdout] = note: `#[warn(clippy::redundant_iter_cloned)]` on by default [INFO] [stdout] help: try [INFO] [stdout] | [INFO] [stdout] 1179 ~ .iter() [INFO] [stdout] 1180 + .map(|change| { [INFO] [stdout] 1181 + let typed_doc = change.doc.clone().into_typed(Arc::clone(&converter)); [INFO] [stdout] 1182 + TypedQueryDocumentChange::new(change.change_type, typed_doc, change.old_index, change.new_index) [INFO] [stdout] 1183 + }) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `default` to create a unit struct [INFO] [stdout] --> src/firestore/api/snapshot.rs:261:50 [INFO] [stdout] | [INFO] [stdout] 261 | let typed = snapshot.into_typed(Arc::new(PassthroughConverter::default())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs [INFO] [stdout] help: remove this call to `default` [INFO] [stdout] | [INFO] [stdout] 261 - let typed = snapshot.into_typed(Arc::new(PassthroughConverter::default())); [INFO] [stdout] 261 + let typed = snapshot.into_typed(Arc::new(PassthroughConverter)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `default` to create a unit struct [INFO] [stdout] --> src/firestore/api/snapshot.rs:305:50 [INFO] [stdout] | [INFO] [stdout] 305 | let typed = snapshot.into_typed(Arc::new(PassthroughConverter::default())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs [INFO] [stdout] help: remove this call to `default` [INFO] [stdout] | [INFO] [stdout] 305 - let typed = snapshot.into_typed(Arc::new(PassthroughConverter::default())); [INFO] [stdout] 305 + let typed = snapshot.into_typed(Arc::new(PassthroughConverter)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: you should consider adding a `Default` implementation for `MemoryLocalStore` [INFO] [stdout] --> src/firestore/local/memory.rs:164:5 [INFO] [stdout] | [INFO] [stdout] 164 | / pub fn new() -> Self { [INFO] [stdout] 165 | | Self::new_internal(None) [INFO] [stdout] 166 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#new_without_default [INFO] [stdout] = note: `#[warn(clippy::new_without_default)]` on by default [INFO] [stdout] help: try adding this [INFO] [stdout] | [INFO] [stdout] 142 + impl Default for MemoryLocalStore { [INFO] [stdout] 143 + fn default() -> Self { [INFO] [stdout] 144 + Self::new() [INFO] [stdout] 145 + } [INFO] [stdout] 146 + } [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `or_insert_with` to construct default value [INFO] [stdout] --> src/firestore/local/memory.rs:581:18 [INFO] [stdout] | [INFO] [stdout] 581 | .or_insert_with(Vec::new) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unwrap_or_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: explicit call to `.into_iter()` in function argument accepting `IntoIterator` [INFO] [stdout] --> src/firestore/local/memory.rs:908:58 [INFO] [stdout] | [INFO] [stdout] 908 | for key in added_documents.into_iter().chain(modified_documents.into_iter()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: this parameter accepts any `IntoIterator`, so you don't need to call `.into_iter()` [INFO] [stdout] --> /rustc/91021ccc790478a1a89c003e7d32b8d155ae6aae/library/core/src/iter/traits/iterator.rs:510:11 [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion [INFO] [stdout] = note: `#[warn(clippy::useless_conversion)]` on by default [INFO] [stdout] help: consider removing the `.into_iter()` [INFO] [stdout] | [INFO] [stdout] 908 - for key in added_documents.into_iter().chain(modified_documents.into_iter()) { [INFO] [stdout] 908 + for key in added_documents.into_iter().chain(modified_documents) { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `default` to create a unit struct [INFO] [stdout] --> src/firestore/local/memory.rs:1538:57 [INFO] [stdout] | [INFO] [stdout] 1538 | let token_provider: TokenProviderArc = Arc::new(NoopTokenProvider::default()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs [INFO] [stdout] help: remove this call to `default` [INFO] [stdout] | [INFO] [stdout] 1538 - let token_provider: TokenProviderArc = Arc::new(NoopTokenProvider::default()); [INFO] [stdout] 1538 + let token_provider: TokenProviderArc = Arc::new(NoopTokenProvider); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `default` to create a unit struct [INFO] [stdout] --> src/firestore/local/sync_engine.rs:155:57 [INFO] [stdout] | [INFO] [stdout] 155 | let token_provider: TokenProviderArc = Arc::new(NoopTokenProvider::default()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs [INFO] [stdout] help: remove this call to `default` [INFO] [stdout] | [INFO] [stdout] 155 - let token_provider: TokenProviderArc = Arc::new(NoopTokenProvider::default()); [INFO] [stdout] 155 + let token_provider: TokenProviderArc = Arc::new(NoopTokenProvider); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/firestore/local/sync_engine.rs:349:22 [INFO] [stdout] | [INFO] [stdout] 349 | let records: Arc, QuerySnapshotMetadata, Vec<(DocumentChangeType, i32, i32)>)>>> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/firestore/local/sync_engine.rs:351:31 [INFO] [stdout] | [INFO] [stdout] 351 | let callback_records: Arc< [INFO] [stdout] | _______________________________^ [INFO] [stdout] 352 | | Mutex, QuerySnapshotMetadata, Vec<(DocumentChangeType, i32, i32)>)>>, [INFO] [stdout] 353 | | > = Arc::clone(&records); [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/firestore/local/sync_engine.rs:458:9 [INFO] [stdout] | [INFO] [stdout] 458 | change.current = true; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `firestore::remote::remote_event::TargetChange { current: true, resume_token: Some(vec![7, 8, 9]), ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/firestore/local/sync_engine.rs:457:9 [INFO] [stdout] | [INFO] [stdout] 457 | let mut change = TargetChange::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/firestore/local/sync_engine.rs:442:22 [INFO] [stdout] | [INFO] [stdout] 442 | let records: Arc>, QuerySnapshotMetadata, usize)>>> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the following explicit lifetimes could be elided: 'a [INFO] [stdout] --> src/firestore/model/field_path.rs:65:6 [INFO] [stdout] | [INFO] [stdout] 65 | impl<'a> IntoFieldPath for &'a FieldPath { [INFO] [stdout] | ^^ ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stdout] help: elide the lifetimes [INFO] [stdout] | [INFO] [stdout] 65 - impl<'a> IntoFieldPath for &'a FieldPath { [INFO] [stdout] 65 + impl IntoFieldPath for &FieldPath { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the following explicit lifetimes could be elided: 'a [INFO] [stdout] --> src/firestore/model/field_path.rs:77:6 [INFO] [stdout] | [INFO] [stdout] 77 | impl<'a> IntoFieldPath for &'a str { [INFO] [stdout] | ^^ ^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_lifetimes [INFO] [stdout] help: elide the lifetimes [INFO] [stdout] | [INFO] [stdout] 77 - impl<'a> IntoFieldPath for &'a str { [INFO] [stdout] 77 + impl IntoFieldPath for &str { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/firestore/remote/datastore/http.rs:479:48 [INFO] [stdout] | [INFO] [stdout] 479 | let server = match panic::catch_unwind(|| start_mock_server()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `start_mock_server` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/firestore/remote/datastore/http.rs:582:48 [INFO] [stdout] | [INFO] [stdout] 582 | let server = match panic::catch_unwind(|| start_mock_server()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `start_mock_server` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/firestore/remote/datastore/http.rs:674:48 [INFO] [stdout] | [INFO] [stdout] 674 | let server = match panic::catch_unwind(|| start_mock_server()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `start_mock_server` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/firestore/remote/datastore/http.rs:790:48 [INFO] [stdout] | [INFO] [stdout] 790 | let server = match panic::catch_unwind(|| start_mock_server()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `start_mock_server` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: items after a test module [INFO] [stdout] --> src/firestore/remote/datastore/in_memory.rs:257:1 [INFO] [stdout] | [INFO] [stdout] 257 | mod tests { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 278 | / fn apply_field_transforms( [INFO] [stdout] 279 | | fields: &mut BTreeMap, [INFO] [stdout] 280 | | transforms: &[FieldTransform], [INFO] [stdout] 281 | | ) -> FirestoreResult<()> { [INFO] [stdout] | |________________________^ [INFO] [stdout] ... [INFO] [stdout] 301 | fn array_union(existing: Option, additions: &[FirestoreValue]) -> FirestoreValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 319 | fn array_remove(existing: Option, removals: &[FirestoreValue]) -> FirestoreValue { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 336 | fn numeric_increment(existing: Option, operand: &FirestoreValue) -> FirestoreResult { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#items_after_test_module [INFO] [stdout] = note: `#[warn(clippy::items_after_test_module)]` on by default [INFO] [stdout] = help: move the items to before the test module was defined [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `default` to create a unit struct [INFO] [stdout] --> src/firestore/remote/network/mod.rs:218:41 [INFO] [stdout] | [INFO] [stdout] 218 | .unwrap_or_else(|| Arc::new(NoopTokenProvider::default()) as TokenProviderArc); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs [INFO] [stdout] help: remove this call to `default` [INFO] [stdout] | [INFO] [stdout] 218 - .unwrap_or_else(|| Arc::new(NoopTokenProvider::default()) as TokenProviderArc); [INFO] [stdout] 218 + .unwrap_or_else(|| Arc::new(NoopTokenProvider) as TokenProviderArc); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/firestore/remote/remote_store.rs:60:1 [INFO] [stdout] | [INFO] [stdout] 60 | / impl Default for RemoteStoreState { [INFO] [stdout] 61 | | fn default() -> Self { [INFO] [stdout] 62 | | Self { [INFO] [stdout] 63 | | listen_targets: BTreeMap::new(), [INFO] [stdout] ... | [INFO] [stdout] 73 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] help: replace the manual implementation with a derive attribute [INFO] [stdout] | [INFO] [stdout] 49 + #[derive(Default)] [INFO] [stdout] 50 | struct RemoteStoreState { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/firestore/remote/remote_store.rs:430:10 [INFO] [stdout] | [INFO] [stdout] 430 | ) -> ( [INFO] [stdout] | __________^ [INFO] [stdout] 431 | | Option>>, [INFO] [stdout] 432 | | Option>>, [INFO] [stdout] 433 | | ) { [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/firestore/remote/remote_store.rs:447:18 [INFO] [stdout] | [INFO] [stdout] 447 | streams: ( [INFO] [stdout] | __________________^ [INFO] [stdout] 448 | | Option>>, [INFO] [stdout] 449 | | Option>>, [INFO] [stdout] 450 | | ), [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `Option` which implements the `Copy` trait [INFO] [stdout] --> src/firestore/remote/remote_store.rs:557:46 [INFO] [stdout] | [INFO] [stdout] 557 | WatchChange::TargetChange(change) => change.read_time.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `change.read_time` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `Option` which implements the `Copy` trait [INFO] [stdout] --> src/firestore/remote/remote_store.rs:558:74 [INFO] [stdout] | [INFO] [stdout] 558 | WatchChange::DocumentDelete(DocumentDelete { read_time, .. }) => read_time.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*read_time` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: using `clone` on type `Option` which implements the `Copy` trait [INFO] [stdout] --> src/firestore/remote/remote_store.rs:559:74 [INFO] [stdout] | [INFO] [stdout] 559 | WatchChange::DocumentRemove(DocumentRemove { read_time, .. }) => read_time.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*read_time` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `default` to create a unit struct [INFO] [stdout] --> src/firestore/remote/remote_store.rs:657:22 [INFO] [stdout] | [INFO] [stdout] 657 | Arc::new(NoopTokenProvider::default()) as TokenProviderArc, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs [INFO] [stdout] help: remove this call to `default` [INFO] [stdout] | [INFO] [stdout] 657 - Arc::new(NoopTokenProvider::default()) as TokenProviderArc, [INFO] [stdout] 657 + Arc::new(NoopTokenProvider) as TokenProviderArc, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if let` can be collapsed into the outer `if let` [INFO] [stdout] --> src/firestore/remote/remote_store.rs:754:17 [INFO] [stdout] | [INFO] [stdout] 754 | / if let Ok(payload) = frame { [INFO] [stdout] 755 | | let json: serde_json::Value = serde_json::from_slice(&payload).unwrap(); [INFO] [stdout] 756 | | if json.get("removeTarget").is_some() { [INFO] [stdout] 757 | | saw_remove = true; [INFO] [stdout] ... | [INFO] [stdout] 763 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/firestore/remote/remote_store.rs:753:25 [INFO] [stdout] | [INFO] [stdout] 753 | if let Some(frame) = server_stream.next().await { [INFO] [stdout] | ^^^^^ replace this binding [INFO] [stdout] 754 | if let Ok(payload) = frame { [INFO] [stdout] | ^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if let` can be collapsed into the outer `if let` [INFO] [stdout] --> src/firestore/remote/remote_store.rs:833:17 [INFO] [stdout] | [INFO] [stdout] 833 | / if let Ok(payload) = frame { [INFO] [stdout] 834 | | if let Ok(json) = serde_json::from_slice::(&payload) { [INFO] [stdout] 835 | | if json [INFO] [stdout] 836 | | .get("addTarget") [INFO] [stdout] ... | [INFO] [stdout] 844 | | } [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/firestore/remote/remote_store.rs:832:25 [INFO] [stdout] | [INFO] [stdout] 832 | if let Some(frame) = stream.next().await { [INFO] [stdout] | ^^^^^ replace this binding [INFO] [stdout] 833 | if let Ok(payload) = frame { [INFO] [stdout] | ^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/firestore/remote/stream/persistent.rs:193:21 [INFO] [stdout] | [INFO] [stdout] 193 | fn new() -> (Arc, Arc, Arc>>>) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `default` to create a unit struct [INFO] [stdout] --> src/firestore/remote/streams/listen.rs:400:56 [INFO] [stdout] | [INFO] [stdout] 400 | let auth_provider: TokenProviderArc = Arc::new(NoopTokenProvider::default()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs [INFO] [stdout] help: remove this call to `default` [INFO] [stdout] | [INFO] [stdout] 400 - let auth_provider: TokenProviderArc = Arc::new(NoopTokenProvider::default()); [INFO] [stdout] 400 + let auth_provider: TokenProviderArc = Arc::new(NoopTokenProvider); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `default` to create a unit struct [INFO] [stdout] --> src/firestore/remote/streams/listen.rs:429:56 [INFO] [stdout] | [INFO] [stdout] 429 | let auth_provider: TokenProviderArc = Arc::new(NoopTokenProvider::default()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs [INFO] [stdout] help: remove this call to `default` [INFO] [stdout] | [INFO] [stdout] 429 - let auth_provider: TokenProviderArc = Arc::new(NoopTokenProvider::default()); [INFO] [stdout] 429 + let auth_provider: TokenProviderArc = Arc::new(NoopTokenProvider); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the borrowed expression implements the required traits [INFO] [stdout] --> src/firestore/remote/streams/listen.rs:443:55 [INFO] [stdout] | [INFO] [stdout] 443 | "resumeToken": BASE64_STANDARD.encode(&[1, 2, 3]), [INFO] [stdout] | ^^^^^^^^^^ help: change this to: `[1, 2, 3]` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args [INFO] [stdout] = note: `#[warn(clippy::needless_borrows_for_generic_args)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `default` to create a unit struct [INFO] [stdout] --> src/firestore/remote/streams/write.rs:356:56 [INFO] [stdout] | [INFO] [stdout] 356 | let auth_provider: TokenProviderArc = Arc::new(NoopTokenProvider::default()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs [INFO] [stdout] help: remove this call to `default` [INFO] [stdout] | [INFO] [stdout] 356 - let auth_provider: TokenProviderArc = Arc::new(NoopTokenProvider::default()); [INFO] [stdout] 356 + let auth_provider: TokenProviderArc = Arc::new(NoopTokenProvider); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/firestore/remote/syncer_bridge.rs:109:13 [INFO] [stdout] | [INFO] [stdout] 109 | update.added_documents = keys; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `firestore::remote::syncer_bridge::TargetMetadataUpdate { added_documents: keys, ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/firestore/remote/syncer_bridge.rs:108:13 [INFO] [stdout] | [INFO] [stdout] 108 | let mut update = TargetMetadataUpdate::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/functions/api.rs:280:29 [INFO] [stdout] | [INFO] [stdout] 280 | static FUNCTIONS_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/functions/api.rs:280:44 [INFO] [stdout] | [INFO] [stdout] 280 | static FUNCTIONS_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/functions/api.rs:280:44 [INFO] [stdout] | [INFO] [stdout] 280 | static FUNCTIONS_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/functions/api.rs:304:5 [INFO] [stdout] | [INFO] [stdout] 304 | LazyLock::force(&FUNCTIONS_COMPONENT); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/functions/api.rs:304:5 [INFO] [stdout] | [INFO] [stdout] 304 | LazyLock::force(&FUNCTIONS_COMPONENT); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/functions/api.rs:366:48 [INFO] [stdout] | [INFO] [stdout] 366 | let server = match panic::catch_unwind(|| MockServer::start()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `MockServer::start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/functions/api.rs:400:48 [INFO] [stdout] | [INFO] [stdout] 400 | let server = match panic::catch_unwind(|| MockServer::start()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `MockServer::start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: match can be simplified with `.unwrap_or_default()` [INFO] [stdout] --> src/functions/context.rs:165:25 [INFO] [stdout] | [INFO] [stdout] 165 | let heartbeat = match app_check.heartbeat_header().await { [INFO] [stdout] | _________________________^ [INFO] [stdout] 166 | | Ok(header) => header, [INFO] [stdout] 167 | | Err(_) => None, [INFO] [stdout] 168 | | }; [INFO] [stdout] | |_________^ help: ascribe the type std::option::Option and replace your expression with: `app_check.heartbeat_header().await.unwrap_or_default()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_unwrap_or_default [INFO] [stdout] = note: `#[warn(clippy::manual_unwrap_or_default)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `if let` can be collapsed into the outer `if let` [INFO] [stdout] --> src/functions/error.rs:136:13 [INFO] [stdout] | [INFO] [stdout] 136 | / if let JsonValue::Object(error_obj) = error_value { [INFO] [stdout] 137 | | if let Some(JsonValue::String(status_label)) = error_obj.get("status") { [INFO] [stdout] 138 | | match code_for_backend_status(status_label) { [INFO] [stdout] 139 | | Some(mapped) => { [INFO] [stdout] ... | [INFO] [stdout] 159 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] help: the outer pattern can be modified to include the inner pattern [INFO] [stdout] --> src/functions/error.rs:135:21 [INFO] [stdout] | [INFO] [stdout] 135 | if let Some(error_value) = map.get("error") { [INFO] [stdout] | ^^^^^^^^^^^ replace this binding [INFO] [stdout] 136 | if let JsonValue::Object(error_obj) = error_value { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ with this pattern [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/functions/transport.rs:44:19 [INFO] [stdout] | [INFO] [stdout] 44 | static TRANSPORT: LazyLock = LazyLock::new(NativeCallableTransport::new); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/functions/transport.rs:44:55 [INFO] [stdout] | [INFO] [stdout] 44 | static TRANSPORT: LazyLock = LazyLock::new(NativeCallableTransport::new); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/functions/transport.rs:44:55 [INFO] [stdout] | [INFO] [stdout] 44 | static TRANSPORT: LazyLock = LazyLock::new(NativeCallableTransport::new); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/functions/transport.rs:80:24 [INFO] [stdout] | [INFO] [stdout] 80 | static CLIENT: LazyLock = [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/functions/transport.rs:81:13 [INFO] [stdout] | [INFO] [stdout] 81 | LazyLock::new(|| Client::builder().build().expect("Failed to construct reqwest client")); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/functions/transport.rs:81:13 [INFO] [stdout] | [INFO] [stdout] 81 | LazyLock::new(|| Client::builder().build().expect("Failed to construct reqwest client")); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: very complex type used. Consider factoring parts into `type` definitions [INFO] [stdout] --> src/installations/api.rs:39:16 [INFO] [stdout] | [INFO] [stdout] 39 | listeners: StdMutex>>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:145:29 [INFO] [stdout] | [INFO] [stdout] 145 | static INSTALLATIONS_CACHE: LazyLock>>> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:146:5 [INFO] [stdout] | [INFO] [stdout] 146 | LazyLock::new(|| StdMutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:146:5 [INFO] [stdout] | [INFO] [stdout] 146 | LazyLock::new(|| StdMutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:148:26 [INFO] [stdout] | [INFO] [stdout] 148 | static NEXT_LISTENER_ID: LazyLock = LazyLock::new(|| AtomicUsize::new(1)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:148:50 [INFO] [stdout] | [INFO] [stdout] 148 | static NEXT_LISTENER_ID: LazyLock = LazyLock::new(|| AtomicUsize::new(1)); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:148:50 [INFO] [stdout] | [INFO] [stdout] 148 | static NEXT_LISTENER_ID: LazyLock = LazyLock::new(|| AtomicUsize::new(1)); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:446:33 [INFO] [stdout] | [INFO] [stdout] 446 | static INSTALLATIONS_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:446:48 [INFO] [stdout] | [INFO] [stdout] 446 | static INSTALLATIONS_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:446:48 [INFO] [stdout] | [INFO] [stdout] 446 | static INSTALLATIONS_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:456:42 [INFO] [stdout] | [INFO] [stdout] 456 | static INSTALLATIONS_INTERNAL_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:456:57 [INFO] [stdout] | [INFO] [stdout] 456 | static INSTALLATIONS_INTERNAL_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:456:57 [INFO] [stdout] | [INFO] [stdout] 456 | static INSTALLATIONS_INTERNAL_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:484:5 [INFO] [stdout] | [INFO] [stdout] 484 | LazyLock::force(&INSTALLATIONS_COMPONENT); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:484:5 [INFO] [stdout] | [INFO] [stdout] 484 | LazyLock::force(&INSTALLATIONS_COMPONENT); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:485:5 [INFO] [stdout] | [INFO] [stdout] 485 | LazyLock::force(&INSTALLATIONS_INTERNAL_COMPONENT); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:485:5 [INFO] [stdout] | [INFO] [stdout] 485 | LazyLock::force(&INSTALLATIONS_INTERNAL_COMPONENT); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:627:22 [INFO] [stdout] | [INFO] [stdout] 627 | static ENV_LOCK: LazyLock> = LazyLock::new(|| Mutex::new(())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:627:44 [INFO] [stdout] | [INFO] [stdout] 627 | static ENV_LOCK: LazyLock> = LazyLock::new(|| Mutex::new(())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/installations/api.rs:627:44 [INFO] [stdout] | [INFO] [stdout] 627 | static ENV_LOCK: LazyLock> = LazyLock::new(|| Mutex::new(())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/installations/api.rs:664:46 [INFO] [stdout] | [INFO] [stdout] 664 | panic::catch_unwind(AssertUnwindSafe(|| MockServer::start())).ok() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `MockServer::start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/installations/api.rs:682:13 [INFO] [stdout] | [INFO] [stdout] 682 | let _env_guard = env_guard(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/installations/api.rs:698:88 [INFO] [stdout] | [INFO] [stdout] 698 | let (installations, cache_dir, _app_name, _app) = setup_installations(&server).await; [INFO] [stdout] | ^^^^^ [INFO] [stdout] 699 | let fid1 = installations.get_id().await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] 700 | let fid2 = installations.get_id().await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/installations/api.rs:720:13 [INFO] [stdout] | [INFO] [stdout] 720 | let _env_guard = env_guard(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/installations/api.rs:736:88 [INFO] [stdout] | [INFO] [stdout] 736 | let (installations, cache_dir, _app_name, _app) = setup_installations(&server).await; [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 743 | let fid = installations.get_id().await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this call to `clone` can be replaced with `std::slice::from_ref` [INFO] [stdout] --> src/installations/api.rs:756:41 [INFO] [stdout] | [INFO] [stdout] 756 | assert_eq!(observed.as_slice(), &[fid.clone()]); [INFO] [stdout] | ^^^^^^^^^^^^^^ help: try: `std::slice::from_ref(&fid)` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#cloned_ref_to_slice_refs [INFO] [stdout] = note: `#[warn(clippy::cloned_ref_to_slice_refs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/installations/api.rs:763:13 [INFO] [stdout] | [INFO] [stdout] 763 | let _env_guard = env_guard(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/installations/api.rs:790:88 [INFO] [stdout] | [INFO] [stdout] 790 | let (installations, cache_dir, _app_name, _app) = setup_installations(&server).await; [INFO] [stdout] | ^^^^^ [INFO] [stdout] 791 | let token1 = installations.get_token(false).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 794 | let token2 = installations.get_token(true).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/installations/api.rs:812:13 [INFO] [stdout] | [INFO] [stdout] 812 | let _env_guard = env_guard(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/installations/api.rs:844:50 [INFO] [stdout] | [INFO] [stdout] 844 | persistence.write(&app_name, &persisted).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 849 | let app = initialize_app(base_options(), Some(settings)).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 855 | let fid = installations.get_id().await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] 856 | let cached_token = installations.get_token(false).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 869 | assert!(persistence.read(&app_name).await.unwrap().is_some()); [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/installations/api.rs:876:13 [INFO] [stdout] | [INFO] [stdout] 876 | let _env_guard = env_guard(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/installations/api.rs:903:50 [INFO] [stdout] | [INFO] [stdout] 903 | persistence.write(&app_name, &persisted).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 908 | let app = initialize_app(base_options(), Some(settings)).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 914 | assert_eq!(installations.get_id().await.unwrap(), "fid-from-server"); [INFO] [stdout] | ^^^^^ [INFO] [stdout] 915 | [INFO] [stdout] 916 | installations.delete().await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 925 | assert!(persistence.read(&app_name).await.unwrap().is_none()); [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 938 | let new_fid = installations.get_id().await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/installations/api.rs:950:13 [INFO] [stdout] | [INFO] [stdout] 950 | let _env_guard = env_guard(); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/installations/api.rs:978:87 [INFO] [stdout] | [INFO] [stdout] 978 | let (installations, cache_dir, _app_name, app) = setup_installations(&server).await; [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 987 | let fid_public = installations.get_id().await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] 988 | let fid_internal = internal.get_id().await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 991 | let token_internal = internal.get_token(true).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `default` can be confused for the standard trait method `std::default::Default::default` [INFO] [stdout] --> src/installations/persistence.rs:89:5 [INFO] [stdout] | [INFO] [stdout] 89 | / pub fn default() -> InstallationsResult { [INFO] [stdout] 90 | | if let Ok(dir) = std::env::var("FIREBASE_INSTALLATIONS_CACHE_DIR") { [INFO] [stdout] 91 | | return Self::new(PathBuf::from(dir)); [INFO] [stdout] ... | [INFO] [stdout] 97 | | Self::new(dir) [INFO] [stdout] 98 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = help: consider implementing the trait `std::default::Default` or choosing a less ambiguous method name [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#should_implement_trait [INFO] [stdout] = note: `#[warn(clippy::should_implement_trait)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: redundant closure [INFO] [stdout] --> src/installations/rest/tests.rs:25:46 [INFO] [stdout] | [INFO] [stdout] 25 | panic::catch_unwind(AssertUnwindSafe(|| MockServer::start())).ok() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the associated function itself: `MockServer::start` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/logger/mod.rs:10:19 [INFO] [stdout] | [INFO] [stdout] 10 | static INSTANCES: LazyLock>>> = LazyLock::new(|| Mutex::new(Vec::new())); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/logger/mod.rs:10:61 [INFO] [stdout] | [INFO] [stdout] 10 | static INSTANCES: LazyLock>>> = LazyLock::new(|| Mutex::new(Vec::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/logger/mod.rs:10:61 [INFO] [stdout] | [INFO] [stdout] 10 | static INSTANCES: LazyLock>>> = LazyLock::new(|| Mutex::new(Vec::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/messaging/api.rs:260:29 [INFO] [stdout] | [INFO] [stdout] 260 | static MESSAGING_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/messaging/api.rs:260:44 [INFO] [stdout] | [INFO] [stdout] 260 | static MESSAGING_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/messaging/api.rs:260:44 [INFO] [stdout] | [INFO] [stdout] 260 | static MESSAGING_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/messaging/api.rs:281:5 [INFO] [stdout] | [INFO] [stdout] 281 | LazyLock::force(&MESSAGING_COMPONENT); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/messaging/api.rs:281:5 [INFO] [stdout] | [INFO] [stdout] 281 | LazyLock::force(&MESSAGING_COMPONENT); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/performance/api.rs:853:31 [INFO] [stdout] | [INFO] [stdout] 853 | static PERFORMANCE_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/performance/api.rs:853:46 [INFO] [stdout] | [INFO] [stdout] 853 | static PERFORMANCE_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/performance/api.rs:853:46 [INFO] [stdout] | [INFO] [stdout] 853 | static PERFORMANCE_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/performance/api.rs:885:5 [INFO] [stdout] | [INFO] [stdout] 885 | LazyLock::force(&PERFORMANCE_COMPONENT); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/performance/api.rs:885:5 [INFO] [stdout] | [INFO] [stdout] 885 | LazyLock::force(&PERFORMANCE_COMPONENT); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/performance/transport.rs:178:9 [INFO] [stdout] | [INFO] [stdout] 178 | return "native".into(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] = note: `#[warn(clippy::needless_return)]` on by default [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 178 - return "native".into(); [INFO] [stdout] 178 + "native".into() [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/platform/runtime.rs:28:32 [INFO] [stdout] | [INFO] [stdout] 28 | static BACKGROUND_RUNTIME: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/platform/runtime.rs:28:52 [INFO] [stdout] | [INFO] [stdout] 28 | static BACKGROUND_RUNTIME: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/platform/runtime.rs:28:52 [INFO] [stdout] | [INFO] [stdout] 28 | static BACKGROUND_RUNTIME: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-binding `let` on a future [INFO] [stdout] --> src/platform/runtime.rs:38:9 [INFO] [stdout] | [INFO] [stdout] 38 | let _ = BACKGROUND_RUNTIME.spawn(future); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider awaiting the future or dropping explicitly with `std::mem::drop` [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_underscore_future [INFO] [stdout] = note: `#[warn(clippy::let_underscore_future)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/remote_config/api.rs:65:29 [INFO] [stdout] | [INFO] [stdout] 65 | static REMOTE_CONFIG_CACHE: LazyLock>>> = [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/remote_config/api.rs:66:5 [INFO] [stdout] | [INFO] [stdout] 66 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/remote_config/api.rs:66:5 [INFO] [stdout] | [INFO] [stdout] 66 | LazyLock::new(|| Mutex::new(HashMap::new())); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/remote_config/api.rs:258:13 [INFO] [stdout] | [INFO] [stdout] 258 | let mut activated = self.inner.activated.lock().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/remote_config/api.rs:278:64 [INFO] [stdout] | [INFO] [stdout] 278 | self.inner.storage_cache.set_active_config(config).await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] 279 | self.inner.storage_cache.set_active_config_etag(etag).await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 283 | .await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/remote_config/api.rs:261:17 [INFO] [stdout] | [INFO] [stdout] 261 | let mut fetched = self.inner.fetched_config.lock().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/remote_config/api.rs:278:64 [INFO] [stdout] | [INFO] [stdout] 278 | self.inner.storage_cache.set_active_config(config).await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] 279 | self.inner.storage_cache.set_active_config_etag(etag).await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 283 | .await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/remote_config/api.rs:270:17 [INFO] [stdout] | [INFO] [stdout] 270 | let mut fetched_etag = self.inner.fetched_etag.lock().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/remote_config/api.rs:278:64 [INFO] [stdout] | [INFO] [stdout] 278 | self.inner.storage_cache.set_active_config(config).await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] 279 | self.inner.storage_cache.set_active_config_etag(etag).await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 283 | .await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/remote_config/api.rs:274:17 [INFO] [stdout] | [INFO] [stdout] 274 | let mut fetched_template_version = self.inner.fetched_template_version.lock().unwrap(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/remote_config/api.rs:278:64 [INFO] [stdout] | [INFO] [stdout] 278 | self.inner.storage_cache.set_active_config(config).await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] 279 | self.inner.storage_cache.set_active_config_etag(etag).await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 283 | .await?; [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of `default` to create a unit struct [INFO] [stdout] --> src/remote_config/api.rs:431:22 [INFO] [stdout] | [INFO] [stdout] 431 | Arc::new(NoopFetchClient::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_constructed_unit_structs [INFO] [stdout] help: remove this call to `default` [INFO] [stdout] | [INFO] [stdout] 431 - Arc::new(NoopFetchClient::default()) [INFO] [stdout] 431 + Arc::new(NoopFetchClient) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unneeded `return` statement [INFO] [stdout] --> src/remote_config/api.rs:477:9 [INFO] [stdout] | [INFO] [stdout] 477 | return Ok(Arc::new(fetch)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return [INFO] [stdout] help: remove `return` [INFO] [stdout] | [INFO] [stdout] 477 - return Ok(Arc::new(fetch)); [INFO] [stdout] 477 + Ok(Arc::new(fetch)) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/remote_config/api.rs:518:33 [INFO] [stdout] | [INFO] [stdout] 518 | static REMOTE_CONFIG_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/remote_config/api.rs:518:48 [INFO] [stdout] | [INFO] [stdout] 518 | static REMOTE_CONFIG_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/remote_config/api.rs:518:48 [INFO] [stdout] | [INFO] [stdout] 518 | static REMOTE_CONFIG_COMPONENT: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/remote_config/api.rs:551:5 [INFO] [stdout] | [INFO] [stdout] 551 | LazyLock::force(&REMOTE_CONFIG_COMPONENT); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/remote_config/api.rs:551:5 [INFO] [stdout] | [INFO] [stdout] 551 | LazyLock::force(&REMOTE_CONFIG_COMPONENT); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: used `assert_eq!` with a literal bool [INFO] [stdout] --> src/remote_config/api.rs:777:9 [INFO] [stdout] | [INFO] [stdout] 777 | assert_eq!(all["feature"].as_bool(), true); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#bool_assert_comparison [INFO] [stdout] = note: `#[warn(clippy::bool_assert_comparison)]` on by default [INFO] [stdout] help: replace it with `assert!(..)` [INFO] [stdout] | [INFO] [stdout] 777 - assert_eq!(all["feature"].as_bool(), true); [INFO] [stdout] 777 + assert!(all["feature"].as_bool()); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/remote_config/storage.rs:39:1 [INFO] [stdout] | [INFO] [stdout] 39 | / impl Default for FetchStatus { [INFO] [stdout] 40 | | fn default() -> Self { [INFO] [stdout] 41 | | FetchStatus::NoFetchYet [INFO] [stdout] 42 | | } [INFO] [stdout] 43 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] help: replace the manual implementation with a derive attribute and mark the default variant [INFO] [stdout] | [INFO] [stdout] 32 + #[derive(Default)] [INFO] [stdout] 33 | pub enum FetchStatus { [INFO] [stdout] 34 ~ #[default] [INFO] [stdout] 35 ~ NoFetchYet, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/storage/api.rs:13:38 [INFO] [stdout] | [INFO] [stdout] 13 | static STORAGE_COMPONENT_REGISTERED: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/storage/api.rs:13:53 [INFO] [stdout] | [INFO] [stdout] 13 | static STORAGE_COMPONENT_REGISTERED: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/storage/api.rs:13:53 [INFO] [stdout] | [INFO] [stdout] 13 | static STORAGE_COMPONENT_REGISTERED: LazyLock<()> = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/storage/api.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 50 | LazyLock::force(&STORAGE_COMPONENT_REGISTERED); [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/storage/api.rs:50:5 [INFO] [stdout] | [INFO] [stdout] 50 | LazyLock::force(&STORAGE_COMPONENT_REGISTERED); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/storage/reference.rs:120:13 [INFO] [stdout] | [INFO] [stdout] 120 | options.page_token = page_token.clone(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `storage::list::ListOptions { page_token: page_token.clone(), ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/storage/reference.rs:119:13 [INFO] [stdout] | [INFO] [stdout] 119 | let mut options = ListOptions::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: casting to the same type is unnecessary (`usize` -> `usize`) [INFO] [stdout] --> src/storage/reference.rs:371:26 [INFO] [stdout] | [INFO] [stdout] 371 | let chunk_size = RESUMABLE_UPLOAD_CHUNK_SIZE as usize; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `RESUMABLE_UPLOAD_CHUNK_SIZE` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_cast [INFO] [stdout] = note: `#[warn(clippy::unnecessary_cast)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/storage/request/builders.rs:488:9 [INFO] [stdout] | [INFO] [stdout] 488 | metadata.content_type = Some("text/plain".into()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `storage::metadata::serde::SetMetadataRequest { content_type: Some("text/plain".into()), ..Default::default() }` and removing relevant reassignments [INFO] [stdout] --> src/storage/request/builders.rs:487:9 [INFO] [stdout] | [INFO] [stdout] 487 | let mut metadata = SetMetadataRequest::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field assignment outside of initializer for an instance created with Default::default() [INFO] [stdout] --> src/storage/request/builders.rs:509:9 [INFO] [stdout] | [INFO] [stdout] 509 | options.max_results = Some(25); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: consider initializing the variable with `storage::list::ListOptions { max_results: Some(25), page_token: Some("token123".into()) }` and removing relevant reassignments [INFO] [stdout] --> src/storage/request/builders.rs:508:9 [INFO] [stdout] | [INFO] [stdout] 508 | let mut options = ListOptions::default(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this can be `std::io::Error::other(_)` [INFO] [stdout] --> src/storage/request/transport.rs:244:28 [INFO] [stdout] | [INFO] [stdout] 244 | .map_err(|err| IoError::new(ErrorKind::Other, err)); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#io_other_error [INFO] [stdout] = note: `#[warn(clippy::io_other_error)]` on by default [INFO] [stdout] help: use `std::io::Error::other` [INFO] [stdout] | [INFO] [stdout] 244 - .map_err(|err| IoError::new(ErrorKind::Other, err)); [INFO] [stdout] 244 + .map_err(|err| IoError::other(err)); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary use of `get("X-Firebase-AppCheck").is_none()` [INFO] [stdout] --> src/storage/service.rs:379:34 [INFO] [stdout] | [INFO] [stdout] 379 | assert!(prepared.headers.get("X-Firebase-AppCheck").is_none()); [INFO] [stdout] | -----------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace it with: `!prepared.headers.contains_key("X-Firebase-AppCheck")` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_get_then_check [INFO] [stdout] = note: `#[warn(clippy::unnecessary_get_then_check)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `MutexGuard` is held across an await point [INFO] [stdout] --> src/storage/service.rs:414:13 [INFO] [stdout] | [INFO] [stdout] 414 | let _guard = test_guard(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: consider using an async-aware `Mutex` type or ensuring the `MutexGuard` is dropped before calling `await` [INFO] [stdout] note: these are all the await points this lock is held through [INFO] [stdout] --> src/storage/service.rs:421:10 [INFO] [stdout] | [INFO] [stdout] 421 | .await; [INFO] [stdout] | ^^^^^ [INFO] [stdout] 422 | let prepared = storage.prepare_request(test_request()).await.unwrap(); [INFO] [stdout] | ^^^^^ [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#await_holding_lock [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this `impl` can be derived [INFO] [stdout] --> src/storage/string.rs:20:1 [INFO] [stdout] | [INFO] [stdout] 20 | / impl Default for StringFormat { [INFO] [stdout] 21 | | fn default() -> Self { [INFO] [stdout] 22 | | StringFormat::Raw [INFO] [stdout] 23 | | } [INFO] [stdout] 24 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#derivable_impls [INFO] [stdout] help: replace the manual implementation with a derive attribute and mark the default variant [INFO] [stdout] | [INFO] [stdout] 9 + #[derive(Default)] [INFO] [stdout] 10 | pub enum StringFormat { [INFO] [stdout] 11 | /// Interpret the input as UTF-8 text. [INFO] [stdout] 12 ~ #[default] [INFO] [stdout] 13 ~ Raw, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this boolean expression can be simplified [INFO] [stdout] --> src/util/jwt.rs:124:17 [INFO] [stdout] | [INFO] [stdout] 124 | assert!(!decoded.claims.get("d").is_some()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try: `decoded.claims.get("d").is_none()` [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#nonminimal_bool [INFO] [stdout] = note: `#[warn(clippy::nonminimal_bool)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/util/runtime.rs:10:21 [INFO] [stdout] | [INFO] [stdout] 10 | static RUNTIME: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable in a `const` context since `1.80.0` [INFO] [stdout] --> src/util/runtime.rs:10:41 [INFO] [stdout] | [INFO] [stdout] 10 | static RUNTIME: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: current MSRV (Minimum Supported Rust Version) is `1.75.0` but this item is stable since `1.80.0` [INFO] [stdout] --> src/util/runtime.rs:10:41 [INFO] [stdout] | [INFO] [stdout] 10 | static RUNTIME: LazyLock = LazyLock::new(|| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#incompatible_msrv [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 10s [INFO] running `Command { std: "docker" "inspect" "3792997188bde4278eaa0ff00be4bd0217aaf2bf8f3a51db54992f552f06f180", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3792997188bde4278eaa0ff00be4bd0217aaf2bf8f3a51db54992f552f06f180", kill_on_drop: false }` [INFO] [stdout] 3792997188bde4278eaa0ff00be4bd0217aaf2bf8f3a51db54992f552f06f180