[INFO] fetching crate tetsy-db 0.1.2... [INFO] checking tetsy-db-0.1.2 against try#4d98531622e1718ae0bc3c7a1ab9cd8938428452+rustflags=-Dtail_expr_drop_order for pr-129604 [INFO] extracting crate tetsy-db 0.1.2 into /workspace/builds/worker-3-tc2/source [INFO] validating manifest of crates.io crate tetsy-db 0.1.2 on toolchain 4d98531622e1718ae0bc3c7a1ab9cd8938428452 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate tetsy-db 0.1.2 [INFO] finished tweaking crates.io crate tetsy-db 0.1.2 [INFO] tweaked toml for crates.io crate tetsy-db 0.1.2 written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "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] Locking 58 packages to latest compatible versions [INFO] [stderr] Adding arrayvec v0.4.12 (latest: v0.7.6) [INFO] [stderr] Adding bitflags v1.3.2 (latest: v2.6.0) [INFO] [stderr] Adding cfg-if v0.1.10 (latest: v1.0.0) [INFO] [stderr] Adding cloudabi v0.0.3 (latest: v0.1.0) [INFO] [stderr] Adding constant_time_eq v0.1.5 (latest: v0.3.1) [INFO] [stderr] Adding env_logger v0.7.1 (latest: v0.11.5) [INFO] [stderr] Adding getrandom v0.1.16 (latest: v0.2.15) [INFO] [stderr] Adding hermit-abi v0.1.19 (latest: v0.4.0) [INFO] [stderr] Adding humantime v1.3.0 (latest: v2.1.0) [INFO] [stderr] Adding lock_api v0.3.4 (latest: v0.4.12) [INFO] [stderr] Adding parking_lot v0.10.2 (latest: v0.12.3) [INFO] [stderr] Adding parking_lot_core v0.7.3 (latest: v0.9.10) [INFO] [stderr] Adding quick-error v1.2.3 (latest: v2.0.1) [INFO] [stderr] Adding rand v0.7.3 (latest: v0.8.5) [INFO] [stderr] Adding rand_chacha v0.2.2 (latest: v0.3.1) [INFO] [stderr] Adding rand_core v0.5.1 (latest: v0.6.4) [INFO] [stderr] Adding rand_hc v0.2.0 (latest: v0.3.2) [INFO] [stderr] Adding redox_syscall v0.1.57 (latest: v0.5.3) [INFO] [stderr] Adding wasi v0.9.0+wasi-snapshot-preview1 (latest: v0.13.2+wasi-0.2.1) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] e421eee440553651d86f2ffeac6d5ddee9a424691fe2a6d46c93de6a495e25ff [INFO] running `Command { std: "docker" "start" "-a" "e421eee440553651d86f2ffeac6d5ddee9a424691fe2a6d46c93de6a495e25ff", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "e421eee440553651d86f2ffeac6d5ddee9a424691fe2a6d46c93de6a495e25ff", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e421eee440553651d86f2ffeac6d5ddee9a424691fe2a6d46c93de6a495e25ff", kill_on_drop: false }` [INFO] [stdout] e421eee440553651d86f2ffeac6d5ddee9a424691fe2a6d46c93de6a495e25ff [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] b54813ea3eb3a1a4c9fc3424e3e161229fa18374328e98f088ed3988853819af [INFO] running `Command { std: "docker" "start" "-a" "b54813ea3eb3a1a4c9fc3424e3e161229fa18374328e98f088ed3988853819af", kill_on_drop: false }` [INFO] [stderr] Compiling getrandom v0.1.16 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling arrayvec v0.4.12 [INFO] [stderr] Checking nodrop v0.1.14 [INFO] [stderr] Checking cfg-if v0.1.10 [INFO] [stderr] Checking log v0.4.22 [INFO] [stderr] Checking memmap v0.7.0 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Checking lock_api v0.3.4 [INFO] [stderr] Checking humantime v1.3.0 [INFO] [stderr] Checking termcolor v1.4.1 [INFO] [stderr] Checking parking_lot_core v0.7.3 [INFO] [stderr] Checking parking_lot v0.10.2 [INFO] [stderr] Checking rand_core v0.5.1 [INFO] [stderr] Checking blake2-rfc v0.2.18 [INFO] [stderr] Checking zerocopy v0.7.35 [INFO] [stderr] Checking tetsy-db v0.1.2 (/opt/rustwide/workdir) [INFO] [stderr] Checking regex-automata v0.4.7 [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicBool::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> src/table.rs:609:24 [INFO] [stdout] | [INFO] [stdout] 609 | if self.dirty_header.compare_and_swap(true, false, Ordering::Relaxed) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/log.rs:40:14 [INFO] [stdout] | [INFO] [stdout] 40 | BeginRecord(u64), [INFO] [stdout] | ----------- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field [INFO] [stdout] | [INFO] [stdout] 40 | BeginRecord(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/db.rs:110:6 [INFO] [stdout] | [INFO] [stdout] 106 | let mut columns = Vec::with_capacity(options.columns.len()); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 110 | Ok(DbInner { [INFO] [stdout] | ____________^ [INFO] [stdout] 111 | | columns, [INFO] [stdout] 112 | | options: options.clone(), [INFO] [stdout] 113 | | shutdown: std::sync::atomic::AtomicBool::new(false), [INFO] [stdout] ... | [INFO] [stdout] 130 | | bg_err: Mutex::new(None), [INFO] [stdout] 131 | | }) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/db.rs:582:6 [INFO] [stdout] | [INFO] [stdout] 568 | let db = Arc::new(DbInner::open(options)?); [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 569 | db.replay_all_logs()?; [INFO] [stdout] 570 | let commit_worker_db = db.clone(); [INFO] [stdout] | ---------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 571 | let commit_thread = std::thread::spawn(move || [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 574 | let flush_worker_db = db.clone(); [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 575 | let flush_thread = std::thread::spawn(move || [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 578 | let log_worker_db = db.clone(); [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 579 | let log_thread = std::thread::spawn(move || [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 582 | Ok(Db { [INFO] [stdout] | ____________^ [INFO] [stdout] 583 | | inner: db, [INFO] [stdout] 584 | | commit_thread: Some(commit_thread), [INFO] [stdout] 585 | | flush_thread: Some(flush_thread), [INFO] [stdout] 586 | | log_thread: Some(log_thread), [INFO] [stdout] 587 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/db.rs:572:31 [INFO] [stdout] | [INFO] [stdout] 570 | let commit_worker_db = db.clone(); [INFO] [stdout] | ---------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 571 | let commit_thread = std::thread::spawn(move || [INFO] [stdout] 572 | commit_worker_db.store_err(Self::commit_worker(commit_worker_db.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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/db.rs:576:30 [INFO] [stdout] | [INFO] [stdout] 574 | let flush_worker_db = db.clone(); [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 575 | let flush_thread = std::thread::spawn(move || [INFO] [stdout] 576 | flush_worker_db.store_err(Self::flush_worker(flush_worker_db.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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/db.rs:580:28 [INFO] [stdout] | [INFO] [stdout] 578 | let log_worker_db = db.clone(); [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 579 | let log_thread = std::thread::spawn(move || [INFO] [stdout] 580 | log_worker_db.store_err(Self::log_worker(log_worker_db.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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/index.rs:199:6 [INFO] [stdout] | [INFO] [stdout] 188 | let file = match std::fs::OpenOptions::new().read(true).write(true).open(path.as_path()) { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 189 | Err(e) if e.kind() == std::io::ErrorKind::NotFound => { [INFO] [stdout] | - these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 192 | Err(e) => return Err(e.into()), [INFO] [stdout] | - these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 193 | Ok(file) => file, [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 197 | let map = unsafe { memmap::MmapMut::map_mut(&file)? }; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 198 | log::debug!(target: "tetsy-db", "Opened existing index {}", id); [INFO] [stdout] 199 | Ok(Some(IndexTable { [INFO] [stdout] | ____________^ [INFO] [stdout] 200 | | id, [INFO] [stdout] 201 | | path, [INFO] [stdout] 202 | | map: RwLock::new(Some(map)), [INFO] [stdout] 203 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |__________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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 borrow that must be used [INFO] [stdout] --> src/index.rs:307:4 [INFO] [stdout] | [INFO] [stdout] 307 | &mut chunk[i * 8 .. i * 8 + 8].copy_from_slice(&new_entry.as_u64().to_le_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 307 | let _ = &mut chunk[i * 8 .. i * 8 + 8].copy_from_slice(&new_entry.as_u64().to_le_bytes()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/index.rs:315:5 [INFO] [stdout] | [INFO] [stdout] 315 | &mut chunk[i * 8 .. i * 8 + 8].copy_from_slice(&new_entry.as_u64().to_le_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 315 | let _ = &mut chunk[i * 8 .. i * 8 + 8].copy_from_slice(&new_entry.as_u64().to_le_bytes()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/index.rs:353:4 [INFO] [stdout] | [INFO] [stdout] 353 | &mut chunk[i * 8 .. i * 8 + 8].copy_from_slice(&new_entry.as_u64().to_le_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 353 | let _ = &mut chunk[i * 8 .. i * 8 + 8].copy_from_slice(&new_entry.as_u64().to_le_bytes()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/table.rs:168:6 [INFO] [stdout] | [INFO] [stdout] 150 | let mut file = std::fs::OpenOptions::new().create(true).read(true).write(true).open(path.as_path())?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 168 | Ok(ValueTable { [INFO] [stdout] | ____________^ [INFO] [stdout] 169 | | id, [INFO] [stdout] 170 | | entry_size, [INFO] [stdout] 171 | | file, [INFO] [stdout] ... | [INFO] [stdout] 176 | | multipart, [INFO] [stdout] 177 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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: the type `[u8; 65533]` does not permit being left uninitialized [INFO] [stdout] --> src/table.rs:219:48 [INFO] [stdout] | [INFO] [stdout] 219 | let mut buf: [u8; MAX_ENTRY_SIZE] = unsafe { MaybeUninit::uninit().assume_init() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] = note: `#[warn(invalid_value)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `[u8; 10]` does not permit being left uninitialized [INFO] [stdout] --> src/table.rs:317:36 [INFO] [stdout] | [INFO] [stdout] 317 | let mut buf: [u8; 10] = unsafe { MaybeUninit::uninit().assume_init() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `[u8; 10]` does not permit being left uninitialized [INFO] [stdout] --> src/table.rs:328:36 [INFO] [stdout] | [INFO] [stdout] 328 | let mut buf: [u8; 10] = unsafe { MaybeUninit::uninit().assume_init() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `[u8; 65533]` does not permit being left uninitialized [INFO] [stdout] --> src/table.rs:404:49 [INFO] [stdout] | [INFO] [stdout] 404 | let mut buf: [u8; MAX_ENTRY_SIZE] = unsafe { MaybeUninit::uninit().assume_init() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/table.rs:466:3 [INFO] [stdout] | [INFO] [stdout] 466 | &buf[0..2].copy_from_slice(TOMBSTONE); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 466 | let _ = &buf[0..2].copy_from_slice(TOMBSTONE); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/table.rs:467:3 [INFO] [stdout] | [INFO] [stdout] 467 | &buf[2..10].copy_from_slice(&last_removed.to_le_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 467 | let _ = &buf[2..10].copy_from_slice(&last_removed.to_le_bytes()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `[u8; 65533]` does not permit being left uninitialized [INFO] [stdout] --> src/table.rs:507:48 [INFO] [stdout] | [INFO] [stdout] 507 | let mut buf: [u8; MAX_ENTRY_SIZE] = unsafe { MaybeUninit::uninit().assume_init() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `[u8; 65533]` does not permit being left uninitialized [INFO] [stdout] --> src/table.rs:548:48 [INFO] [stdout] | [INFO] [stdout] 548 | let mut buf: [u8; MAX_ENTRY_SIZE] = unsafe { MaybeUninit::uninit().assume_init() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `[u8; 65533]` does not permit being left uninitialized [INFO] [stdout] --> src/table.rs:576:48 [INFO] [stdout] | [INFO] [stdout] 576 | let mut buf: [u8; MAX_ENTRY_SIZE] = unsafe { MaybeUninit::uninit().assume_init() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/column.rs:124:6 [INFO] [stdout] | [INFO] [stdout] 98 | let (index, reindexing, stats) = Self::open_index(&options.path, col)?; [INFO] [stdout] | ----- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 102 | let tables = Tables { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 124 | Ok(Column { [INFO] [stdout] | ____________^ [INFO] [stdout] 125 | | tables: RwLock::new(tables), [INFO] [stdout] 126 | | reindex: RwLock::new(Reindex { [INFO] [stdout] 127 | | queue: reindexing, [INFO] [stdout] ... | [INFO] [stdout] 135 | | stats, [INFO] [stdout] 136 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/column.rs:169:6 [INFO] [stdout] | [INFO] [stdout] 151 | let mut reindexing = VecDeque::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 152 | let mut top = None; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 165 | let table = match top { [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 166 | Some(table) => table, [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 169 | Ok((table, reindexing, stats)) [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 borrow that must be used [INFO] [stdout] --> src/column.rs:457:7 [INFO] [stdout] | [INFO] [stdout] 457 | &mut key[0..8].copy_from_slice(&index_key.to_be_bytes()); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 457 | let _ = &mut key[0..8].copy_from_slice(&index_key.to_be_bytes()); [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/log.rs:60:3 [INFO] [stdout] | [INFO] [stdout] 59 | fn with_index R> (&self, table: IndexTableId, index: u64, f: F) -> Option { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 60 | self.read().index.get(&table).and_then(|o| o.map.get(&index).map(|(_id, data)| f(data))) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/log.rs:60:42 [INFO] [stdout] | [INFO] [stdout] 59 | fn with_index R> (&self, table: IndexTableId, index: u64, f: F) -> Option { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 60 | self.read().index.get(&table).and_then(|o| o.map.get(&index).map(|(_id, data)| f(data))) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/log.rs:60:68 [INFO] [stdout] | [INFO] [stdout] 59 | fn with_index R> (&self, table: IndexTableId, index: u64, f: F) -> Option { [INFO] [stdout] | - these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 60 | self.read().index.get(&table).and_then(|o| o.map.get(&index).map(|(_id, data)| f(data))) [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/log.rs:361:6 [INFO] [stdout] | [INFO] [stdout] 345 | let (file0, id0) = Self::open_or_create_log_file(path.as_path())?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 348 | let (file1, id1) = Self::open_or_create_log_file(path.as_path())?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 351 | let (file2, id2) = Self::open_or_create_log_file(path.as_path())?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 352 | [INFO] [stdout] 353 | let mut ids = [(id0.unwrap_or(0), Some(file0)), (id1.unwrap_or(0), Some(file1)), (id2.unwrap_or(0), Some(file2))]; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 356 | let reading = ids[0].1.take().unwrap(); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 357 | let flushing = ids[1].1.take().unwrap(); [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 358 | let mut appending = ids[2].1.take().unwrap(); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 361 | Ok(Log { [INFO] [stdout] | ____________^ [INFO] [stdout] 362 | | overlays: Default::default(), [INFO] [stdout] 363 | | appending: RwLock::new(Appending { [INFO] [stdout] 364 | | file: std::io::BufWriter::new(appending), [INFO] [stdout] ... | [INFO] [stdout] 376 | | sync: options.sync, [INFO] [stdout] 377 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/log.rs:392:6 [INFO] [stdout] | [INFO] [stdout] 381 | let mut file = std::fs::OpenOptions::new().create(true).read(true).write(true).open(path)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 392 | Ok((file, Some(id))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will 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] warning: the type `[AtomicU32; 2048]` does not permit being left uninitialized [INFO] [stdout] --> src/stats.rs:77:70 [INFO] [stdout] | [INFO] [stdout] 77 | let mut value_histogram: [AtomicU32; HISTOGRAM_BUCKETS] = unsafe { MaybeUninit::uninit().assume_init() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the type `[AtomicU64; 16]` does not permit being left uninitialized [INFO] [stdout] --> src/stats.rs:81:63 [INFO] [stdout] | [INFO] [stdout] 81 | let mut query_histogram: [AtomicU64; SIZE_TIERS] = unsafe { MaybeUninit::uninit().assume_init() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this code causes undefined behavior when executed [INFO] [stdout] | help: use `MaybeUninit` instead, and only call `assume_init` after initialization is done [INFO] [stdout] | [INFO] [stdout] = note: integers must be initialized [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 14 previous errors; 17 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking ppv-lite86 v0.2.20 [INFO] [stderr] error: could not compile `tetsy-db` (lib) due to 15 previous errors; 17 warnings emitted [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] running `Command { std: "docker" "inspect" "b54813ea3eb3a1a4c9fc3424e3e161229fa18374328e98f088ed3988853819af", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b54813ea3eb3a1a4c9fc3424e3e161229fa18374328e98f088ed3988853819af", kill_on_drop: false }` [INFO] [stdout] b54813ea3eb3a1a4c9fc3424e3e161229fa18374328e98f088ed3988853819af