[INFO] fetching crate bonsaidb-core 0.5.0... [INFO] checking bonsaidb-core-0.5.0 against try#ccf408f4326a858c00dd845a64a86b16f360a801 for pr-129466-2 [INFO] extracting crate bonsaidb-core 0.5.0 into /workspace/builds/worker-5-tc2/source [INFO] validating manifest of crates.io crate bonsaidb-core 0.5.0 on toolchain ccf408f4326a858c00dd845a64a86b16f360a801 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate bonsaidb-core 0.5.0 [INFO] finished tweaking crates.io crate bonsaidb-core 0.5.0 [INFO] tweaked toml for crates.io crate bonsaidb-core 0.5.0 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 147 packages to latest compatible versions [INFO] [stderr] Adding attribute-derive v0.8.1 (available: v0.10.1) [INFO] [stderr] Adding attribute-derive-macro v0.8.1 (available: v0.10.1) [INFO] [stderr] Adding darling v0.13.4 (available: v0.20.10) [INFO] [stderr] Adding darling_core v0.13.4 (available: v0.20.10) [INFO] [stderr] Adding darling_macro v0.13.4 (available: v0.20.10) [INFO] [stderr] Adding generic-array v0.14.7 (available: v1.1.0) [INFO] [stderr] Adding hermit-abi v0.3.9 (available: v0.4.0) [INFO] [stderr] Adding itertools v0.11.0 (available: v0.13.0) [INFO] [stderr] Adding manyhow v0.8.1 (available: v0.11.4) [INFO] [stderr] Adding manyhow-macros v0.8.1 (available: v0.11.4) [INFO] [stderr] Adding proc-macro-crate v2.0.2 (available: v3.2.0) [INFO] [stderr] Adding proc-macro-utils v0.8.0 (available: v0.10.0) [INFO] [stderr] Adding quote-use v0.7.2 (available: v0.8.4) [INFO] [stderr] Adding quote-use-macros v0.7.2 (available: v0.8.4) [INFO] [stderr] Adding strsim v0.10.0 (available: v0.11.1) [INFO] [stderr] Adding syn v1.0.109 (available: v2.0.77) [INFO] [stderr] Adding toml v0.8.2 (available: v0.8.19) [INFO] [stderr] Adding toml_datetime v0.6.3 (available: v0.6.8) [INFO] [stderr] Adding toml_edit v0.20.2 (available: v0.20.7) [INFO] [stderr] Adding wasi v0.11.0+wasi-snapshot-preview1 (available: v0.13.2+wasi-0.2.1) [INFO] [stderr] Adding windows-sys v0.52.0 (available: v0.59.0) [INFO] [stderr] Adding winnow v0.5.40 (available: v0.6.20) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 6b84e095b0d010ef6f0ed2400c8391b7617290ecbb8005dbc6ef9fe7a0b44146 [INFO] running `Command { std: "docker" "start" "-a" "6b84e095b0d010ef6f0ed2400c8391b7617290ecbb8005dbc6ef9fe7a0b44146", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "6b84e095b0d010ef6f0ed2400c8391b7617290ecbb8005dbc6ef9fe7a0b44146", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6b84e095b0d010ef6f0ed2400c8391b7617290ecbb8005dbc6ef9fe7a0b44146", kill_on_drop: false }` [INFO] [stdout] 6b84e095b0d010ef6f0ed2400c8391b7617290ecbb8005dbc6ef9fe7a0b44146 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3f35bc584c83639c985377ef5f643e4d1fa30d10ee9902c1cdea3455c3abea85 [INFO] running `Command { std: "docker" "start" "-a" "3f35bc584c83639c985377ef5f643e4d1fa30d10ee9902c1cdea3455c3abea85", kill_on_drop: false }` [INFO] [stderr] Copying to /tmp/fixit [INFO] [stderr] Running `cargo fix --edition` [INFO] [stderr] Migrating Cargo.toml from 2021 edition to 2024 [INFO] [stderr] Fixed Cargo.toml (1 fix) [INFO] [stderr] Compiling proc-macro2 v1.0.86 [INFO] [stderr] Checking futures-core v0.3.30 [INFO] [stderr] Compiling smallvec v1.13.2 [INFO] [stderr] Checking futures-sink v0.3.30 [INFO] [stderr] Compiling serde_spanned v0.6.8 [INFO] [stderr] Compiling toml_datetime v0.6.3 [INFO] [stderr] Checking parking_lot_core v0.9.10 [INFO] [stderr] Compiling serde_json v1.0.128 [INFO] [stderr] Compiling interpolator v0.5.0 [INFO] [stderr] Compiling collection_literals v1.0.1 [INFO] [stderr] Compiling trybuild v1.0.99 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling termcolor v1.4.1 [INFO] [stderr] Compiling glob v0.3.1 [INFO] [stderr] Checking transmog v0.1.0 [INFO] [stderr] Checking itertools v0.11.0 [INFO] [stderr] Checking ordered-varint v2.0.0 [INFO] [stderr] Checking bytecount v0.6.8 [INFO] [stderr] Checking futures-channel v0.3.30 [INFO] [stderr] Checking flume v0.11.0 [INFO] [stderr] Compiling toml_edit v0.20.2 [INFO] [stderr] Checking num_cpus v1.16.0 [INFO] [stderr] Checking hex-literal v0.4.1 [INFO] [stderr] Checking parking_lot v0.12.3 [INFO] [stderr] Compiling quote v1.0.37 [INFO] [stderr] Compiling syn v2.0.77 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling proc-macro-utils v0.8.0 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling manyhow-macros v0.8.1 [INFO] [stderr] Compiling toml v0.8.2 [INFO] [stderr] Compiling proc-macro-crate v2.0.2 [INFO] [stderr] Compiling darling_core v0.13.4 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Compiling manyhow v0.8.1 [INFO] [stderr] Compiling serde_derive v1.0.210 [INFO] [stderr] Compiling thiserror-impl v1.0.64 [INFO] [stderr] Compiling derive-where v1.2.7 [INFO] [stderr] Compiling futures-macro v0.3.30 [INFO] [stderr] Compiling zeroize_derive v1.4.2 [INFO] [stderr] Compiling async-trait v0.1.83 [INFO] [stderr] Compiling tokio-macros v2.4.0 [INFO] [stderr] Compiling num-derive v0.4.2 [INFO] [stderr] Compiling darling_macro v0.13.4 [INFO] [stderr] Checking tokio v1.40.0 [INFO] [stderr] Compiling darling v0.13.4 [INFO] [stderr] Checking zeroize v1.8.1 [INFO] [stderr] Checking futures-util v0.3.30 [INFO] [stderr] Compiling quote-use-macros v0.7.2 [INFO] [stderr] Checking thiserror v1.0.64 [INFO] [stderr] Compiling actionable-macros v0.2.0 [INFO] [stderr] Compiling quote-use v0.7.2 [INFO] [stderr] Compiling attribute-derive-macro v0.8.1 [INFO] [stderr] Compiling attribute-derive v0.8.1 [INFO] [stderr] Checking serde v1.0.210 [INFO] [stderr] Checking futures-executor v0.3.30 [INFO] [stderr] Checking futures v0.3.30 [INFO] [stderr] Compiling bonsaidb-macros v0.5.0 [INFO] [stderr] Checking pot v3.0.1 [INFO] [stderr] Checking arc-bytes v0.3.5 [INFO] [stderr] Checking bincode v1.3.3 [INFO] [stderr] Checking actionable v0.2.0 [INFO] [stderr] Checking transmog-bincode v0.1.0 [INFO] [stderr] Checking transmog-pot v0.3.0 [INFO] [stderr] Checking circulate v0.5.0 [INFO] [stderr] Checking bonsaidb-core v0.5.0 (/tmp/fixit) [INFO] [stderr] Migrating src/lib.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `bonsaidb_core` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/key.rs [INFO] [stderr] * src/key/varint.rs [INFO] [stderr] * src/schema/view.rs [INFO] [stderr] [INFO] [stderr] This likely indicates a bug in either rustc or cargo itself, [INFO] [stderr] and we would appreciate a bug report! You're likely to see [INFO] [stderr] a number of compiler warnings after this message which cargo [INFO] [stderr] attempted to fix but failed. If you could open an issue at [INFO] [stderr] https://github.com/rust-lang/rust/issues [INFO] [stderr] quoting the full output of this command we'd be very appreciative! [INFO] [stderr] Note that you may be able to make some more progress in the near-term [INFO] [stderr] fixing code with the `--broken-code` flag [INFO] [stderr] [INFO] [stderr] The following errors were reported: [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/schema/view.rs:398:82 [INFO] [stderr] | [INFO] [stderr] 398 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $mapping:expr_2021 $(,)?) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/schema/view.rs:410:93 [INFO] [stderr] | [INFO] [stderr] 410 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $value:ty, $mapping:expr_2021 $(,)?) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/schema/view.rs:428:82 [INFO] [stderr] | [INFO] [stderr] 428 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $mapping:expr_2021 $(,)?) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/schema/view.rs:440:93 [INFO] [stderr] | [INFO] [stderr] 440 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $value:ty, $mapping:expr_2021 $(,)?) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/schema/view.rs:457:110 [INFO] [stderr] | [INFO] [stderr] 457 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $value:ty, $unique:literal, $mapping:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/key/varint.rs:234:16 [INFO] [stderr] | [INFO] [stderr] 234 | ($type:ty, $kind:expr_2021, $test:ident) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/key.rs:346:16 [INFO] [stderr] | [INFO] [stderr] 346 | ($from:ty, $constkey:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/admin/authentication_token.rs:35:26 [INFO] [stdout] | [INFO] [stdout] 35 | let id = rng.gen(); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] = note: `--force-warn keyword-idents-2024` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/key.rs:2353:19 [INFO] [stderr] | [INFO] [stderr] 2353 | ($type:ident, $keykind:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] warning: elided lifetime has a name [INFO] [stderr] --> src/key.rs:906:46 [INFO] [stderr] | [INFO] [stderr] 905 | impl<'a, 'k> IntoPrefixRange<'a, Self> for CowBytes<'k> { [INFO] [stderr] | -- lifetime `'a` declared here [INFO] [stderr] 906 | fn to_prefix_range(&'a self) -> RangeRef<'_, Self> { [INFO] [stderr] | ^^ this elided lifetime gets resolved as `'a` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(elided_named_lifetimes)]` on by default [INFO] [stderr] [INFO] [stderr] error: aborting due to 8 previous errors; 1 warning emitted [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0658`. [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/schema/view.rs:398:91 [INFO] [stdout] | [INFO] [stdout] 398 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $mapping:expr $(,)?) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: `--force-warn edition-2024-expr-fragment-specifier` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 398 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $mapping:expr_2021 $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/schema/view.rs:410:102 [INFO] [stdout] | [INFO] [stdout] 410 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $value:ty, $mapping:expr $(,)?) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 410 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $value:ty, $mapping:expr_2021 $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/schema/view.rs:428:91 [INFO] [stdout] | [INFO] [stdout] 428 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $mapping:expr $(,)?) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 428 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $mapping:expr_2021 $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/schema/view.rs:440:102 [INFO] [stdout] | [INFO] [stdout] 440 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $value:ty, $mapping:expr $(,)?) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 440 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $value:ty, $mapping:expr_2021 $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/schema/view.rs:457:119 [INFO] [stdout] | [INFO] [stdout] 457 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $value:ty, $unique:literal, $mapping:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 457 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $value:ty, $unique:literal, $mapping:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/key/varint.rs:234:22 [INFO] [stdout] | [INFO] [stdout] 234 | ($type:ty, $kind:expr, $test:ident) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 234 | ($type:ty, $kind:expr_2021, $test:ident) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/key.rs:346:26 [INFO] [stdout] | [INFO] [stdout] 346 | ($from:ty, $constkey:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 346 | ($from:ty, $constkey:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: elided lifetime has a name [INFO] [stdout] --> src/key.rs:906:46 [INFO] [stdout] | [INFO] [stdout] 905 | impl<'a, 'k> IntoPrefixRange<'a, Self> for CowBytes<'k> { [INFO] [stdout] | -- lifetime `'a` declared here [INFO] [stdout] 906 | fn to_prefix_range(&'a self) -> RangeRef<'_, Self> { [INFO] [stdout] | ^^ this elided lifetime gets resolved as `'a` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(elided_named_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/key.rs:2353:28 [INFO] [stdout] | [INFO] [stdout] 2353 | ($type:ident, $keykind:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 2353 | ($type:ident, $keykind:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lib.rs:224:16 [INFO] [stdout] | [INFO] [stdout] 224 | if let Ok(schema_view) = connection.schematic().view::() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lib.rs:226:13 [INFO] [stdout] | [INFO] [stdout] 226 | } [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 224 ~ match connection.schematic().view::() { Ok(schema_view) => { [INFO] [stdout] 225 | return view == &schema_view.view_name(); [INFO] [stdout] 226 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection.rs:188:12 [INFO] [stdout] | [INFO] [stdout] 188 | if let Some(natural_id) = Cl::natural_id(item) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^-------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection.rs:190:9 [INFO] [stdout] | [INFO] [stdout] 190 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 188 ~ match Cl::natural_id(item) { Some(natural_id) => { [INFO] [stdout] 189 | self.insert_bytes(&natural_id, contents) [INFO] [stdout] 190 ~ } _ => { [INFO] [stdout] 191 | self.push_bytes(contents) [INFO] [stdout] 192 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection.rs:1191:12 [INFO] [stdout] | [INFO] [stdout] 1191 | if let Some(natural_id) = Cl::natural_id(item) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^-------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection.rs:1193:9 [INFO] [stdout] | [INFO] [stdout] 1193 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1191 ~ match Cl::natural_id(item) { Some(natural_id) => { [INFO] [stdout] 1192 | self.insert_bytes(&natural_id, contents).await [INFO] [stdout] 1193 ~ } _ => { [INFO] [stdout] 1194 | self.push_bytes(contents).await [INFO] [stdout] 1195 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection.rs:1640:12 [INFO] [stdout] | [INFO] [stdout] 1640 | if let ListState::Pending(Some(builder)) = &mut self.state { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection.rs:1642:9 [INFO] [stdout] | [INFO] [stdout] 1642 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1640 ~ match &mut self.state { ListState::Pending(Some(builder)) => { [INFO] [stdout] 1641 | builder [INFO] [stdout] 1642 ~ } _ => { [INFO] [stdout] 1643 | unreachable!("Attempted to use after retrieving the result") [INFO] [stdout] 1644 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection.rs:3737:12 [INFO] [stdout] | [INFO] [stdout] 3737 | if let SessionAuthentication::Identity(identity) = &self.authentication { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection.rs:3739:9 [INFO] [stdout] | [INFO] [stdout] 3739 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 3737 ~ match &self.authentication { SessionAuthentication::Identity(identity) => { [INFO] [stdout] 3738 | Some(identity) [INFO] [stdout] 3739 ~ } _ => { [INFO] [stdout] 3740 | None [INFO] [stdout] 3741 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 60 | if let Some(OperationResult::DocumentUpdated { header, .. }) = results.into_iter().next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 60 ~ match results.into_iter().next() { Some(OperationResult::DocumentUpdated { header, .. }) => { [INFO] [stdout] 61 | CollectionHeader::try_from(header) [INFO] [stdout] 62 ~ } _ => { [INFO] [stdout] 63 | unreachable!( [INFO] [stdout] 64 | "apply_transaction on a single insert should yield a single DocumentUpdated entry" [INFO] [stdout] 65 | ) [INFO] [stdout] 66 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:87:12 [INFO] [stdout] | [INFO] [stdout] 87 | if let Some(OperationResult::DocumentUpdated { header, .. }) = results.into_iter().next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 90 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 87 ~ match results.into_iter().next() { Some(OperationResult::DocumentUpdated { header, .. }) => { [INFO] [stdout] 88 | doc.set_header(header)?; [INFO] [stdout] 89 | Ok(()) [INFO] [stdout] 90 ~ } _ => { [INFO] [stdout] 91 | unreachable!( [INFO] [stdout] 92 | "apply_transaction on a single update should yield a single DocumentUpdated entry" [INFO] [stdout] 93 | ) [INFO] [stdout] 94 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:120:12 [INFO] [stdout] | [INFO] [stdout] 120 | if let Some(OperationResult::DocumentUpdated { header, .. }) = results.into_iter().next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:122:9 [INFO] [stdout] | [INFO] [stdout] 122 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 120 ~ match results.into_iter().next() { Some(OperationResult::DocumentUpdated { header, .. }) => { [INFO] [stdout] 121 | CollectionHeader::try_from(header) [INFO] [stdout] 122 ~ } _ => { [INFO] [stdout] 123 | unreachable!( [INFO] [stdout] 124 | "apply_transaction on a single update should yield a single DocumentUpdated entry" [INFO] [stdout] 125 | ) [INFO] [stdout] 126 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:252:12 [INFO] [stdout] | [INFO] [stdout] 252 | if let OperationResult::DocumentDeleted { .. } = &results[0] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:254:9 [INFO] [stdout] | [INFO] [stdout] 254 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 252 ~ match &results[0] { OperationResult::DocumentDeleted { .. } => { [INFO] [stdout] 253 | Ok(()) [INFO] [stdout] 254 ~ } _ => { [INFO] [stdout] 255 | unreachable!( [INFO] [stdout] 256 | "apply_transaction on a single update should yield a single DocumentUpdated entry" [INFO] [stdout] 257 | ) [INFO] [stdout] 258 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:677:12 [INFO] [stdout] | [INFO] [stdout] 677 | if let Some(OperationResult::DocumentUpdated { header, .. }) = results.into_iter().next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:679:9 [INFO] [stdout] | [INFO] [stdout] 679 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 677 ~ match results.into_iter().next() { Some(OperationResult::DocumentUpdated { header, .. }) => { [INFO] [stdout] 678 | CollectionHeader::try_from(header) [INFO] [stdout] 679 ~ } _ => { [INFO] [stdout] 680 | unreachable!( [INFO] [stdout] 681 | "apply_transaction on a single insert should yield a single DocumentUpdated entry" [INFO] [stdout] 682 | ) [INFO] [stdout] 683 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:706:12 [INFO] [stdout] | [INFO] [stdout] 706 | if let Some(OperationResult::DocumentUpdated { header, .. }) = results.into_iter().next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:709:9 [INFO] [stdout] | [INFO] [stdout] 709 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 706 ~ match results.into_iter().next() { Some(OperationResult::DocumentUpdated { header, .. }) => { [INFO] [stdout] 707 | doc.set_header(header)?; [INFO] [stdout] 708 | Ok(()) [INFO] [stdout] 709 ~ } _ => { [INFO] [stdout] 710 | unreachable!( [INFO] [stdout] 711 | "apply_transaction on a single update should yield a single DocumentUpdated entry" [INFO] [stdout] 712 | ) [INFO] [stdout] 713 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:741:12 [INFO] [stdout] | [INFO] [stdout] 741 | if let Some(OperationResult::DocumentUpdated { header, .. }) = results.into_iter().next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:743:9 [INFO] [stdout] | [INFO] [stdout] 743 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 741 ~ match results.into_iter().next() { Some(OperationResult::DocumentUpdated { header, .. }) => { [INFO] [stdout] 742 | CollectionHeader::try_from(header) [INFO] [stdout] 743 ~ } _ => { [INFO] [stdout] 744 | unreachable!( [INFO] [stdout] 745 | "apply_transaction on a single update should yield a single DocumentUpdated entry" [INFO] [stdout] 746 | ) [INFO] [stdout] 747 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:883:12 [INFO] [stdout] | [INFO] [stdout] 883 | if let OperationResult::DocumentDeleted { .. } = &results[0] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:885:9 [INFO] [stdout] | [INFO] [stdout] 885 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 883 ~ match &results[0] { OperationResult::DocumentDeleted { .. } => { [INFO] [stdout] 884 | Ok(()) [INFO] [stdout] 885 ~ } _ => { [INFO] [stdout] 886 | unreachable!( [INFO] [stdout] 887 | "apply_transaction on a single update should yield a single DocumentUpdated entry" [INFO] [stdout] 888 | ) [INFO] [stdout] 889 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/document/collection.rs:371:23 [INFO] [stdout] | [INFO] [stdout] 371 | while let Some(key) = map.next_key::>()? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/document/collection.rs:385:17 [INFO] [stdout] | [INFO] [stdout] 385 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | if let Some(mut existing) = Col::load(name, connection)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^---------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 1758 | } else if let Some(insert) = insert { [INFO] [stdout] | ------ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:1758:9 [INFO] [stdout] | [INFO] [stdout] 1758 | } else if let Some(insert) = insert { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:1761:9 [INFO] [stdout] | [INFO] [stdout] 1761 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1733 ~ match Col::load(name, connection)? { Some(mut existing) => { [INFO] [stdout] 1734 | if let Some(update) = update { [INFO] [stdout] ... [INFO] [stdout] 1757 | } [INFO] [stdout] 1758 ~ } _ => { match insert { Some(insert) => { [INFO] [stdout] 1759 | let new_document = insert.call(); [INFO] [stdout] 1760 | Ok(Some(Col::push(new_document, connection)?)) [INFO] [stdout] 1761 ~ } _ => { [INFO] [stdout] 1762 | Ok(None) [INFO] [stdout] 1763 ~ }}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:1734:16 [INFO] [stdout] | [INFO] [stdout] 1734 | if let Some(update) = update { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:1755:13 [INFO] [stdout] | [INFO] [stdout] 1755 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1734 ~ match update { Some(update) => { [INFO] [stdout] 1735 | loop { [INFO] [stdout] ... [INFO] [stdout] 1754 | } [INFO] [stdout] 1755 ~ } _ => { [INFO] [stdout] 1756 | Ok(Some(existing)) [INFO] [stdout] 1757 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:1855:12 [INFO] [stdout] | [INFO] [stdout] 1855 | if let Some(mut existing) = Col::load_async(name, connection).await? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^---------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 1880 | } else if let Some(insert) = insert { [INFO] [stdout] | ------ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:1880:9 [INFO] [stdout] | [INFO] [stdout] 1880 | } else if let Some(insert) = insert { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:1883:9 [INFO] [stdout] | [INFO] [stdout] 1883 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1855 ~ match Col::load_async(name, connection).await? { Some(mut existing) => { [INFO] [stdout] 1856 | if let Some(update) = update { [INFO] [stdout] ... [INFO] [stdout] 1879 | } [INFO] [stdout] 1880 ~ } _ => { match insert { Some(insert) => { [INFO] [stdout] 1881 | let new_document = insert.call(); [INFO] [stdout] 1882 | Ok(Some(Col::push_async(new_document, connection).await?)) [INFO] [stdout] 1883 ~ } _ => { [INFO] [stdout] 1884 | Ok(None) [INFO] [stdout] 1885 ~ }}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:1856:16 [INFO] [stdout] | [INFO] [stdout] 1856 | if let Some(update) = update { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:1877:13 [INFO] [stdout] | [INFO] [stdout] 1877 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1856 ~ match update { Some(update) => { [INFO] [stdout] 1857 | loop { [INFO] [stdout] ... [INFO] [stdout] 1876 | } [INFO] [stdout] 1877 ~ } _ => { [INFO] [stdout] 1878 | Ok(Some(existing)) [INFO] [stdout] 1879 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:2043:12 [INFO] [stdout] | [INFO] [stdout] 2043 | if let EntryState::Executing(future) = &mut self.state { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:2045:9 [INFO] [stdout] | [INFO] [stdout] 2045 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 2043 ~ match &mut self.state { EntryState::Executing(future) => { [INFO] [stdout] 2044 | future.as_mut().poll(cx) [INFO] [stdout] 2045 ~ } _ => { [INFO] [stdout] 2046 | unreachable!() [INFO] [stdout] 2047 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/schema/schematic.rs:169:10 [INFO] [stdout] | [INFO] [stdout] 169 | ) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/schema/schematic.rs:168:21 [INFO] [stdout] | [INFO] [stdout] 168 | collection: &CollectionName, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 169 | ) -> impl Iterator + use<'_> { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/schema/schematic.rs:185:10 [INFO] [stdout] | [INFO] [stdout] 185 | ) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/schema/schematic.rs:184:21 [INFO] [stdout] | [INFO] [stdout] 184 | collection: &CollectionName, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 185 | ) -> impl Iterator + use<'_> { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/schema/schematic.rs:308:22 [INFO] [stdout] | [INFO] [stdout] 308 | let key = if let Some(key) = key { [INFO] [stdout] | ^^^^^^^^^^^^^^^^--- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/schema/schematic.rs:310:9 [INFO] [stdout] | [INFO] [stdout] 310 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 308 ~ let key = match key { Some(key) => { [INFO] [stdout] 309 | key [INFO] [stdout] 310 ~ } _ => { [INFO] [stdout] 311 | >::first_value() [INFO] [stdout] 312 | .map_err(|err| Error::DocumentPush(C::collection_name(), err))? [INFO] [stdout] 313 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/schema/view/map.rs:104:28 [INFO] [stdout] | [INFO] [stdout] 104 | *self = if let Some(existing_mapping) = existing_mapping.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/schema/view/map.rs:106:17 [INFO] [stdout] | [INFO] [stdout] 106 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 104 ~ *self = match existing_mapping.take() { Some(existing_mapping) => { [INFO] [stdout] 105 | Self::List(vec![existing_mapping, mapping]) [INFO] [stdout] 106 ~ } _ => { [INFO] [stdout] 107 | Self::Simple(Some(mapping)) [INFO] [stdout] 108 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/schema/view/map.rs:160:12 [INFO] [stdout] | [INFO] [stdout] 160 | if let Some(mut collected) = iter.next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^----------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/schema/view/map.rs:165:9 [INFO] [stdout] | [INFO] [stdout] 165 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 160 ~ match iter.next() { Some(mut collected) => { [INFO] [stdout] 161 | for mappings in iter { [INFO] [stdout] ... [INFO] [stdout] 164 | collected [INFO] [stdout] 165 ~ } _ => { [INFO] [stdout] 166 | Self::none() [INFO] [stdout] 167 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/keyvalue/implementation/get.rs:190:12 [INFO] [stdout] | [INFO] [stdout] 190 | if let BuilderState::Pending(Some(options)) = &mut self.state { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/keyvalue/implementation/get.rs:192:9 [INFO] [stdout] | [INFO] [stdout] 192 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 190 ~ match &mut self.state { BuilderState::Pending(Some(options)) => { [INFO] [stdout] 191 | options [INFO] [stdout] 192 ~ } _ => { [INFO] [stdout] 193 | unreachable!("Attempted to use after retrieving the result") [INFO] [stdout] 194 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/keyvalue/implementation/increment.rs:118:12 [INFO] [stdout] | [INFO] [stdout] 118 | if let BuilderState::Pending(Some(options)) = &mut self.state { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/keyvalue/implementation/increment.rs:120:9 [INFO] [stdout] | [INFO] [stdout] 120 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 118 ~ match &mut self.state { BuilderState::Pending(Some(options)) => { [INFO] [stdout] 119 | options [INFO] [stdout] 120 ~ } _ => { [INFO] [stdout] 121 | panic!("Attempted to use after retrieving the result") [INFO] [stdout] 122 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/keyvalue/implementation/set.rs:194:12 [INFO] [stdout] | [INFO] [stdout] 194 | if let BuilderState::Pending(Some(options)) = &mut self.state { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/keyvalue/implementation/set.rs:196:9 [INFO] [stdout] | [INFO] [stdout] 196 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 194 ~ match &mut self.state { BuilderState::Pending(Some(options)) => { [INFO] [stdout] 195 | options [INFO] [stdout] 196 ~ } _ => { [INFO] [stdout] 197 | panic!("Attempted to use after retrieving the result") [INFO] [stdout] 198 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/keyvalue/implementation/set.rs:237:12 [INFO] [stdout] | [INFO] [stdout] 237 | if let BuilderState::Pending(Some(builder)) = self.state { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/keyvalue/implementation/set.rs:266:9 [INFO] [stdout] | [INFO] [stdout] 266 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 237 ~ match self.state { BuilderState::Pending(Some(builder)) => { [INFO] [stdout] 238 | let Options { [INFO] [stdout] ... [INFO] [stdout] 265 | } [INFO] [stdout] 266 ~ } _ => { [INFO] [stdout] 267 | panic!("Using future after it's been executed") [INFO] [stdout] 268 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/key/deprecated.rs:242:12 [INFO] [stdout] | [INFO] [stdout] 242 | if let Some(contents) = &self.0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/key/deprecated.rs:246:9 [INFO] [stdout] | [INFO] [stdout] 246 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 242 ~ match &self.0 { Some(contents) => { [INFO] [stdout] 243 | let contents = contents.as_ord_bytes()?; [INFO] [stdout] 244 | assert!(!contents.is_empty()); [INFO] [stdout] 245 | Ok(contents) [INFO] [stdout] 246 ~ } _ => { [INFO] [stdout] 247 | Ok(Cow::default()) [INFO] [stdout] 248 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/pubsub.rs:211:16 [INFO] [stdout] | [INFO] [stdout] 211 | if let Some(database_length) = message.topic.iter().position(|b| b == 0) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------------^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/pubsub.rs:213:13 [INFO] [stdout] | [INFO] [stdout] 213 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 211 ~ match message.topic.iter().position(|b| b == 0) { Some(database_length) => { [INFO] [stdout] 212 | message.topic.0.read_bytes(database_length + 1).unwrap(); [INFO] [stdout] 213 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 40 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `bonsaidb_core` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/key.rs [INFO] [stderr] * src/key/varint.rs [INFO] [stderr] * src/schema/view.rs [INFO] [stderr] * src/test_util.rs [INFO] [stderr] [INFO] [stderr] This likely indicates a bug in either rustc or cargo itself, [INFO] [stderr] and we would appreciate a bug report! You're likely to see [INFO] [stderr] a number of compiler warnings after this message which cargo [INFO] [stderr] attempted to fix but failed. If you could open an issue at [INFO] [stderr] https://github.com/rust-lang/rust/issues [INFO] [stderr] quoting the full output of this command we'd be very appreciative! [INFO] [stderr] Note that you may be able to make some more progress in the near-term [INFO] [stderr] fixing code with the `--broken-code` flag [INFO] [stderr] [INFO] [stderr] The following errors were reported: [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/schema/view.rs:398:82 [INFO] [stderr] | [INFO] [stderr] 398 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $mapping:expr_2021 $(,)?) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/schema/view.rs:410:93 [INFO] [stderr] | [INFO] [stderr] 410 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $value:ty, $mapping:expr_2021 $(,)?) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/schema/view.rs:428:82 [INFO] [stderr] | [INFO] [stderr] 428 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $mapping:expr_2021 $(,)?) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/schema/view.rs:440:93 [INFO] [stderr] | [INFO] [stderr] 440 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $value:ty, $mapping:expr_2021 $(,)?) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/schema/view.rs:457:110 [INFO] [stderr] | [INFO] [stderr] 457 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $value:ty, $unique:literal, $mapping:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/key/varint.rs:234:16 [INFO] [stderr] | [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/admin/authentication_token.rs:35:26 [INFO] [stdout] | [INFO] [stdout] 35 | let id = rng.gen(); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] = note: `--force-warn keyword-idents-2024` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 234 | ($type:ty, $kind:expr_2021, $test:ident) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/schema/view.rs:398:91 [INFO] [stdout] | [INFO] [stdout] 398 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $mapping:expr $(,)?) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: `--force-warn edition-2024-expr-fragment-specifier` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 398 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $mapping:expr_2021 $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/schema/view.rs:410:102 [INFO] [stdout] | [INFO] [stdout] 410 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $value:ty, $mapping:expr $(,)?) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 410 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $value:ty, $mapping:expr_2021 $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/schema/view.rs:428:91 [INFO] [stdout] | [INFO] [stdout] 428 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $mapping:expr $(,)?) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 428 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $mapping:expr_2021 $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/schema/view.rs:440:102 [INFO] [stdout] | [INFO] [stdout] 440 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $value:ty, $mapping:expr $(,)?) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 440 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $value:ty, $mapping:expr_2021 $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/schema/view.rs:457:119 [INFO] [stdout] | [INFO] [stdout] 457 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $value:ty, $unique:literal, $mapping:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 457 | ($view_name:ident, $collection:ty, $version:literal, $name:literal, $key:ty, $value:ty, $unique:literal, $mapping:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/key/varint.rs:234:22 [INFO] [stdout] | [INFO] [stdout] 234 | ($type:ty, $kind:expr, $test:ident) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 234 | ($type:ty, $kind:expr_2021, $test:ident) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/key.rs:346:26 [INFO] [stdout] | [INFO] [stdout] 346 | ($from:ty, $constkey:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 346 | ($from:ty, $constkey:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: elided lifetime has a name [INFO] [stdout] --> src/key.rs:906:46 [INFO] [stdout] | [INFO] [stdout] 905 | impl<'a, 'k> IntoPrefixRange<'a, Self> for CowBytes<'k> { [INFO] [stdout] | -- lifetime `'a` declared here [INFO] [stdout] 906 | fn to_prefix_range(&'a self) -> RangeRef<'_, Self> { [INFO] [stdout] | ^^ this elided lifetime gets resolved as `'a` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(elided_named_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/key.rs:346:16 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/key.rs:2353:28 [INFO] [stdout] | [INFO] [stdout] 2353 | ($type:ident, $keykind:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 2353 | ($type:ident, $keykind:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/test_util.rs:516:9 [INFO] [stdout] | [INFO] [stdout] 516 | ($a:expr, $b:expr) => {{ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 516 | ($a:expr_2021, $b:expr) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 346 | ($from:ty, $constkey:expr_2021) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/test_util.rs:516:18 [INFO] [stdout] | [INFO] [stdout] 516 | ($a:expr, $b:expr) => {{ [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 516 | ($a:expr, $b:expr_2021) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/key.rs:2353:19 [INFO] [stderr] | [INFO] [stderr] 2353 | ($type:ident, $keykind:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/test_util.rs:516:6 [INFO] [stderr] | [INFO] [stderr] 516 | ($a:expr_2021, $b:expr_2021) => {{ [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/test_util.rs:516:20 [INFO] [stderr] | [INFO] [stderr] 516 | ($a:expr_2021, $b:expr_2021) => {{ [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] warning: elided lifetime has a name [INFO] [stderr] --> src/key.rs:906:46 [INFO] [stderr] | [INFO] [stderr] 905 | impl<'a, 'k> IntoPrefixRange<'a, Self> for CowBytes<'k> { [INFO] [stderr] | -- lifetime `'a` declared here [INFO] [stderr] 906 | fn to_prefix_range(&'a self) -> RangeRef<'_, Self> { [INFO] [stderr] | ^^ this elided lifetime gets resolved as `'a` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(elided_named_lifetimes)]` on by default [INFO] [stderr] [INFO] [stderr] error: aborting due to 10 previous errors; 1 warning emitted [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0658`. [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lib.rs:224:16 [INFO] [stdout] | [INFO] [stdout] 224 | if let Ok(schema_view) = connection.schematic().view::() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lib.rs:226:13 [INFO] [stdout] | [INFO] [stdout] 226 | } [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 224 ~ match connection.schematic().view::() { Ok(schema_view) => { [INFO] [stdout] 225 | return view == &schema_view.view_name(); [INFO] [stdout] 226 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection.rs:188:12 [INFO] [stdout] | [INFO] [stdout] 188 | if let Some(natural_id) = Cl::natural_id(item) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^-------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection.rs:190:9 [INFO] [stdout] | [INFO] [stdout] 190 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 188 ~ match Cl::natural_id(item) { Some(natural_id) => { [INFO] [stdout] 189 | self.insert_bytes(&natural_id, contents) [INFO] [stdout] 190 ~ } _ => { [INFO] [stdout] 191 | self.push_bytes(contents) [INFO] [stdout] 192 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection.rs:1191:12 [INFO] [stdout] | [INFO] [stdout] 1191 | if let Some(natural_id) = Cl::natural_id(item) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^-------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection.rs:1193:9 [INFO] [stdout] | [INFO] [stdout] 1193 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1191 ~ match Cl::natural_id(item) { Some(natural_id) => { [INFO] [stdout] 1192 | self.insert_bytes(&natural_id, contents).await [INFO] [stdout] 1193 ~ } _ => { [INFO] [stdout] 1194 | self.push_bytes(contents).await [INFO] [stdout] 1195 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection.rs:1640:12 [INFO] [stdout] | [INFO] [stdout] 1640 | if let ListState::Pending(Some(builder)) = &mut self.state { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection.rs:1642:9 [INFO] [stdout] | [INFO] [stdout] 1642 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1640 ~ match &mut self.state { ListState::Pending(Some(builder)) => { [INFO] [stdout] 1641 | builder [INFO] [stdout] 1642 ~ } _ => { [INFO] [stdout] 1643 | unreachable!("Attempted to use after retrieving the result") [INFO] [stdout] 1644 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection.rs:3737:12 [INFO] [stdout] | [INFO] [stdout] 3737 | if let SessionAuthentication::Identity(identity) = &self.authentication { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection.rs:3739:9 [INFO] [stdout] | [INFO] [stdout] 3739 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 3737 ~ match &self.authentication { SessionAuthentication::Identity(identity) => { [INFO] [stdout] 3738 | Some(identity) [INFO] [stdout] 3739 ~ } _ => { [INFO] [stdout] 3740 | None [INFO] [stdout] 3741 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 60 | if let Some(OperationResult::DocumentUpdated { header, .. }) = results.into_iter().next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:62:9 [INFO] [stdout] | [INFO] [stdout] 62 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 60 ~ match results.into_iter().next() { Some(OperationResult::DocumentUpdated { header, .. }) => { [INFO] [stdout] 61 | CollectionHeader::try_from(header) [INFO] [stdout] 62 ~ } _ => { [INFO] [stdout] 63 | unreachable!( [INFO] [stdout] 64 | "apply_transaction on a single insert should yield a single DocumentUpdated entry" [INFO] [stdout] 65 | ) [INFO] [stdout] 66 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:87:12 [INFO] [stdout] | [INFO] [stdout] 87 | if let Some(OperationResult::DocumentUpdated { header, .. }) = results.into_iter().next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:90:9 [INFO] [stdout] | [INFO] [stdout] 90 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 87 ~ match results.into_iter().next() { Some(OperationResult::DocumentUpdated { header, .. }) => { [INFO] [stdout] 88 | doc.set_header(header)?; [INFO] [stdout] 89 | Ok(()) [INFO] [stdout] 90 ~ } _ => { [INFO] [stdout] 91 | unreachable!( [INFO] [stdout] 92 | "apply_transaction on a single update should yield a single DocumentUpdated entry" [INFO] [stdout] 93 | ) [INFO] [stdout] 94 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:120:12 [INFO] [stdout] | [INFO] [stdout] 120 | if let Some(OperationResult::DocumentUpdated { header, .. }) = results.into_iter().next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:122:9 [INFO] [stdout] | [INFO] [stdout] 122 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 120 ~ match results.into_iter().next() { Some(OperationResult::DocumentUpdated { header, .. }) => { [INFO] [stdout] 121 | CollectionHeader::try_from(header) [INFO] [stdout] 122 ~ } _ => { [INFO] [stdout] 123 | unreachable!( [INFO] [stdout] 124 | "apply_transaction on a single update should yield a single DocumentUpdated entry" [INFO] [stdout] 125 | ) [INFO] [stdout] 126 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:252:12 [INFO] [stdout] | [INFO] [stdout] 252 | if let OperationResult::DocumentDeleted { .. } = &results[0] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:254:9 [INFO] [stdout] | [INFO] [stdout] 254 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 252 ~ match &results[0] { OperationResult::DocumentDeleted { .. } => { [INFO] [stdout] 253 | Ok(()) [INFO] [stdout] 254 ~ } _ => { [INFO] [stdout] 255 | unreachable!( [INFO] [stdout] 256 | "apply_transaction on a single update should yield a single DocumentUpdated entry" [INFO] [stdout] 257 | ) [INFO] [stdout] 258 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:677:12 [INFO] [stdout] | [INFO] [stdout] 677 | if let Some(OperationResult::DocumentUpdated { header, .. }) = results.into_iter().next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:679:9 [INFO] [stdout] | [INFO] [stdout] 679 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 677 ~ match results.into_iter().next() { Some(OperationResult::DocumentUpdated { header, .. }) => { [INFO] [stdout] 678 | CollectionHeader::try_from(header) [INFO] [stdout] 679 ~ } _ => { [INFO] [stdout] 680 | unreachable!( [INFO] [stdout] 681 | "apply_transaction on a single insert should yield a single DocumentUpdated entry" [INFO] [stdout] 682 | ) [INFO] [stdout] 683 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:706:12 [INFO] [stdout] | [INFO] [stdout] 706 | if let Some(OperationResult::DocumentUpdated { header, .. }) = results.into_iter().next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:709:9 [INFO] [stdout] | [INFO] [stdout] 709 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 706 ~ match results.into_iter().next() { Some(OperationResult::DocumentUpdated { header, .. }) => { [INFO] [stdout] 707 | doc.set_header(header)?; [INFO] [stdout] 708 | Ok(()) [INFO] [stdout] 709 ~ } _ => { [INFO] [stdout] 710 | unreachable!( [INFO] [stdout] 711 | "apply_transaction on a single update should yield a single DocumentUpdated entry" [INFO] [stdout] 712 | ) [INFO] [stdout] 713 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:741:12 [INFO] [stdout] | [INFO] [stdout] 741 | if let Some(OperationResult::DocumentUpdated { header, .. }) = results.into_iter().next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:743:9 [INFO] [stdout] | [INFO] [stdout] 743 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 741 ~ match results.into_iter().next() { Some(OperationResult::DocumentUpdated { header, .. }) => { [INFO] [stdout] 742 | CollectionHeader::try_from(header) [INFO] [stdout] 743 ~ } _ => { [INFO] [stdout] 744 | unreachable!( [INFO] [stdout] 745 | "apply_transaction on a single update should yield a single DocumentUpdated entry" [INFO] [stdout] 746 | ) [INFO] [stdout] 747 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:883:12 [INFO] [stdout] | [INFO] [stdout] 883 | if let OperationResult::DocumentDeleted { .. } = &results[0] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/connection/lowlevel.rs:885:9 [INFO] [stdout] | [INFO] [stdout] 885 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 883 ~ match &results[0] { OperationResult::DocumentDeleted { .. } => { [INFO] [stdout] 884 | Ok(()) [INFO] [stdout] 885 ~ } _ => { [INFO] [stdout] 886 | unreachable!( [INFO] [stdout] 887 | "apply_transaction on a single update should yield a single DocumentUpdated entry" [INFO] [stdout] 888 | ) [INFO] [stdout] 889 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/document/collection.rs:371:23 [INFO] [stdout] | [INFO] [stdout] 371 | while let Some(key) = map.next_key::>()? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/document/collection.rs:385:17 [INFO] [stdout] | [INFO] [stdout] 385 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1733 | if let Some(mut existing) = Col::load(name, connection)? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^---------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 1758 | } else if let Some(insert) = insert { [INFO] [stdout] | ------ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:1758:9 [INFO] [stdout] | [INFO] [stdout] 1758 | } else if let Some(insert) = insert { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:1761:9 [INFO] [stdout] | [INFO] [stdout] 1761 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1733 ~ match Col::load(name, connection)? { Some(mut existing) => { [INFO] [stdout] 1734 | if let Some(update) = update { [INFO] [stdout] ... [INFO] [stdout] 1757 | } [INFO] [stdout] 1758 ~ } _ => { match insert { Some(insert) => { [INFO] [stdout] 1759 | let new_document = insert.call(); [INFO] [stdout] 1760 | Ok(Some(Col::push(new_document, connection)?)) [INFO] [stdout] 1761 ~ } _ => { [INFO] [stdout] 1762 | Ok(None) [INFO] [stdout] 1763 ~ }}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:1734:16 [INFO] [stdout] | [INFO] [stdout] 1734 | if let Some(update) = update { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:1755:13 [INFO] [stdout] | [INFO] [stdout] 1755 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1734 ~ match update { Some(update) => { [INFO] [stdout] 1735 | loop { [INFO] [stdout] ... [INFO] [stdout] 1754 | } [INFO] [stdout] 1755 ~ } _ => { [INFO] [stdout] 1756 | Ok(Some(existing)) [INFO] [stdout] 1757 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:1855:12 [INFO] [stdout] | [INFO] [stdout] 1855 | if let Some(mut existing) = Col::load_async(name, connection).await? { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^---------------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 1880 | } else if let Some(insert) = insert { [INFO] [stdout] | ------ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:1880:9 [INFO] [stdout] | [INFO] [stdout] 1880 | } else if let Some(insert) = insert { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:1883:9 [INFO] [stdout] | [INFO] [stdout] 1883 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1855 ~ match Col::load_async(name, connection).await? { Some(mut existing) => { [INFO] [stdout] 1856 | if let Some(update) = update { [INFO] [stdout] ... [INFO] [stdout] 1879 | } [INFO] [stdout] 1880 ~ } _ => { match insert { Some(insert) => { [INFO] [stdout] 1881 | let new_document = insert.call(); [INFO] [stdout] 1882 | Ok(Some(Col::push_async(new_document, connection).await?)) [INFO] [stdout] 1883 ~ } _ => { [INFO] [stdout] 1884 | Ok(None) [INFO] [stdout] 1885 ~ }}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:1856:16 [INFO] [stdout] | [INFO] [stdout] 1856 | if let Some(update) = update { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:1877:13 [INFO] [stdout] | [INFO] [stdout] 1877 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1856 ~ match update { Some(update) => { [INFO] [stdout] 1857 | loop { [INFO] [stdout] ... [INFO] [stdout] 1876 | } [INFO] [stdout] 1877 ~ } _ => { [INFO] [stdout] 1878 | Ok(Some(existing)) [INFO] [stdout] 1879 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:2043:12 [INFO] [stdout] | [INFO] [stdout] 2043 | if let EntryState::Executing(future) = &mut self.state { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/schema/collection.rs:2045:9 [INFO] [stdout] | [INFO] [stdout] 2045 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 2043 ~ match &mut self.state { EntryState::Executing(future) => { [INFO] [stdout] 2044 | future.as_mut().poll(cx) [INFO] [stdout] 2045 ~ } _ => { [INFO] [stdout] 2046 | unreachable!() [INFO] [stdout] 2047 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/schema/schematic.rs:169:10 [INFO] [stdout] | [INFO] [stdout] 169 | ) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/schema/schematic.rs:168:21 [INFO] [stdout] | [INFO] [stdout] 168 | collection: &CollectionName, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 169 | ) -> impl Iterator + use<'_> { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/schema/schematic.rs:185:10 [INFO] [stdout] | [INFO] [stdout] 185 | ) -> impl Iterator { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/schema/schematic.rs:184:21 [INFO] [stdout] | [INFO] [stdout] 184 | collection: &CollectionName, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 185 | ) -> impl Iterator + use<'_> { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/schema/schematic.rs:308:22 [INFO] [stdout] | [INFO] [stdout] 308 | let key = if let Some(key) = key { [INFO] [stdout] | ^^^^^^^^^^^^^^^^--- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/schema/schematic.rs:310:9 [INFO] [stdout] | [INFO] [stdout] 310 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 308 ~ let key = match key { Some(key) => { [INFO] [stdout] 309 | key [INFO] [stdout] 310 ~ } _ => { [INFO] [stdout] 311 | >::first_value() [INFO] [stdout] 312 | .map_err(|err| Error::DocumentPush(C::collection_name(), err))? [INFO] [stdout] 313 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/schema/view/map.rs:104:28 [INFO] [stdout] | [INFO] [stdout] 104 | *self = if let Some(existing_mapping) = existing_mapping.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/schema/view/map.rs:106:17 [INFO] [stdout] | [INFO] [stdout] 106 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 104 ~ *self = match existing_mapping.take() { Some(existing_mapping) => { [INFO] [stdout] 105 | Self::List(vec![existing_mapping, mapping]) [INFO] [stdout] 106 ~ } _ => { [INFO] [stdout] 107 | Self::Simple(Some(mapping)) [INFO] [stdout] 108 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/schema/view/map.rs:160:12 [INFO] [stdout] | [INFO] [stdout] 160 | if let Some(mut collected) = iter.next() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^----------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/schema/view/map.rs:165:9 [INFO] [stdout] | [INFO] [stdout] 165 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 160 ~ match iter.next() { Some(mut collected) => { [INFO] [stdout] 161 | for mappings in iter { [INFO] [stdout] ... [INFO] [stdout] 164 | collected [INFO] [stdout] 165 ~ } _ => { [INFO] [stdout] 166 | Self::none() [INFO] [stdout] 167 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/keyvalue/implementation/get.rs:190:12 [INFO] [stdout] | [INFO] [stdout] 190 | if let BuilderState::Pending(Some(options)) = &mut self.state { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/keyvalue/implementation/get.rs:192:9 [INFO] [stdout] | [INFO] [stdout] 192 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 190 ~ match &mut self.state { BuilderState::Pending(Some(options)) => { [INFO] [stdout] 191 | options [INFO] [stdout] 192 ~ } _ => { [INFO] [stdout] 193 | unreachable!("Attempted to use after retrieving the result") [INFO] [stdout] 194 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/keyvalue/implementation/increment.rs:118:12 [INFO] [stdout] | [INFO] [stdout] 118 | if let BuilderState::Pending(Some(options)) = &mut self.state { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/keyvalue/implementation/increment.rs:120:9 [INFO] [stdout] | [INFO] [stdout] 120 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 118 ~ match &mut self.state { BuilderState::Pending(Some(options)) => { [INFO] [stdout] 119 | options [INFO] [stdout] 120 ~ } _ => { [INFO] [stdout] 121 | panic!("Attempted to use after retrieving the result") [INFO] [stdout] 122 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/keyvalue/implementation/set.rs:194:12 [INFO] [stdout] | [INFO] [stdout] 194 | if let BuilderState::Pending(Some(options)) = &mut self.state { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/keyvalue/implementation/set.rs:196:9 [INFO] [stdout] | [INFO] [stdout] 196 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 194 ~ match &mut self.state { BuilderState::Pending(Some(options)) => { [INFO] [stdout] 195 | options [INFO] [stdout] 196 ~ } _ => { [INFO] [stdout] 197 | panic!("Attempted to use after retrieving the result") [INFO] [stdout] 198 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/keyvalue/implementation/set.rs:237:12 [INFO] [stdout] | [INFO] [stdout] 237 | if let BuilderState::Pending(Some(builder)) = self.state { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^---------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/keyvalue/implementation/set.rs:266:9 [INFO] [stdout] | [INFO] [stdout] 266 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 237 ~ match self.state { BuilderState::Pending(Some(builder)) => { [INFO] [stdout] 238 | let Options { [INFO] [stdout] ... [INFO] [stdout] 265 | } [INFO] [stdout] 266 ~ } _ => { [INFO] [stdout] 267 | panic!("Using future after it's been executed") [INFO] [stdout] 268 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/key/deprecated.rs:242:12 [INFO] [stdout] | [INFO] [stdout] 242 | if let Some(contents) = &self.0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/key/deprecated.rs:246:9 [INFO] [stdout] | [INFO] [stdout] 246 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 242 ~ match &self.0 { Some(contents) => { [INFO] [stdout] 243 | let contents = contents.as_ord_bytes()?; [INFO] [stdout] 244 | assert!(!contents.is_empty()); [INFO] [stdout] 245 | Ok(contents) [INFO] [stdout] 246 ~ } _ => { [INFO] [stdout] 247 | Ok(Cow::default()) [INFO] [stdout] 248 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/pubsub.rs:211:16 [INFO] [stdout] | [INFO] [stdout] 211 | if let Some(database_length) = message.topic.iter().position(|b| b == 0) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^--------------------^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/pubsub.rs:213:13 [INFO] [stdout] | [INFO] [stdout] 213 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 211 ~ match message.topic.iter().position(|b| b == 0) { Some(database_length) => { [INFO] [stdout] 212 | message.topic.0.read_bytes(database_length + 1).unwrap(); [INFO] [stdout] 213 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/test_util.rs:393:12 [INFO] [stdout] | [INFO] [stdout] 393 | if let Err(err) = std::fs::remove_dir_all(&self.0) { [INFO] [stdout] | ^^^^^^^^^^^^^^^-------------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/test_util.rs:397:9 [INFO] [stdout] | [INFO] [stdout] 397 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 393 ~ match std::fs::remove_dir_all(&self.0) { Err(err) => { [INFO] [stdout] 394 | if err.kind() != ErrorKind::NotFound { [INFO] [stdout] 395 | eprintln!("Failed to clean up temporary folder: {err:?}"); [INFO] [stdout] 396 | } [INFO] [stdout] 397 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/test_util.rs:2541:8 [INFO] [stdout] | [INFO] [stdout] 2541 | if let Err(Error::UniqueKeyViolation { [INFO] [stdout] | ________^ [INFO] [stdout] 2542 | | view, [INFO] [stdout] 2543 | | existing_document, [INFO] [stdout] 2544 | | conflicting_document, [INFO] [stdout] 2545 | | }) = db.collection::().push(&Unique::new("1")).await [INFO] [stdout] | |__________------------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/test_util.rs:2553:5 [INFO] [stdout] | [INFO] [stdout] 2553 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 2541 ~ match db.collection::().push(&Unique::new("1")).await [INFO] [stdout] 2542 ~ { Err(Error::UniqueKeyViolation { [INFO] [stdout] 2543 + view, [INFO] [stdout] 2544 + existing_document, [INFO] [stdout] 2545 + conflicting_document, [INFO] [stdout] 2546 ~ }) => { [INFO] [stdout] 2547 | assert_eq!(view, UniqueValue.view_name()); [INFO] [stdout] ... [INFO] [stdout] 2552 | assert_ne!(conflicting_document, existing_document); [INFO] [stdout] 2553 ~ } _ => { [INFO] [stdout] 2554 | unreachable!("unique key violation not triggered"); [INFO] [stdout] 2555 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/test_util.rs:2566:8 [INFO] [stdout] | [INFO] [stdout] 2566 | if let Err(Error::UniqueKeyViolation { [INFO] [stdout] | ________^ [INFO] [stdout] 2567 | | view, [INFO] [stdout] 2568 | | existing_document, [INFO] [stdout] 2569 | | conflicting_document, [INFO] [stdout] 2570 | | }) = db.update::(&mut second_doc).await [INFO] [stdout] | |__________--------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/test_util.rs:2575:5 [INFO] [stdout] | [INFO] [stdout] 2575 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 2566 ~ match db.update::(&mut second_doc).await [INFO] [stdout] 2567 ~ { Err(Error::UniqueKeyViolation { [INFO] [stdout] 2568 + view, [INFO] [stdout] 2569 + existing_document, [INFO] [stdout] 2570 + conflicting_document, [INFO] [stdout] 2571 ~ }) => { [INFO] [stdout] 2572 | assert_eq!(view, UniqueValue.view_name()); [INFO] [stdout] 2573 | assert_eq!(first_doc.id, existing_document.id.deserialize()?); [INFO] [stdout] 2574 | assert_eq!(conflicting_document.id, second_doc.header.id); [INFO] [stdout] 2575 ~ } _ => { [INFO] [stdout] 2576 | unreachable!("unique key violation not triggered"); [INFO] [stdout] 2577 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/test_util.rs:2585:8 [INFO] [stdout] | [INFO] [stdout] 2585 | if let Err(Error::UniqueKeyViolation { [INFO] [stdout] | ________^ [INFO] [stdout] 2586 | | view, [INFO] [stdout] 2587 | | existing_document, [INFO] [stdout] 2588 | | conflicting_document, [INFO] [stdout] 2589 | | }) = db.collection::().push(&Unique::new("1")) [INFO] [stdout] | |__________------------------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/test_util.rs:2597:5 [INFO] [stdout] | [INFO] [stdout] 2597 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 2585 ~ match db.collection::().push(&Unique::new("1")) [INFO] [stdout] 2586 ~ { Err(Error::UniqueKeyViolation { [INFO] [stdout] 2587 + view, [INFO] [stdout] 2588 + existing_document, [INFO] [stdout] 2589 + conflicting_document, [INFO] [stdout] 2590 ~ }) => { [INFO] [stdout] 2591 | assert_eq!(view, UniqueValue.view_name()); [INFO] [stdout] ... [INFO] [stdout] 2596 | assert_ne!(conflicting_document, existing_document); [INFO] [stdout] 2597 ~ } _ => { [INFO] [stdout] 2598 | unreachable!("unique key violation not triggered"); [INFO] [stdout] 2599 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/test_util.rs:2606:8 [INFO] [stdout] | [INFO] [stdout] 2606 | if let Err(Error::UniqueKeyViolation { [INFO] [stdout] | ________^ [INFO] [stdout] 2607 | | view, [INFO] [stdout] 2608 | | existing_document, [INFO] [stdout] 2609 | | conflicting_document, [INFO] [stdout] 2610 | | }) = db.update::(&mut second_doc) [INFO] [stdout] | |__________--------------------------------------^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/test_util.rs:2615:5 [INFO] [stdout] | [INFO] [stdout] 2615 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 2606 ~ match db.update::(&mut second_doc) [INFO] [stdout] 2607 ~ { Err(Error::UniqueKeyViolation { [INFO] [stdout] 2608 + view, [INFO] [stdout] 2609 + existing_document, [INFO] [stdout] 2610 + conflicting_document, [INFO] [stdout] 2611 ~ }) => { [INFO] [stdout] 2612 | assert_eq!(view, UniqueValue.view_name()); [INFO] [stdout] 2613 | assert_eq!(first_doc.id, existing_document.id.deserialize()?); [INFO] [stdout] 2614 | assert_eq!(conflicting_document.id, second_doc.header.id); [INFO] [stdout] 2615 ~ } _ => { [INFO] [stdout] 2616 | unreachable!("unique key violation not triggered"); [INFO] [stdout] 2617 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 47 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 27.42s [INFO] [stderr] Running `cargo check` to verify 2024 [INFO] [stderr] Checking bonsaidb-core v0.5.0 (/tmp/fixit) [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/admin/authentication_token.rs:35:26 [INFO] [stdout] | [INFO] [stdout] 35 | let id = rng.gen(); [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 35 | let id = rng.r#gen(); [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/admin/authentication_token.rs:35:26 [INFO] [stdout] | [INFO] [stdout] 35 | let id = rng.gen(); [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 35 | let id = rng.r#gen(); [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: elided lifetime has a name [INFO] [stdout] --> src/key.rs:906:46 [INFO] [stdout] | [INFO] [stdout] 905 | impl<'a, 'k> IntoPrefixRange<'a, Self> for CowBytes<'k> { [INFO] [stdout] | -- lifetime `'a` declared here [INFO] [stdout] 906 | fn to_prefix_range(&'a self) -> RangeRef<'_, Self> { [INFO] [stdout] | ^^ this elided lifetime gets resolved as `'a` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(elided_named_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: elided lifetime has a name [INFO] [stdout] --> src/key.rs:906:46 [INFO] [stdout] | [INFO] [stdout] 905 | impl<'a, 'k> IntoPrefixRange<'a, Self> for CowBytes<'k> { [INFO] [stdout] | -- lifetime `'a` declared here [INFO] [stdout] 906 | fn to_prefix_range(&'a self) -> RangeRef<'_, Self> { [INFO] [stdout] | ^^ this elided lifetime gets resolved as `'a` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(elided_named_lifetimes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 1 previous error; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `bonsaidb-core` (lib) due to 2 previous errors; 1 warning emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: aborting due to 1 previous error; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `bonsaidb-core` (lib test) due to 2 previous errors; 1 warning emitted [INFO] [stderr] error: failed to check after updating to 2024 [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `cargo check --frozen --all --all-targets --message-format=json` (exit status: 101) [INFO] running `Command { std: "docker" "inspect" "3f35bc584c83639c985377ef5f643e4d1fa30d10ee9902c1cdea3455c3abea85", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3f35bc584c83639c985377ef5f643e4d1fa30d10ee9902c1cdea3455c3abea85", kill_on_drop: false }` [INFO] [stdout] 3f35bc584c83639c985377ef5f643e4d1fa30d10ee9902c1cdea3455c3abea85