[INFO] fetching crate yrs 0.21.1... [INFO] checking yrs-0.21.1 against try#7014e13d5becc920d4bea3cd87942c8a13d359bf+rustflags=-Dtail_expr_drop_order for pr-129864 [INFO] extracting crate yrs 0.21.1 into /workspace/builds/worker-5-tc2/source [INFO] validating manifest of crates.io crate yrs 0.21.1 on toolchain 7014e13d5becc920d4bea3cd87942c8a13d359bf [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate yrs 0.21.1 [INFO] finished tweaking crates.io crate yrs 0.21.1 [INFO] tweaked toml for crates.io crate yrs 0.21.1 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" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Locking 128 packages to latest compatible versions [INFO] [stderr] Adding anes v0.1.6 (available: v0.2.0) [INFO] [stderr] Adding bit-set v0.5.3 (available: v0.8.0) [INFO] [stderr] Adding bit-vec v0.6.3 (available: v0.8.0) [INFO] [stderr] Adding itertools v0.10.5 (available: v0.13.0) [INFO] [stderr] Adding linux-raw-sys v0.4.14 (available: v0.6.5) [INFO] [stderr] Adding proptest-derive v0.4.0 (available: v0.5.0) [INFO] [stderr] Adding quick-error v1.2.3 (available: v2.0.1) [INFO] [stderr] Adding syn v1.0.109 (available: v2.0.77) [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] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-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" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 5a94d3f2805d94252e35c7b83fbbf6e156ed5063643d670512719cf7ec88a9cd [INFO] running `Command { std: "docker" "start" "-a" "5a94d3f2805d94252e35c7b83fbbf6e156ed5063643d670512719cf7ec88a9cd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "5a94d3f2805d94252e35c7b83fbbf6e156ed5063643d670512719cf7ec88a9cd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5a94d3f2805d94252e35c7b83fbbf6e156ed5063643d670512719cf7ec88a9cd", kill_on_drop: false }` [INFO] [stdout] 5a94d3f2805d94252e35c7b83fbbf6e156ed5063643d670512719cf7ec88a9cd [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 -Dtail_expr_drop_order" "-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" "+7014e13d5becc920d4bea3cd87942c8a13d359bf" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 0c44b782532972fd525da78adce8c1df6414383a461bcf926833a403308455ed [INFO] running `Command { std: "docker" "start" "-a" "0c44b782532972fd525da78adce8c1df6414383a461bcf926833a403308455ed", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.159 [INFO] [stderr] Compiling serde v1.0.210 [INFO] [stderr] Checking smallvec v1.13.2 [INFO] [stderr] Compiling rustix v0.38.37 [INFO] [stderr] Checking linux-raw-sys v0.4.14 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Checking bitflags v2.6.0 [INFO] [stderr] Checking fastrand v2.1.1 [INFO] [stderr] Compiling syn v2.0.77 [INFO] [stderr] Checking concurrent-queue v2.5.0 [INFO] [stderr] Checking parking v2.2.1 [INFO] [stderr] Compiling libz-sys v1.1.20 [INFO] [stderr] Checking itertools v0.10.5 [INFO] [stderr] Checking regex-automata v0.4.7 [INFO] [stderr] Checking quick-error v1.2.3 [INFO] [stderr] Checking bit-vec v0.6.3 [INFO] [stderr] Checking unarray v0.1.4 [INFO] [stderr] Checking bit-set v0.5.3 [INFO] [stderr] Checking arc-swap v1.7.1 [INFO] [stderr] Checking str_indices v0.4.3 [INFO] [stderr] Compiling proptest-derive v0.4.0 [INFO] [stderr] Checking assert_matches2 v0.1.2 [INFO] [stderr] Checking smallstr v0.3.0 [INFO] [stderr] Checking event-listener v5.3.1 [INFO] [stderr] Checking event-listener-strategy v0.5.2 [INFO] [stderr] Checking ropey v1.6.1 [INFO] [stderr] Checking async-lock v3.4.0 [INFO] [stderr] Checking regex v1.10.6 [INFO] [stderr] Checking plotters v0.3.7 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Checking parking_lot_core v0.9.10 [INFO] [stderr] Checking wait-timeout v0.2.0 [INFO] [stderr] Checking is-terminal v0.4.13 [INFO] [stderr] Checking criterion-plot v0.5.0 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking dashmap v6.1.0 [INFO] [stderr] Checking rand_xorshift v0.3.0 [INFO] [stderr] Checking tempfile v3.12.0 [INFO] [stderr] Checking rusty-fork v0.3.0 [INFO] [stderr] Compiling serde_derive v1.0.210 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling thiserror-impl v1.0.64 [INFO] [stderr] Compiling async-trait v0.1.83 [INFO] [stderr] Checking zerocopy v0.7.35 [INFO] [stderr] Checking thiserror v1.0.64 [INFO] [stderr] Checking ppv-lite86 v0.2.20 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking proptest v1.5.0 [INFO] [stderr] Checking flate2 v1.0.33 [INFO] [stderr] Checking serde_json v1.0.128 [INFO] [stderr] Checking ciborium v0.2.2 [INFO] [stderr] Checking tinytemplate v1.2.1 [INFO] [stderr] Checking yrs v0.21.1 (/opt/rustwide/workdir) [INFO] [stderr] Checking criterion v0.5.1 [INFO] [stdout] warning: unused import: `Transaction` [INFO] [stdout] --> src/doc.rs:6:34 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::transaction::{Origin, Transaction, TransactionMut}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ArrayRef` [INFO] [stdout] --> src/types/mod.rs:18:39 [INFO] [stdout] | [INFO] [stdout] 18 | use crate::types::array::{ArrayEvent, ArrayRef}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `XmlElementRef` and `XmlTextRef` [INFO] [stdout] --> src/types/mod.rs:23:25 [INFO] [stdout] | [INFO] [stdout] 23 | use crate::types::xml::{XmlElementRef, XmlEvent, XmlTextEvent, XmlTextRef}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Update` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/alt.rs:27:8 [INFO] [stdout] | [INFO] [stdout] 20 | let mut i = updates.into_iter(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 27 | Ok(Update::merge_updates(merge).encode_v1()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Update` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/alt.rs:47:8 [INFO] [stdout] | [INFO] [stdout] 40 | let mut i = updates.into_iter(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 47 | Ok(Update::merge_updates(merge).encode_v2()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `left` is never read [INFO] [stdout] --> src/block.rs:286:17 [INFO] [stdout] | [INFO] [stdout] 286 | let mut left = None; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ptr` [INFO] [stdout] --> src/block.rs:728:25 [INFO] [stdout] | [INFO] [stdout] 728 | let ptr = if this.info.is_deleted() { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ptr` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/block.rs:642:29 [INFO] [stdout] | [INFO] [stdout] 642 | if let Some(mut left) = this.left { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `transaction::Origin` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/doc.rs:350:49 [INFO] [stdout] | [INFO] [stdout] 345 | let mut store = self [INFO] [stdout] | --------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 350 | Ok(events.update_v1_events.unsubscribe(&key.into())) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `transaction::Origin` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/doc.rs:446:49 [INFO] [stdout] | [INFO] [stdout] 441 | let mut store = self [INFO] [stdout] | --------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 446 | Ok(events.update_v2_events.unsubscribe(&key.into())) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `transaction::Origin` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/doc.rs:534:59 [INFO] [stdout] | [INFO] [stdout] 529 | let mut store = self [INFO] [stdout] | --------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 534 | Ok(events.transaction_cleanup_events.unsubscribe(&key.into())) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `transaction::Origin` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/doc.rs:601:57 [INFO] [stdout] | [INFO] [stdout] 596 | let mut store = self [INFO] [stdout] | --------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 601 | Ok(events.after_transaction_events.unsubscribe(&key.into())) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `transaction::Origin` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/doc.rs:681:47 [INFO] [stdout] | [INFO] [stdout] 676 | let mut store = self [INFO] [stdout] | --------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 681 | Ok(events.subdocs_events.unsubscribe(&key.into())) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `transaction::Origin` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/doc.rs:739:47 [INFO] [stdout] | [INFO] [stdout] 734 | let mut store = self [INFO] [stdout] | --------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 739 | Ok(events.destroy_events.unsubscribe(&key.into())) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::option::Option>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/doc.rs:812:31 [INFO] [stdout] | [INFO] [stdout] 784 | let mut txn = self.transact_mut(); [INFO] [stdout] | ------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 812 | if let Some(events) = txn.store_mut().events.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `prev_start` is assigned to, but never used [INFO] [stdout] --> src/id_set.rs:173:29 [INFO] [stdout] | [INFO] [stdout] 173 | let mut prev_start = r.start; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_prev_start` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `prev_start` is never read [INFO] [stdout] --> src/id_set.rs:179:25 [INFO] [stdout] | [INFO] [stdout] 179 | prev_start = r.start; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::collections::hash_map::Entry<'_, Arc, Arc>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/store.rs:126:15 [INFO] [stdout] | [INFO] [stdout] 125 | let key = key.into(); [INFO] [stdout] | --- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 126 | match self.types.entry(key.clone()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Result<::Return, <::Return as TryFrom>::Error>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/types/array.rs:195:37 [INFO] [stdout] | [INFO] [stdout] 186 | fn insert(&self, txn: &mut TransactionMut, index: u32, value: V) -> V::Return [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 195 | if let Ok(integrated) = ptr.try_into() { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Result<::Return, <::Return as TryFrom>::Error>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/types/map.rs:205:33 [INFO] [stdout] | [INFO] [stdout] 190 | let pos = { [INFO] [stdout] | --- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 205 | if let Ok(integrated) = ptr.try_into() { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::option::Option` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/types/text.rs:286:32 [INFO] [stdout] | [INFO] [stdout] 280 | attributes: Attrs, [INFO] [stdout] | ---------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 286 | if let Some(mut pos) = find_position(this, txn, index) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::option::Option` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/types/text.rs:306:28 [INFO] [stdout] | [INFO] [stdout] 301 | fn insert_embed(&self, txn: &mut TransactionMut, index: u32, content: V) -> V::Return [INFO] [stdout] | ------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 306 | if let Some(pos) = find_position(this, txn, index) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::option::Option` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/types/text.rs:339:32 [INFO] [stdout] | [INFO] [stdout] 332 | embed: V, [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 333 | attributes: Attrs, [INFO] [stdout] | ---------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 339 | if let Some(mut pos) = find_position(this, txn, index) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::option::Option` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/types/text.rs:374:32 [INFO] [stdout] | [INFO] [stdout] 372 | fn format(&self, txn: &mut TransactionMut, index: u32, len: u32, attributes: Attrs) { [INFO] [stdout] | ---------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 373 | let this = BranchPtr::from(self.as_ref()); [INFO] [stdout] 374 | if let Some(mut pos) = find_position(this, txn, index) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `branch` [INFO] [stdout] --> src/update.rs:364:35 [INFO] [stdout] | [INFO] [stdout] 364 | ItemContent::Type(branch) => { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_branch` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `input::In` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/input.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 31 | fn into_content(self, _txn: &mut TransactionMut) -> (ItemContent, Option) { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 34 | other => { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Guard>>>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/observer.rs:85:32 [INFO] [stdout] | [INFO] [stdout] 81 | pub fn trigger(&self, mut each: E) [INFO] [stdout] | -------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 85 | if let Some(inner) = &*self.inner.load() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::option::Option>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/transact.rs:108:15 [INFO] [stdout] | [INFO] [stdout] 104 | fn try_transact_mut_with(&self, origin: T) -> Result [INFO] [stdout] | ------ these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 108 | match self.store.try_write() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Transaction` [INFO] [stdout] --> src/doc.rs:6:34 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::transaction::{Origin, Transaction, TransactionMut}; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `ArrayRef` [INFO] [stdout] --> src/types/mod.rs:18:39 [INFO] [stdout] | [INFO] [stdout] 18 | use crate::types::array::{ArrayEvent, ArrayRef}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `XmlElementRef` and `XmlTextRef` [INFO] [stdout] --> src/types/mod.rs:23:25 [INFO] [stdout] | [INFO] [stdout] 23 | use crate::types::xml::{XmlElementRef, XmlEvent, XmlTextEvent, XmlTextRef}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `clock_end` is never used [INFO] [stdout] --> src/block.rs:134:12 [INFO] [stdout] | [INFO] [stdout] 126 | impl BlockCell { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 134 | pub fn clock_end(&self) -> u32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `with_capacity` and `get_block_mut` are never used [INFO] [stdout] --> src/block_store.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl ClientBlockList { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn with_capacity(capacity: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | fn get_block_mut(&mut self, clock: u32) -> Option<&mut BlockCell> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `contains`, `get_block_mut`, and `get_client_blocks_with_capacity_mut` are never used [INFO] [stdout] --> src/block_store.rs:203:12 [INFO] [stdout] | [INFO] [stdout] 196 | impl BlockStore { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 203 | pub fn contains(&self, id: &ID) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 273 | pub(crate) fn get_block_mut(&mut self, id: &ID) -> Option<&mut BlockCell> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 329 | pub(crate) fn get_client_blocks_with_capacity_mut( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Blocks` is never constructed [INFO] [stdout] --> src/block_store.rs:394:19 [INFO] [stdout] | [INFO] [stdout] 394 | pub(crate) struct Blocks<'a> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/block_store.rs:400:8 [INFO] [stdout] | [INFO] [stdout] 399 | impl<'a> Blocks<'a> { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 400 | fn new(update: &'a BlockStore) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from` is never used [INFO] [stdout] --> src/types/mod.rs:595:12 [INFO] [stdout] | [INFO] [stdout] 591 | / impl<'a, T: ReadTxn> Entries<'a, T, T> [INFO] [stdout] 592 | | where [INFO] [stdout] 593 | | T: Borrow + ReadTxn, [INFO] [stdout] | |___________________________- associated function in this implementation [INFO] [stdout] 594 | { [INFO] [stdout] 595 | pub fn from(source: &'a HashMap, ItemPtr>, txn: T) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Iter` is never constructed [INFO] [stdout] --> src/types/mod.rs:625:19 [INFO] [stdout] | [INFO] [stdout] 625 | pub(crate) struct Iter<'a, T> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/types/mod.rs:631:8 [INFO] [stdout] | [INFO] [stdout] 630 | impl<'a, T: ReadTxn> Iter<'a, T> { [INFO] [stdout] | -------------------------------- associated function in this implementation [INFO] [stdout] 631 | fn new(ptr: Option<&'a ItemPtr>, txn: &'a T) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `blocks` is never used [INFO] [stdout] --> src/update.rs:45:19 [INFO] [stdout] | [INFO] [stdout] 29 | impl UpdateBlocks { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 45 | pub(crate) fn blocks(&self) -> Blocks<'_> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_empty` is never used [INFO] [stdout] --> src/update.rs:102:19 [INFO] [stdout] | [INFO] [stdout] 97 | impl Update { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 102 | pub(crate) fn is_empty(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `into_block` is never used [INFO] [stdout] --> src/update.rs:872:12 [INFO] [stdout] | [INFO] [stdout] 796 | impl BlockCarrier { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 872 | pub fn into_block(self) -> Option> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Blocks` is never constructed [INFO] [stdout] --> src/update.rs:985:19 [INFO] [stdout] | [INFO] [stdout] 985 | pub(crate) struct Blocks<'a> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/update.rs:991:8 [INFO] [stdout] | [INFO] [stdout] 990 | impl<'a> Blocks<'a> { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 991 | fn new(update: &'a UpdateBlocks) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `move_to`, `forward`, `backward`, and `values` are never used [INFO] [stdout] --> src/block_iter.rs:73:12 [INFO] [stdout] | [INFO] [stdout] 23 | impl BlockIter { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn move_to(&mut self, index: u32, txn: &mut TransactionMut) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn forward(&mut self, txn: &T, len: u32) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 186 | pub fn backward(&mut self, txn: &mut T, mut len: u32) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 516 | pub fn values<'a, 'txn, T: ReadTxn>( [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/block_iter.rs:530:8 [INFO] [stdout] | [INFO] [stdout] 529 | impl<'a, 'txn> Values<'a, 'txn> { [INFO] [stdout] | ------------------------------- associated function in this implementation [INFO] [stdout] 530 | fn new(iter: &'a mut BlockIter, txn: &'txn mut TransactionMut<'txn>) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `remove_at` is never used [INFO] [stdout] --> src/branch.rs:427:19 [INFO] [stdout] | [INFO] [stdout] 245 | impl Branch { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 427 | pub(crate) fn remove_at(&self, txn: &mut TransactionMut, index: u32, len: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/encoding/serde/de.rs:218:19 [INFO] [stdout] | [INFO] [stdout] 217 | impl<'a> AnyDeserializer<'a> { [INFO] [stdout] | ---------------------------- associated function in this implementation [INFO] [stdout] 218 | pub(crate) fn new(value: &'a Any) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `BlockIterator` is never used [INFO] [stdout] --> src/iter.rs:7:18 [INFO] [stdout] | [INFO] [stdout] 7 | pub(crate) trait BlockIterator: TxnIterator + Sized { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `BlockSliceIterator` is never used [INFO] [stdout] --> src/iter.rs:21:18 [INFO] [stdout] | [INFO] [stdout] 21 | pub(crate) trait BlockSliceIterator: TxnIterator + Sized { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/iter.rs:322:8 [INFO] [stdout] | [INFO] [stdout] 318 | / impl RangeIter [INFO] [stdout] 319 | | where [INFO] [stdout] 320 | | I: TxnIterator, [INFO] [stdout] | |___________________________________- associated function in this implementation [INFO] [stdout] 321 | { [INFO] [stdout] 322 | fn new(iter: I, start: StickyIndex, end: StickyIndex) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant `Opened` is never constructed [INFO] [stdout] --> src/iter.rs:441:5 [INFO] [stdout] | [INFO] [stdout] 439 | enum RangeIterState { [INFO] [stdout] | -------------- variant in this enum [INFO] [stdout] 440 | /// Ranged iterator position hasn't reach chosen ID range yet. [INFO] [stdout] 441 | Opened, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `RangeIterState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/iter.rs:456:8 [INFO] [stdout] | [INFO] [stdout] 455 | impl Values { [INFO] [stdout] | ----------------- associated function in this implementation [INFO] [stdout] 456 | fn new(iter: I) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `try_trim`, `contains_id`, `right`, and `left` are never used [INFO] [stdout] --> src/slice.rs:147:12 [INFO] [stdout] | [INFO] [stdout] 100 | impl ItemSlice { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 147 | pub fn try_trim(&mut self, from: &ID, to: &ID) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 192 | pub fn contains_id(&self, id: &ID) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 260 | pub fn right(&self) -> Option { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 280 | pub fn left(&self) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/block_iter.rs:430:12 [INFO] [stdout] | [INFO] [stdout] 430 | if len < 0 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: types that do not implement `Drop` can still have drop glue, consider instead using `std::mem::needs_drop` to detect whether a type is trivially dropped [INFO] [stdout] --> src/observer.rs:280:33 [INFO] [stdout] | [INFO] [stdout] 280 | pub type Subscription = Arc; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dyn_drop)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 19 previous errors; 34 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `yrs` (lib) due to 20 previous errors; 34 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: this value of type `Update` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/alt.rs:27:8 [INFO] [stdout] | [INFO] [stdout] 20 | let mut i = updates.into_iter(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 27 | Ok(Update::merge_updates(merge).encode_v1()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Update` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/alt.rs:47:8 [INFO] [stdout] | [INFO] [stdout] 40 | let mut i = updates.into_iter(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 47 | Ok(Update::merge_updates(merge).encode_v2()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `left` is never read [INFO] [stdout] --> src/block.rs:286:17 [INFO] [stdout] | [INFO] [stdout] 286 | let mut left = None; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `ptr` [INFO] [stdout] --> src/block.rs:728:25 [INFO] [stdout] | [INFO] [stdout] 728 | let ptr = if this.info.is_deleted() { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_ptr` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/block.rs:642:29 [INFO] [stdout] | [INFO] [stdout] 642 | if let Some(mut left) = this.left { [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `transaction::Origin` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/doc.rs:350:49 [INFO] [stdout] | [INFO] [stdout] 345 | let mut store = self [INFO] [stdout] | --------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 350 | Ok(events.update_v1_events.unsubscribe(&key.into())) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `transaction::Origin` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/doc.rs:446:49 [INFO] [stdout] | [INFO] [stdout] 441 | let mut store = self [INFO] [stdout] | --------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 446 | Ok(events.update_v2_events.unsubscribe(&key.into())) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `transaction::Origin` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/doc.rs:534:59 [INFO] [stdout] | [INFO] [stdout] 529 | let mut store = self [INFO] [stdout] | --------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 534 | Ok(events.transaction_cleanup_events.unsubscribe(&key.into())) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `transaction::Origin` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/doc.rs:601:57 [INFO] [stdout] | [INFO] [stdout] 596 | let mut store = self [INFO] [stdout] | --------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 601 | Ok(events.after_transaction_events.unsubscribe(&key.into())) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `transaction::Origin` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/doc.rs:681:47 [INFO] [stdout] | [INFO] [stdout] 676 | let mut store = self [INFO] [stdout] | --------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 681 | Ok(events.subdocs_events.unsubscribe(&key.into())) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `transaction::Origin` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/doc.rs:739:47 [INFO] [stdout] | [INFO] [stdout] 734 | let mut store = self [INFO] [stdout] | --------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 739 | Ok(events.destroy_events.unsubscribe(&key.into())) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::option::Option>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/doc.rs:812:31 [INFO] [stdout] | [INFO] [stdout] 784 | let mut txn = self.transact_mut(); [INFO] [stdout] | ------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 812 | if let Some(events) = txn.store_mut().events.take() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `IntoBlocks` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/doc.rs:1418:30 [INFO] [stdout] | [INFO] [stdout] 1417 | let u = Update::decode_v1(&e.update).unwrap(); [INFO] [stdout] | - these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 1418 | for mut block in u.blocks.into_blocks(false) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::option::Option<(&str, out::Out)>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/doc.rs:1774:29 [INFO] [stdout] | [INFO] [stdout] 1765 | let doc = Doc::new(); [INFO] [stdout] | --- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1773 | let txn = doc.transact(); [INFO] [stdout] | --- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 1774 | for (key, value) in txn.root_refs() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `prev_start` is assigned to, but never used [INFO] [stdout] --> src/id_set.rs:173:29 [INFO] [stdout] | [INFO] [stdout] 173 | let mut prev_start = r.start; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_prev_start` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `prev_start` is never read [INFO] [stdout] --> src/id_set.rs:179:25 [INFO] [stdout] | [INFO] [stdout] 179 | prev_start = r.start; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::collections::hash_map::Entry<'_, Arc, Arc>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/store.rs:126:15 [INFO] [stdout] | [INFO] [stdout] 125 | let key = key.into(); [INFO] [stdout] | --- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 126 | match self.types.entry(key.clone()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Result<::Return, <::Return as TryFrom>::Error>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/types/array.rs:195:37 [INFO] [stdout] | [INFO] [stdout] 186 | fn insert(&self, txn: &mut TransactionMut, index: u32, value: V) -> V::Return [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 195 | if let Ok(integrated) = ptr.try_into() { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::option::Option<(usize, out::Out)>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/types/array.rs:980:27 [INFO] [stdout] | [INFO] [stdout] 971 | let d = Doc::with_client_id(1); [INFO] [stdout] | - these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 972 | let a = d.get_or_insert_array("arr"); [INFO] [stdout] 973 | let mut txn = d.transact_mut(); [INFO] [stdout] | ------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 980 | for (i, value) in a.iter(&txn).enumerate() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] ::: src/any.rs:719:9 [INFO] [stdout] | [INFO] [stdout] 719 | / $crate::any::Any::Map({ [INFO] [stdout] 720 | | let mut object = std::collections::HashMap::new(); [INFO] [stdout] 721 | | any_internal!(@object object () ($($tt)+) ($($tt)+)); [INFO] [stdout] 722 | | std::sync::Arc::new(object) [INFO] [stdout] 723 | | }) [INFO] [stdout] | |__________- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `any::Any` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/types/array.rs:1187:47 [INFO] [stdout] | [INFO] [stdout] 1181 | let mut txn = doc.transact_mut(); [INFO] [stdout] | ------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1187 | if let Any::Array(expected) = yarray.to_json(&txn) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `any::Any` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/types/array.rs:1216:43 [INFO] [stdout] | [INFO] [stdout] 1208 | let mut txn = doc.transact_mut(); [INFO] [stdout] | ------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1211 | let content: Vec<_> = (0..len) [INFO] [stdout] | ------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1216 | if let Any::Array(expected) = yarray.to_json(&txn) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `any::Any` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/types/array.rs:1264:54 [INFO] [stdout] | [INFO] [stdout] 1252 | let mut txn = doc.transact_mut(); [INFO] [stdout] | ------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1264 | if let Any::Array(old_content) = yarray.to_json(&txn) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::option::Option>>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/types/array.rs:1445:17 [INFO] [stdout] | [INFO] [stdout] 1398 | let d1 = Doc::with_client_id(1); [INFO] [stdout] | -- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1401 | let d2 = Doc::with_client_id(2); [INFO] [stdout] | -- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1404 | let e1 = Arc::new(ArcSwapOption::default()); [INFO] [stdout] | -- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 1405 | let inner = e1.clone(); [INFO] [stdout] 1406 | let _s1 = a1.observe(move |txn, e| { [INFO] [stdout] | --- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1410 | let e2 = Arc::new(ArcSwapOption::default()); [INFO] [stdout] | -- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 1411 | let inner = e2.clone(); [INFO] [stdout] 1412 | let _s2 = a2.observe(move |txn, e| { [INFO] [stdout] | --- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1445 | let actual = e1.load_full(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Result<::Return, <::Return as TryFrom>::Error>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/types/map.rs:205:33 [INFO] [stdout] | [INFO] [stdout] 190 | let pos = { [INFO] [stdout] | --- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 205 | if let Ok(integrated) = ptr.try_into() { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::option::Option` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/types/text.rs:286:32 [INFO] [stdout] | [INFO] [stdout] 280 | attributes: Attrs, [INFO] [stdout] | ---------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 286 | if let Some(mut pos) = find_position(this, txn, index) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::option::Option` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/types/text.rs:306:28 [INFO] [stdout] | [INFO] [stdout] 301 | fn insert_embed(&self, txn: &mut TransactionMut, index: u32, content: V) -> V::Return [INFO] [stdout] | ------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 306 | if let Some(pos) = find_position(this, txn, index) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::option::Option` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/types/text.rs:339:32 [INFO] [stdout] | [INFO] [stdout] 332 | embed: V, [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 333 | attributes: Attrs, [INFO] [stdout] | ---------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 339 | if let Some(mut pos) = find_position(this, txn, index) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::option::Option` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/types/text.rs:374:32 [INFO] [stdout] | [INFO] [stdout] 372 | fn format(&self, txn: &mut TransactionMut, index: u32, len: u32, attributes: Attrs) { [INFO] [stdout] | ---------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 373 | let this = BranchPtr::from(self.as_ref()); [INFO] [stdout] 374 | if let Some(mut pos) = find_position(this, txn, index) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::option::Option>>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/types/text.rs:2178:17 [INFO] [stdout] | [INFO] [stdout] 2018 | let d1 = Doc::with_client_id(1); [INFO] [stdout] | -- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2021 | let delta1 = Arc::new(ArcSwapOption::default()); [INFO] [stdout] | ------ these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 2022 | let delta_clone = delta1.clone(); [INFO] [stdout] 2023 | let _sub1 = [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2026 | let d2 = Doc::with_client_id(2); [INFO] [stdout] | -- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2029 | let delta2 = Arc::new(ArcSwapOption::default()); [INFO] [stdout] | ------ these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 2030 | let delta_clone = delta2.clone(); [INFO] [stdout] 2031 | let _sub2 = [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2034 | let a: Attrs = HashMap::from([("bold".into(), Any::Bool(true))]); [INFO] [stdout] | - these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2178 | let expected = Some(Arc::new(vec![ [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 2186 | / vec![ [INFO] [stdout] 2187 | | Diff::new("yz".into(), None), [INFO] [stdout] 2188 | | Diff::new("b".into(), Some(Box::new(a.clone()))) [INFO] [stdout] 2189 | | ] [INFO] [stdout] | |_________________- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `TransactionMut<'_>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/types/text.rs:2276:28 [INFO] [stdout] | [INFO] [stdout] 2205 | let d1 = Doc::with_client_id(1); [INFO] [stdout] | -- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2208 | let delta1 = Arc::new(ArcSwapOption::default()); [INFO] [stdout] | ------ these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 2209 | let delta_clone = delta1.clone(); [INFO] [stdout] 2210 | let _sub1 = txt1.observe(move |txn, e| { [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2252 | let a1 = Some(Box::new(a1)); [INFO] [stdout] | -- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2258 | let expected = vec![ [INFO] [stdout] | -------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2264 | let d2 = Doc::new(); [INFO] [stdout] | -- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2273 | let d3 = Doc::new(); [INFO] [stdout] | -- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2276 | let txn = &mut d3.transact_mut(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Transaction<'_>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/types/text.rs:2354:41 [INFO] [stdout] | [INFO] [stdout] 2310 | let doc = Doc::with_options(Options { [INFO] [stdout] | --- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2354 | assert_eq!(text.get_string(&doc.transact()), ""); [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `branch` [INFO] [stdout] --> src/update.rs:364:35 [INFO] [stdout] | [INFO] [stdout] 364 | ItemContent::Type(branch) => { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_branch` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `encoding::read::Error` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/encoding/serde/de.rs:910:13 [INFO] [stdout] | [INFO] [stdout] 905 | let any: Any = HashMap::from([("test".to_string(), Any::Number(1000.1f64))]).into(); [INFO] [stdout] | --- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 906 | [INFO] [stdout] 907 | let error = from_any::(&any).unwrap_err(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 910 | other => panic!("unexpected error {}", other), [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `input::In` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/input.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 31 | fn into_content(self, _txn: &mut TransactionMut) -> (ItemContent, Option) { [INFO] [stdout] | ---- [INFO] [stdout] | | [INFO] [stdout] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] | these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 34 | other => { [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Transaction<'_>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/iter.rs:606:17 [INFO] [stdout] | [INFO] [stdout] 573 | let d1 = Doc::with_client_id(1); [INFO] [stdout] | -- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 576 | let d2 = Doc::with_client_id(2); [INFO] [stdout] | -- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 606 | let txn = d1.transact(); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Transaction<'_>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/iter.rs:645:17 [INFO] [stdout] | [INFO] [stdout] 617 | let d1 = Doc::with_client_id(1); [INFO] [stdout] | -- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 620 | let d2 = Doc::with_client_id(2); [INFO] [stdout] | -- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 645 | let txn = d1.transact(); [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `moving::StickyIndex` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/moving.rs:858:21 [INFO] [stdout] | [INFO] [stdout] 853 | let mut txn = doc.transact_mut(); [INFO] [stdout] | ------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 858 | let rel_pos = text.sticky_index(&mut txn, i, assoc).unwrap(); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Guard>>>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/observer.rs:85:32 [INFO] [stdout] | [INFO] [stdout] 81 | pub fn trigger(&self, mut each: E) [INFO] [stdout] | -------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 85 | if let Some(inner) = &*self.inner.load() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `Arc` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/observer.rs:403:17 [INFO] [stdout] | [INFO] [stdout] 399 | let counter = Arc::new(AtomicI32::new(0)); [INFO] [stdout] | ------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 400 | let o: Observer = Observer::new(); [INFO] [stdout] | - these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 403 | let _sub = o.subscribe(DropCounter::new(counter.clone())); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::array::IntoIter` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/sync/protocol.rs:576:20 [INFO] [stdout] | [INFO] [stdout] 546 | let awareness = Awareness::new(doc); [INFO] [stdout] | --------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 576 | for msg in messages { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::sync::MutexGuard<'_, TestPeerState>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/test_utils.rs:419:17 [INFO] [stdout] | [INFO] [stdout] 403 | pub fn assert_final_state(mut self) { [INFO] [stdout] | -------- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 417 | let inner = self.0.lock().unwrap(); [INFO] [stdout] | ----- these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] 418 | for i in 0..(inner.peers.len() - 1) { [INFO] [stdout] 419 | let p1 = inner.peers[i].state(); [INFO] [stdout] | ^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: this value of type `std::option::Option>` has significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/transact.rs:108:15 [INFO] [stdout] | [INFO] [stdout] 104 | fn try_transact_mut_with(&self, origin: T) -> Result [INFO] [stdout] | ------ these local bindings with significant drop implementation may observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 108 | match self.store.try_write() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `clock_end` is never used [INFO] [stdout] --> src/block.rs:134:12 [INFO] [stdout] | [INFO] [stdout] 126 | impl BlockCell { [INFO] [stdout] | -------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 134 | pub fn clock_end(&self) -> u32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `with_capacity` and `get_block_mut` are never used [INFO] [stdout] --> src/block_store.rs:41:12 [INFO] [stdout] | [INFO] [stdout] 19 | impl ClientBlockList { [INFO] [stdout] | -------------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 41 | pub fn with_capacity(capacity: usize) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 102 | fn get_block_mut(&mut self, clock: u32) -> Option<&mut BlockCell> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `contains`, `get_block_mut`, and `get_client_blocks_with_capacity_mut` are never used [INFO] [stdout] --> src/block_store.rs:203:12 [INFO] [stdout] | [INFO] [stdout] 196 | impl BlockStore { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 203 | pub fn contains(&self, id: &ID) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 273 | pub(crate) fn get_block_mut(&mut self, id: &ID) -> Option<&mut BlockCell> { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 329 | pub(crate) fn get_client_blocks_with_capacity_mut( [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Blocks` is never constructed [INFO] [stdout] --> src/block_store.rs:394:19 [INFO] [stdout] | [INFO] [stdout] 394 | pub(crate) struct Blocks<'a> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/block_store.rs:400:8 [INFO] [stdout] | [INFO] [stdout] 399 | impl<'a> Blocks<'a> { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 400 | fn new(update: &'a BlockStore) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `from` is never used [INFO] [stdout] --> src/types/mod.rs:595:12 [INFO] [stdout] | [INFO] [stdout] 591 | / impl<'a, T: ReadTxn> Entries<'a, T, T> [INFO] [stdout] 592 | | where [INFO] [stdout] 593 | | T: Borrow + ReadTxn, [INFO] [stdout] | |___________________________- associated function in this implementation [INFO] [stdout] 594 | { [INFO] [stdout] 595 | pub fn from(source: &'a HashMap, ItemPtr>, txn: T) -> Self { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `Iter` is never constructed [INFO] [stdout] --> src/types/mod.rs:625:19 [INFO] [stdout] | [INFO] [stdout] 625 | pub(crate) struct Iter<'a, T> { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/types/mod.rs:631:8 [INFO] [stdout] | [INFO] [stdout] 630 | impl<'a, T: ReadTxn> Iter<'a, T> { [INFO] [stdout] | -------------------------------- associated function in this implementation [INFO] [stdout] 631 | fn new(ptr: Option<&'a ItemPtr>, txn: &'a T) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_empty` is never used [INFO] [stdout] --> src/update.rs:102:19 [INFO] [stdout] | [INFO] [stdout] 97 | impl Update { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 102 | pub(crate) fn is_empty(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `into_block` is never used [INFO] [stdout] --> src/update.rs:872:12 [INFO] [stdout] | [INFO] [stdout] 796 | impl BlockCarrier { [INFO] [stdout] | ----------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 872 | pub fn into_block(self) -> Option> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `move_to`, `forward`, `backward`, and `values` are never used [INFO] [stdout] --> src/block_iter.rs:73:12 [INFO] [stdout] | [INFO] [stdout] 23 | impl BlockIter { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn move_to(&mut self, index: u32, txn: &mut TransactionMut) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 99 | pub fn forward(&mut self, txn: &T, len: u32) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 186 | pub fn backward(&mut self, txn: &mut T, mut len: u32) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 516 | pub fn values<'a, 'txn, T: ReadTxn>( [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/block_iter.rs:530:8 [INFO] [stdout] | [INFO] [stdout] 529 | impl<'a, 'txn> Values<'a, 'txn> { [INFO] [stdout] | ------------------------------- associated function in this implementation [INFO] [stdout] 530 | fn new(iter: &'a mut BlockIter, txn: &'txn mut TransactionMut<'txn>) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `remove_at` is never used [INFO] [stdout] --> src/branch.rs:427:19 [INFO] [stdout] | [INFO] [stdout] 245 | impl Branch { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 427 | pub(crate) fn remove_at(&self, txn: &mut TransactionMut, index: u32, len: u32) -> u32 { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/encoding/serde/de.rs:218:19 [INFO] [stdout] | [INFO] [stdout] 217 | impl<'a> AnyDeserializer<'a> { [INFO] [stdout] | ---------------------------- associated function in this implementation [INFO] [stdout] 218 | pub(crate) fn new(value: &'a Any) -> Self { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `try_trim`, `contains_id`, `right`, and `left` are never used [INFO] [stdout] --> src/slice.rs:147:12 [INFO] [stdout] | [INFO] [stdout] 100 | impl ItemSlice { [INFO] [stdout] | -------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 147 | pub fn try_trim(&mut self, from: &ID, to: &ID) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 192 | pub fn contains_id(&self, id: &ID) -> bool { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 260 | pub fn right(&self) -> Option { [INFO] [stdout] | ^^^^^ [INFO] [stdout] ... [INFO] [stdout] 280 | pub fn left(&self) -> Option { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: comparison is useless due to type limits [INFO] [stdout] --> src/block_iter.rs:430:12 [INFO] [stdout] | [INFO] [stdout] 430 | if len < 0 { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_comparisons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/encoding/mod.rs:44:21 [INFO] [stdout] | [INFO] [stdout] 44 | #[derive(Debug, proptest_derive::Arbitrary)] [INFO] [stdout] | ^------------------------- [INFO] [stdout] | | [INFO] [stdout] | `Arbitrary` is not local [INFO] [stdout] | move the `impl` block outside of this constant `_IMPL_ARBITRARY_FOR_EncodingTypes` [INFO] [stdout] 45 | enum EncodingTypes { [INFO] [stdout] | ------------- `EncodingTypes` is not local [INFO] [stdout] | [INFO] [stdout] = note: the derive macro `proptest_derive::Arbitrary` defines the non-local `impl`, and may need to be changed [INFO] [stdout] = note: the derive macro `proptest_derive::Arbitrary` may come from an old version of the `proptest_derive` crate, try updating your dependency with `cargo update -p proptest_derive` [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: items in an anonymous const item (`const _: () = { ... }`) are treated as in the same scope as the anonymous const's declaration for the purpose of this lint [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] = note: this warning originates in the derive macro `proptest_derive::Arbitrary` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: types that do not implement `Drop` can still have drop glue, consider instead using `std::mem::needs_drop` to detect whether a type is trivially dropped [INFO] [stdout] --> src/observer.rs:280:33 [INFO] [stdout] | [INFO] [stdout] 280 | pub type Subscription = Arc; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dyn_drop)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 36 previous errors; 27 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `yrs` (lib test) due to 37 previous errors; 27 warnings emitted [INFO] running `Command { std: "docker" "inspect" "0c44b782532972fd525da78adce8c1df6414383a461bcf926833a403308455ed", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0c44b782532972fd525da78adce8c1df6414383a461bcf926833a403308455ed", kill_on_drop: false }` [INFO] [stdout] 0c44b782532972fd525da78adce8c1df6414383a461bcf926833a403308455ed