[INFO] fetching crate bbolt-rs 1.3.10... [INFO] testing bbolt-rs-1.3.10 against try#8de4c7234dd9b97c9d76b58671343fdbbc9a433e+target=x86_64-unknown-linux-musl for musl_upgrade_1_2_5_with_libc_patch_0 [INFO] extracting crate bbolt-rs 1.3.10 into /workspace/builds/worker-5-tc1/source [INFO] started tweaking crates.io crate bbolt-rs 1.3.10 [INFO] finished tweaking crates.io crate bbolt-rs 1.3.10 [INFO] tweaked toml for crates.io crate bbolt-rs 1.3.10 written to /workspace/builds/worker-5-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate bbolt-rs 1.3.10 on toolchain 8de4c7234dd9b97c9d76b58671343fdbbc9a433e [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate bbolt-rs 1.3.10 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded page_size v0.6.0 [INFO] [stderr] Downloaded typed-builder-macro v0.20.0 [INFO] [stderr] Downloaded monotonic-timer v1.0.0 [INFO] [stderr] Downloaded fs4 v0.9.1 [INFO] [stderr] Downloaded dummy v0.8.0 [INFO] [stderr] Downloaded fnv_rs v0.4.3 [INFO] [stderr] Downloaded clap v4.5.19 [INFO] [stderr] Downloaded aligners v0.0.10 [INFO] [stderr] Downloaded fake v2.10.0 [INFO] [stderr] Downloaded typed-builder v0.20.0 [INFO] [stderr] Downloaded getset v0.1.3 [INFO] [stderr] Downloaded clap_builder v4.5.19 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] da5a16eb550109b5850de50eacf2ffb1d24b85abafcfd63250a2cacf63b101a3 [INFO] running `Command { std: "docker" "start" "-a" "da5a16eb550109b5850de50eacf2ffb1d24b85abafcfd63250a2cacf63b101a3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "da5a16eb550109b5850de50eacf2ffb1d24b85abafcfd63250a2cacf63b101a3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "da5a16eb550109b5850de50eacf2ffb1d24b85abafcfd63250a2cacf63b101a3", kill_on_drop: false }` [INFO] [stdout] da5a16eb550109b5850de50eacf2ffb1d24b85abafcfd63250a2cacf63b101a3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "build" "--frozen" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 1b81ac5b99db9898363a469a1c0ebf66b13d5207564c7ab99c7ffb9d4ef9cdbd [INFO] running `Command { std: "docker" "start" "-a" "1b81ac5b99db9898363a469a1c0ebf66b13d5207564c7ab99c7ffb9d4ef9cdbd", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.86 [INFO] [stderr] Compiling unicode-ident v1.0.13 [INFO] [stderr] Compiling libc v0.2.159 [INFO] [stderr] Compiling semver v1.0.23 [INFO] [stderr] Compiling utf8parse v0.2.2 [INFO] [stderr] Compiling rustix v0.38.37 [INFO] [stderr] Compiling once_cell v1.20.1 [INFO] [stderr] Compiling is_terminal_polyfill v1.70.1 [INFO] [stderr] Compiling bitflags v2.6.0 [INFO] [stderr] Compiling anstyle v1.0.8 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Compiling anstyle-query v1.1.1 [INFO] [stderr] Compiling linux-raw-sys v0.4.14 [INFO] [stderr] Compiling colorchoice v1.0.2 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Compiling smallvec v1.13.2 [INFO] [stderr] Compiling clap_lex v0.7.2 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Compiling anstyle-parse v0.2.5 [INFO] [stderr] Compiling anyhow v1.0.89 [INFO] [stderr] Compiling allocator-api2 v0.2.18 [INFO] [stderr] Compiling cfg_aliases v0.2.1 [INFO] [stderr] Compiling thiserror v1.0.64 [INFO] [stderr] Compiling strsim v0.11.1 [INFO] [stderr] Compiling bbolt-rs v1.3.10 (/opt/rustwide/workdir) [INFO] [stderr] Compiling anstream v0.6.15 [INFO] [stderr] Compiling deunicode v1.6.0 [INFO] [stderr] Compiling litrs v0.4.1 [INFO] [stderr] Compiling fastrand v2.1.1 [INFO] [stderr] Compiling rustc_version v0.4.1 [INFO] [stderr] Compiling itertools v0.13.0 [INFO] [stderr] Compiling size v0.4.1 [INFO] [stderr] Compiling monotonic-timer v1.0.0 [INFO] [stderr] Compiling aliasable v0.1.3 [INFO] [stderr] Compiling log v0.4.22 [INFO] [stderr] Compiling clap_builder v4.5.19 [INFO] [stderr] Compiling bumpalo v3.16.0 [INFO] [stderr] Compiling quote v1.0.37 [INFO] [stderr] Compiling fnv_rs v0.4.3 [INFO] [stderr] Compiling syn v2.0.79 [INFO] [stderr] Compiling document-features v0.2.10 [INFO] [stderr] Compiling proc-macro-error-attr2 v2.0.0 [INFO] [stderr] Compiling getrandom v0.2.15 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling page_size v0.4.2 [INFO] [stderr] Compiling memmap2 v0.9.5 [INFO] [stderr] Compiling page_size v0.6.0 [INFO] [stderr] Compiling aligners v0.0.10 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling parking_lot v0.12.3 [INFO] [stderr] Compiling tempfile v3.13.0 [INFO] [stderr] Compiling fs4 v0.9.1 [INFO] [stderr] Compiling darling_core v0.20.10 [INFO] [stderr] Compiling proc-macro-error2 v2.0.1 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling clap_derive v4.5.18 [INFO] [stderr] Compiling bytemuck_derive v1.7.1 [INFO] [stderr] Compiling typed-builder-macro v0.20.0 [INFO] [stderr] Compiling pin-project-internal v1.1.5 [INFO] [stderr] Compiling thiserror-impl v1.0.64 [INFO] [stderr] Compiling getset v0.1.3 [INFO] [stderr] Compiling zerocopy v0.7.35 [INFO] [stderr] Compiling bytemuck v1.18.0 [INFO] [stderr] Compiling darling_macro v0.20.10 [INFO] [stderr] Compiling ppv-lite86 v0.2.20 [INFO] [stderr] Compiling pin-project v1.1.5 [INFO] [stderr] Compiling typed-builder v0.20.0 [INFO] [stderr] Compiling hashbrown v0.14.5 [INFO] [stderr] Compiling darling v0.20.10 [INFO] [stderr] Compiling clap v4.5.19 [INFO] [stderr] Compiling dummy v0.8.0 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling fake v2.10.0 [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/common/inode.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools::rev` [INFO] [stdout] --> src/iter.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use itertools::rev; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MappedMetaPage` and `MetaPage` [INFO] [stdout] --> src/util.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::common::page::meta::{MappedMetaPage, MetaPage}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CoerciblePage` and `MutPage` [INFO] [stdout] --> src/util.rs:2:27 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::common::page::{CoerciblePage, MutPage}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::common::SplitRef` [INFO] [stdout] --> src/util.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::common::SplitRef; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TxCell` [INFO] [stdout] --> src/util.rs:5:17 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::tx::{TxCell, TxIApi}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PgId` [INFO] [stdout] --> src/util.rs:6:47 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::{Bolt, BucketRwApi, DbApi, DbPath, PgId, TxRwApi, TxRwRefApi}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AlignedBytes` and `alignment` [INFO] [stdout] --> src/util.rs:7:16 [INFO] [stdout] | [INFO] [stdout] 7 | use aligners::{alignment, AlignedBytes}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::OpenOptions` [INFO] [stdout] --> src/util.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::fs::OpenOptions; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/util.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> src/util.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Write` [INFO] [stdout] --> src/tx.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | use std::io::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/bucket.rs:876:8 [INFO] [stdout] | [INFO] [stdout] 876 | struct InlineBucket { [INFO] [stdout] | ^^^^^^^^^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/bucket.rs:873:1 [INFO] [stdout] | [INFO] [stdout] 873 | / /// A convenience struct representing an inline page header [INFO] [stdout] 874 | | #[repr(C)] [INFO] [stdout] 875 | | #[derive(Copy, Clone, Pod, Zeroable)] [INFO] [stdout] 876 | | struct InlineBucket { [INFO] [stdout] 877 | | header: BucketHeader, [INFO] [stdout] 878 | | page: PageHeader, [INFO] [stdout] 879 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/bucket.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | / /// `BucketHeader` represents the on-file layout of a bucket header. [INFO] [stdout] 9 | | /// This is stored as the "value" of a bucket key. If the bucket is small enough, [INFO] [stdout] 10 | | /// then its root page can be stored inline in the "value", after the bucket [INFO] [stdout] 11 | | /// header. In the case of inline buckets, the "root" will be 0. [INFO] [stdout] ... | [INFO] [stdout] 21 | | sequence: u64, [INFO] [stdout] 22 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/bucket.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct BucketHeader { [INFO] [stdout] | ^^^^^^^^^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `own` and `coerce_mut` are never used [INFO] [stdout] --> src/common/page/mod.rs:34:6 [INFO] [stdout] | [INFO] [stdout] 21 | pub trait CoerciblePage { [INFO] [stdout] | ------------- associated functions in this trait [INFO] [stdout] ... [INFO] [stdout] 34 | fn own(bytes: *mut u8) -> Self; [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | fn coerce_mut<'a>(mapped_page: &'a mut MutPage<'_>) -> Option<&'a mut Self> [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/page/mod.rs:157:12 [INFO] [stdout] | [INFO] [stdout] 157 | pub struct PageHeader { [INFO] [stdout] | ^^^^^^^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/page/mod.rs:152:1 [INFO] [stdout] | [INFO] [stdout] 152 | / /// `PageHeader` represents the on-file layout of a page header. [INFO] [stdout] 153 | | /// [INFO] [stdout] 154 | | /// `page` in Go BBolt [INFO] [stdout] 155 | | #[repr(C)] [INFO] [stdout] ... | [INFO] [stdout] 166 | | pub overflow: u32, [INFO] [stdout] 167 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_branch`, `set_leaf`, and `set_free_list` are never used [INFO] [stdout] --> src/common/page/mod.rs:191:10 [INFO] [stdout] | [INFO] [stdout] 189 | impl PageHeader { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 190 | #[inline] [INFO] [stdout] 191 | pub fn set_branch(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn set_leaf(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 206 | pub fn set_free_list(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `init` are never used [INFO] [stdout] --> src/common/page/freelist.rs:26:17 [INFO] [stdout] | [INFO] [stdout] 25 | impl MappedFreeListPage { [INFO] [stdout] | ----------------------- associated functions in this implementation [INFO] [stdout] 26 | pub unsafe fn new(bytes: *mut u8) -> MappedFreeListPage { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn init(bytes: *mut u8) -> MappedFreeListPage { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/page/meta.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct Meta { [INFO] [stdout] | ^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/page/meta.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | / /// `Meta` represents the on-file layout of a database's metadata [INFO] [stdout] 18 | | /// [INFO] [stdout] 19 | | /// `meta` in Go BBolt [INFO] [stdout] 20 | | #[repr(C)] [INFO] [stdout] ... | [INFO] [stdout] 40 | | checksum: u64, [INFO] [stdout] 41 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/page/meta.rs:92:12 [INFO] [stdout] | [INFO] [stdout] 92 | pub struct MetaPage { [INFO] [stdout] | ^^^^^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/page/meta.rs:90:1 [INFO] [stdout] | [INFO] [stdout] 90 | / #[repr(C)] [INFO] [stdout] 91 | | #[derive(Copy, Clone, Pod, Zeroable)] [INFO] [stdout] 92 | | pub struct MetaPage { [INFO] [stdout] 93 | | pub page: PageHeader, [INFO] [stdout] 94 | | pub meta: Meta, [INFO] [stdout] 95 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/common/page/tree/branch.rs:24:17 [INFO] [stdout] | [INFO] [stdout] 23 | impl MappedBranchPage { [INFO] [stdout] | --------------------- associated function in this implementation [INFO] [stdout] 24 | pub unsafe fn new(bytes: *mut u8) -> MappedBranchPage { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/page/tree/branch.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 65 | pub struct BranchPageElement { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/page/tree/branch.rs:59:1 [INFO] [stdout] | [INFO] [stdout] 59 | / ///`BranchPageElement` represents the on-file layout of a branch page's element [INFO] [stdout] 60 | | /// [INFO] [stdout] 61 | | /// `branchPageElement` in Go BBolt [INFO] [stdout] 62 | | #[repr(C)] [INFO] [stdout] ... | [INFO] [stdout] 73 | | unsend: PhantomUnsend, [INFO] [stdout] 74 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/common/page/tree/leaf.rs:23:17 [INFO] [stdout] | [INFO] [stdout] 22 | impl MappedLeafPage { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 23 | pub unsafe fn new(bytes: *mut u8) -> MappedLeafPage { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/page/tree/leaf.rs:64:12 [INFO] [stdout] | [INFO] [stdout] 64 | pub struct LeafPageElement { [INFO] [stdout] | ^^^^^^^^^^^^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/page/tree/leaf.rs:58:1 [INFO] [stdout] | [INFO] [stdout] 58 | / /// `LeafPageElement` represents the on-file layout of a leaf page's element [INFO] [stdout] 59 | | /// [INFO] [stdout] 60 | | /// `leafPageElement` in Go BBolt [INFO] [stdout] 61 | | #[repr(C)] [INFO] [stdout] ... | [INFO] [stdout] 74 | | unsend: PhantomUnsend, [INFO] [stdout] 75 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/common/page/tree/leaf.rs:78:17 [INFO] [stdout] | [INFO] [stdout] 77 | impl LeafPageElement { [INFO] [stdout] | -------------------- associated function in this implementation [INFO] [stdout] 78 | pub(crate) fn new(flags: u32, pos: u32, key_size: u32, value_size: u32) -> LeafPageElement { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `borrow_mut` is never used [INFO] [stdout] --> src/common/cell/mod.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 27 | impl UnsafeRefCell { [INFO] [stdout] | -------------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn borrow_mut(&self) -> UnsafeRefMut<'_, T> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `map` and `map_split` are never used [INFO] [stdout] --> src/common/cell/mod.rs:125:10 [INFO] [stdout] | [INFO] [stdout] 123 | impl<'b, T: ?Sized> UnsafeRef<'b, T> { [INFO] [stdout] | ------------------------------------ associated functions in this implementation [INFO] [stdout] 124 | #[inline] [INFO] [stdout] 125 | pub fn map(orig: UnsafeRef<'b, T>, f: F) -> UnsafeRef<'b, U> [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 136 | pub fn map_split( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `UnsafeRefMut` is never constructed [INFO] [stdout] --> src/common/cell/mod.rs:161:12 [INFO] [stdout] | [INFO] [stdout] 161 | pub struct UnsafeRefMut<'b, T: ?Sized> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `map` and `map_split` are never used [INFO] [stdout] --> src/common/cell/mod.rs:184:10 [INFO] [stdout] | [INFO] [stdout] 182 | impl<'b, T: ?Sized> UnsafeRefMut<'b, T> { [INFO] [stdout] | --------------------------------------- associated functions in this implementation [INFO] [stdout] 183 | #[inline] [INFO] [stdout] 184 | pub fn map(mut orig: UnsafeRefMut<'b, T>, f: F) -> UnsafeRefMut<'b, U> [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn map_split( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/ids.rs:80:3 [INFO] [stdout] | [INFO] [stdout] 80 | PgId [INFO] [stdout] | ^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/ids.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | $(#[$meta])* [INFO] [stdout] | _______^ [INFO] [stdout] 13 | | #[repr(C)] [INFO] [stdout] 14 | | #[derive(Default, Debug, Copy, Clone, PartialOrd, PartialEq, Ord, Eq, Hash, Pod, Zeroable)] [INFO] [stdout] 15 | | pub struct $x(pub u64); [INFO] [stdout] | |___________________________^ [INFO] [stdout] ... [INFO] [stdout] 78 | / id!( [INFO] [stdout] 79 | | /// The Page ID. Page address = `PgId` * page_size [INFO] [stdout] 80 | | PgId [INFO] [stdout] 81 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `id` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pd` is never used [INFO] [stdout] --> src/common/ids.rs:84:21 [INFO] [stdout] | [INFO] [stdout] 84 | pub(crate) const fn pd(id: u64) -> PgId { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/ids.rs:90:3 [INFO] [stdout] | [INFO] [stdout] 90 | TxId [INFO] [stdout] | ^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/ids.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | $(#[$meta])* [INFO] [stdout] | _______^ [INFO] [stdout] 13 | | #[repr(C)] [INFO] [stdout] 14 | | #[derive(Default, Debug, Copy, Clone, PartialOrd, PartialEq, Ord, Eq, Hash, Pod, Zeroable)] [INFO] [stdout] 15 | | pub struct $x(pub u64); [INFO] [stdout] | |___________________________^ [INFO] [stdout] ... [INFO] [stdout] 88 | / id!( [INFO] [stdout] 89 | | /// The Transaction ID. Monotonic and incremented every commit [INFO] [stdout] 90 | | TxId [INFO] [stdout] 91 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `id` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `with_capacity`, `len`, and `is_empty` are never used [INFO] [stdout] --> src/common/pool.rs:31:10 [INFO] [stdout] | [INFO] [stdout] 14 | impl SyncPool { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn with_capacity T + 'static, R: Fn(&mut T) + 'static>( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn is_empty(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `pin_default` is never used [INFO] [stdout] --> src/common/pool.rs:74:10 [INFO] [stdout] | [INFO] [stdout] 70 | / impl SyncPool [INFO] [stdout] 71 | | where [INFO] [stdout] 72 | | T: Default, [INFO] [stdout] | |_____________- associated function in this implementation [INFO] [stdout] 73 | { [INFO] [stdout] 74 | pub fn pin_default() -> Arc>>> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `detach` is never used [INFO] [stdout] --> src/common/pool.rs:111:10 [INFO] [stdout] | [INFO] [stdout] 103 | impl SyncReusable { [INFO] [stdout] | ----------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn detach(mut self) -> T { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `len` and `get` are never used [INFO] [stdout] --> src/common/refstack.rs:18:10 [INFO] [stdout] | [INFO] [stdout] 9 | impl<'a, T> RefStack<'a, T> { [INFO] [stdout] | --------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | pub fn get(&self) -> &T { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `sub` is never used [INFO] [stdout] --> src/db.rs:409:17 [INFO] [stdout] | [INFO] [stdout] 353 | impl DbStats { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 409 | pub(crate) fn sub(&self, rhs: &DbStats) -> DbStats { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `alloc_size` and `file_size` are never read [INFO] [stdout] --> src/db.rs:597:3 [INFO] [stdout] | [INFO] [stdout] 593 | struct MemBackend { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 597 | alloc_size: u64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 598 | /// current on disk file size [INFO] [stdout] 599 | file_size: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `path` is never read [INFO] [stdout] --> src/db.rs:706:3 [INFO] [stdout] | [INFO] [stdout] 705 | pub struct FileBackend { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 706 | path: Arc, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `invalidate`, `munmap`, `has_synced_free_list`, `mmap_unlock`, `mmap_lock`, and `mmap_relock` are never used [INFO] [stdout] --> src/db.rs:719:6 [INFO] [stdout] | [INFO] [stdout] 718 | impl FileBackend { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] 719 | fn invalidate(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 723 | fn munmap(&mut self) -> crate::Result<()> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 729 | fn has_synced_free_list(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 733 | fn mmap_unlock(&mut self) -> crate::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 740 | fn mmap_lock(&mut self) -> crate::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 747 | fn mmap_relock(&mut self) -> crate::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `timeout` and `no_freelist_sync` are never used [INFO] [stdout] --> src/db.rs:1413:17 [INFO] [stdout] | [INFO] [stdout] 1411 | impl BoltOptions { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] 1412 | #[inline] [INFO] [stdout] 1413 | pub(crate) fn timeout(&self) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1427 | pub(crate) fn no_freelist_sync(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/db.rs:1582:6 [INFO] [stdout] | [INFO] [stdout] 1581 | impl Batcher { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] 1582 | fn new(db: Weak, max_batch_delay: Duration, max_batch_size: u32) -> Arc { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add`, `sub_assign`, and `sub` are never used [INFO] [stdout] --> src/tx.rs:636:17 [INFO] [stdout] | [INFO] [stdout] 512 | impl TxStats { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 636 | pub(crate) fn add(&self, rhs: &TxStats) -> TxStats { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 642 | pub(crate) fn sub_assign(&self, rhs: &TxStats) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 657 | pub(crate) fn sub(&self, rhs: &TxStats) -> TxStats { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `root_bucket_mut` is never used [INFO] [stdout] --> src/tx.rs:819:6 [INFO] [stdout] | [INFO] [stdout] 816 | pub(crate) trait TxRwIApi<'tx>: TxIApi<'tx> + TxICheck<'tx> { [INFO] [stdout] | -------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 819 | fn root_bucket_mut(self) -> BucketCell<'tx>; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `UnsealRwTx` is never used [INFO] [stdout] --> src/tx.rs:1843:20 [INFO] [stdout] | [INFO] [stdout] 1843 | pub(crate) trait UnsealRwTx<'tx>: UnsealTx<'tx> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/bucket.rs:1081:14 [INFO] [stdout] | [INFO] [stdout] 1081 | fn split_r(&self) -> Ref> { [INFO] [stdout] | ^^^^^ ----------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1081 | fn split_r(&self) -> Ref<'_, BucketR<'tx>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/bucket.rs:1085:16 [INFO] [stdout] | [INFO] [stdout] 1085 | fn split_ref(&self) -> (Ref>, Ref>>) { [INFO] [stdout] | ^^^^^ ----------------- ------------------------- the lifetimes get resolved as `'_` [INFO] [stdout] | | | [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1085 | fn split_ref(&self) -> (Ref<'_, BucketR<'tx>>, Ref<'_, Option>>) { [INFO] [stdout] | +++ +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/bucket.rs:1090:15 [INFO] [stdout] | [INFO] [stdout] 1090 | fn split_ow(&self) -> Ref>> { [INFO] [stdout] | ^^^^^ ------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1090 | fn split_ow(&self) -> Ref<'_, Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/bucket.rs:1098:18 [INFO] [stdout] | [INFO] [stdout] 1098 | fn split_r_mut(&self) -> RefMut> { [INFO] [stdout] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1098 | fn split_r_mut(&self) -> RefMut<'_, BucketR<'tx>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/bucket.rs:1102:19 [INFO] [stdout] | [INFO] [stdout] 1102 | fn split_ow_mut(&self) -> RefMut>> { [INFO] [stdout] | ^^^^^ ---------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1102 | fn split_ow_mut(&self) -> RefMut<'_, Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/common/mod.rs:32:14 [INFO] [stdout] | [INFO] [stdout] 32 | fn split_r(&self) -> cell::Ref; [INFO] [stdout] | ^^^^^ ------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 32 | fn split_r(&self) -> cell::Ref<'_, R>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/common/mod.rs:35:16 [INFO] [stdout] | [INFO] [stdout] 35 | fn split_ref(&self) -> (cell::Ref, cell::Ref>); [INFO] [stdout] | ^^^^^ ------------ -------------------- the lifetimes get resolved as `'_` [INFO] [stdout] | | | [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 35 | fn split_ref(&self) -> (cell::Ref<'_, R>, cell::Ref<'_, Option>); [INFO] [stdout] | +++ +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/common/mod.rs:38:15 [INFO] [stdout] | [INFO] [stdout] 38 | fn split_ow(&self) -> cell::Ref>; [INFO] [stdout] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 38 | fn split_ow(&self) -> cell::Ref<'_, Option>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/common/mod.rs:44:18 [INFO] [stdout] | [INFO] [stdout] 44 | fn split_r_mut(&self) -> cell::RefMut; [INFO] [stdout] | ^^^^^ --------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 44 | fn split_r_mut(&self) -> cell::RefMut<'_, R>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/common/mod.rs:47:19 [INFO] [stdout] | [INFO] [stdout] 47 | fn split_ow_mut(&self) -> cell::RefMut>; [INFO] [stdout] | ^^^^^ ----------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 47 | fn split_ow_mut(&self) -> cell::RefMut<'_, Option>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/common/lock.rs:59:18 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn get_mut(&self) -> Option> { [INFO] [stdout] | ^^^^^ --------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 59 | pub fn get_mut(&self) -> Option> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/common/refstack.rs:14:15 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn push(&self, value: T) -> RefStack { [INFO] [stdout] | ^^^^^ ----------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 14 | pub fn push(&self, value: T) -> RefStack<'_, T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:84:12 [INFO] [stdout] | [INFO] [stdout] 84 | fn begin(&self) -> crate::Result; [INFO] [stdout] | ^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 84 | fn begin(&self) -> crate::Result>; [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:220:15 [INFO] [stdout] | [INFO] [stdout] 220 | fn begin_rw(&mut self) -> crate::Result; [INFO] [stdout] | ^^^^^^^^^ ------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 220 | fn begin_rw(&mut self) -> crate::Result>; [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:546:15 [INFO] [stdout] | [INFO] [stdout] 546 | fn freelist(&self) -> MutexGuard; [INFO] [stdout] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 546 | fn freelist(&self) -> MutexGuard<'_, Freelist>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:588:15 [INFO] [stdout] | [INFO] [stdout] 588 | fn freelist(&self) -> MutexGuard { [INFO] [stdout] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 588 | fn freelist(&self) -> MutexGuard<'_, Freelist> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:670:15 [INFO] [stdout] | [INFO] [stdout] 670 | fn freelist(&self) -> MutexGuard { [INFO] [stdout] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 670 | fn freelist(&self) -> MutexGuard<'_, Freelist> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:967:15 [INFO] [stdout] | [INFO] [stdout] 967 | fn freelist(&self) -> MutexGuard { [INFO] [stdout] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 967 | fn freelist(&self) -> MutexGuard<'_, Freelist> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:1907:26 [INFO] [stdout] | [INFO] [stdout] 1907 | pub(crate) fn begin_tx(&self) -> crate::Result { [INFO] [stdout] | ^^^^^ ------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1907 | pub(crate) fn begin_tx(&self) -> crate::Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:1948:29 [INFO] [stdout] | [INFO] [stdout] 1948 | pub(crate) fn begin_rw_tx(&mut self) -> crate::Result { [INFO] [stdout] | ^^^^^^^^^ -------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1948 | pub(crate) fn begin_rw_tx(&mut self) -> crate::Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:1983:12 [INFO] [stdout] | [INFO] [stdout] 1983 | fn begin(&self) -> crate::Result { [INFO] [stdout] | ^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1983 | fn begin(&self) -> crate::Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:2042:15 [INFO] [stdout] | [INFO] [stdout] 2042 | fn begin_rw(&mut self) -> crate::Result { [INFO] [stdout] | ^^^^^^^^^ ------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 2042 | fn begin_rw(&mut self) -> crate::Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/tx.rs:876:14 [INFO] [stdout] | [INFO] [stdout] 876 | fn split_r(&self) -> Ref> { [INFO] [stdout] | ^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 876 | fn split_r(&self) -> Ref<'_, TxR<'tx>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/tx.rs:880:16 [INFO] [stdout] | [INFO] [stdout] 880 | fn split_ref(&self) -> (Ref>, Ref>>) { [INFO] [stdout] | ^^^^^ ------------- --------------------- the lifetimes get resolved as `'_` [INFO] [stdout] | | | [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 880 | fn split_ref(&self) -> (Ref<'_, TxR<'tx>>, Ref<'_, Option>>) { [INFO] [stdout] | +++ +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/tx.rs:885:15 [INFO] [stdout] | [INFO] [stdout] 885 | fn split_ow(&self) -> Ref>> { [INFO] [stdout] | ^^^^^ --------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 885 | fn split_ow(&self) -> Ref<'_, Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/tx.rs:894:18 [INFO] [stdout] | [INFO] [stdout] 894 | fn split_r_mut(&self) -> RefMut> { [INFO] [stdout] | ^^^^^ ---------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 894 | fn split_r_mut(&self) -> RefMut<'_, TxR<'tx>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/tx.rs:898:19 [INFO] [stdout] | [INFO] [stdout] 898 | fn split_ow_mut(&self) -> RefMut>> { [INFO] [stdout] | ^^^^^ ------------------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 898 | fn split_ow_mut(&self) -> RefMut<'_, Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 24.28s [INFO] running `Command { std: "docker" "inspect" "1b81ac5b99db9898363a469a1c0ebf66b13d5207564c7ab99c7ffb9d4ef9cdbd", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1b81ac5b99db9898363a469a1c0ebf66b13d5207564c7ab99c7ffb9d4ef9cdbd", kill_on_drop: false }` [INFO] [stdout] 1b81ac5b99db9898363a469a1c0ebf66b13d5207564c7ab99c7ffb9d4ef9cdbd [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--no-run" "--message-format=json" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] 4fc19e57db06f29f5251347cfabfd3e25663501669021da22c16a9b59ee30868 [INFO] running `Command { std: "docker" "start" "-a" "4fc19e57db06f29f5251347cfabfd3e25663501669021da22c16a9b59ee30868", kill_on_drop: false }` [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/common/inode.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools::rev` [INFO] [stdout] --> src/iter.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use itertools::rev; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `MappedMetaPage` and `MetaPage` [INFO] [stdout] --> src/util.rs:1:33 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::common::page::meta::{MappedMetaPage, MetaPage}; [INFO] [stdout] | ^^^^^^^^^^^^^^ ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `CoerciblePage` and `MutPage` [INFO] [stdout] --> src/util.rs:2:27 [INFO] [stdout] | [INFO] [stdout] 2 | use crate::common::page::{CoerciblePage, MutPage}; [INFO] [stdout] | ^^^^^^^^^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::common::SplitRef` [INFO] [stdout] --> src/util.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | use crate::common::SplitRef; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `TxCell` [INFO] [stdout] --> src/util.rs:5:17 [INFO] [stdout] | [INFO] [stdout] 5 | use crate::tx::{TxCell, TxIApi}; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `PgId` [INFO] [stdout] --> src/util.rs:6:47 [INFO] [stdout] | [INFO] [stdout] 6 | use crate::{Bolt, BucketRwApi, DbApi, DbPath, PgId, TxRwApi, TxRwRefApi}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `AlignedBytes` and `alignment` [INFO] [stdout] --> src/util.rs:7:16 [INFO] [stdout] | [INFO] [stdout] 7 | use aligners::{alignment, AlignedBytes}; [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs::OpenOptions` [INFO] [stdout] --> src/util.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use std::fs::OpenOptions; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/util.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> src/util.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Write` [INFO] [stdout] --> src/tx.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | use std::io::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/bucket.rs:876:8 [INFO] [stdout] | [INFO] [stdout] 876 | struct InlineBucket { [INFO] [stdout] | ^^^^^^^^^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/bucket.rs:873:1 [INFO] [stdout] | [INFO] [stdout] 873 | / /// A convenience struct representing an inline page header [INFO] [stdout] 874 | | #[repr(C)] [INFO] [stdout] 875 | | #[derive(Copy, Clone, Pod, Zeroable)] [INFO] [stdout] 876 | | struct InlineBucket { [INFO] [stdout] 877 | | header: BucketHeader, [INFO] [stdout] 878 | | page: PageHeader, [INFO] [stdout] 879 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/bucket.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | / /// `BucketHeader` represents the on-file layout of a bucket header. [INFO] [stdout] 9 | | /// This is stored as the "value" of a bucket key. If the bucket is small enough, [INFO] [stdout] 10 | | /// then its root page can be stored inline in the "value", after the bucket [INFO] [stdout] 11 | | /// header. In the case of inline buckets, the "root" will be 0. [INFO] [stdout] ... | [INFO] [stdout] 21 | | sequence: u64, [INFO] [stdout] 22 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/bucket.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct BucketHeader { [INFO] [stdout] | ^^^^^^^^^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `own` and `coerce_mut` are never used [INFO] [stdout] --> src/common/page/mod.rs:34:6 [INFO] [stdout] | [INFO] [stdout] 21 | pub trait CoerciblePage { [INFO] [stdout] | ------------- associated functions in this trait [INFO] [stdout] ... [INFO] [stdout] 34 | fn own(bytes: *mut u8) -> Self; [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 79 | fn coerce_mut<'a>(mapped_page: &'a mut MutPage<'_>) -> Option<&'a mut Self> [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/page/mod.rs:157:12 [INFO] [stdout] | [INFO] [stdout] 157 | pub struct PageHeader { [INFO] [stdout] | ^^^^^^^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/page/mod.rs:152:1 [INFO] [stdout] | [INFO] [stdout] 152 | / /// `PageHeader` represents the on-file layout of a page header. [INFO] [stdout] 153 | | /// [INFO] [stdout] 154 | | /// `page` in Go BBolt [INFO] [stdout] 155 | | #[repr(C)] [INFO] [stdout] ... | [INFO] [stdout] 166 | | pub overflow: u32, [INFO] [stdout] 167 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_branch`, `set_leaf`, and `set_free_list` are never used [INFO] [stdout] --> src/common/page/mod.rs:191:10 [INFO] [stdout] | [INFO] [stdout] 189 | impl PageHeader { [INFO] [stdout] | --------------- methods in this implementation [INFO] [stdout] 190 | #[inline] [INFO] [stdout] 191 | pub fn set_branch(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn set_leaf(&mut self) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 206 | pub fn set_free_list(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `new` and `init` are never used [INFO] [stdout] --> src/common/page/freelist.rs:26:17 [INFO] [stdout] | [INFO] [stdout] 25 | impl MappedFreeListPage { [INFO] [stdout] | ----------------------- associated functions in this implementation [INFO] [stdout] 26 | pub unsafe fn new(bytes: *mut u8) -> MappedFreeListPage { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn init(bytes: *mut u8) -> MappedFreeListPage { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/page/meta.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct Meta { [INFO] [stdout] | ^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/page/meta.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | / /// `Meta` represents the on-file layout of a database's metadata [INFO] [stdout] 18 | | /// [INFO] [stdout] 19 | | /// `meta` in Go BBolt [INFO] [stdout] 20 | | #[repr(C)] [INFO] [stdout] ... | [INFO] [stdout] 40 | | checksum: u64, [INFO] [stdout] 41 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/page/meta.rs:92:12 [INFO] [stdout] | [INFO] [stdout] 92 | pub struct MetaPage { [INFO] [stdout] | ^^^^^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/page/meta.rs:90:1 [INFO] [stdout] | [INFO] [stdout] 90 | / #[repr(C)] [INFO] [stdout] 91 | | #[derive(Copy, Clone, Pod, Zeroable)] [INFO] [stdout] 92 | | pub struct MetaPage { [INFO] [stdout] 93 | | pub page: PageHeader, [INFO] [stdout] 94 | | pub meta: Meta, [INFO] [stdout] 95 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/common/page/tree/branch.rs:24:17 [INFO] [stdout] | [INFO] [stdout] 23 | impl MappedBranchPage { [INFO] [stdout] | --------------------- associated function in this implementation [INFO] [stdout] 24 | pub unsafe fn new(bytes: *mut u8) -> MappedBranchPage { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/page/tree/branch.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 65 | pub struct BranchPageElement { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/page/tree/branch.rs:59:1 [INFO] [stdout] | [INFO] [stdout] 59 | / ///`BranchPageElement` represents the on-file layout of a branch page's element [INFO] [stdout] 60 | | /// [INFO] [stdout] 61 | | /// `branchPageElement` in Go BBolt [INFO] [stdout] 62 | | #[repr(C)] [INFO] [stdout] ... | [INFO] [stdout] 73 | | unsend: PhantomUnsend, [INFO] [stdout] 74 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/common/page/tree/leaf.rs:23:17 [INFO] [stdout] | [INFO] [stdout] 22 | impl MappedLeafPage { [INFO] [stdout] | ------------------- associated function in this implementation [INFO] [stdout] 23 | pub unsafe fn new(bytes: *mut u8) -> MappedLeafPage { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/page/tree/leaf.rs:64:12 [INFO] [stdout] | [INFO] [stdout] 64 | pub struct LeafPageElement { [INFO] [stdout] | ^^^^^^^^^^^^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/page/tree/leaf.rs:58:1 [INFO] [stdout] | [INFO] [stdout] 58 | / /// `LeafPageElement` represents the on-file layout of a leaf page's element [INFO] [stdout] 59 | | /// [INFO] [stdout] 60 | | /// `leafPageElement` in Go BBolt [INFO] [stdout] 61 | | #[repr(C)] [INFO] [stdout] ... | [INFO] [stdout] 74 | | unsend: PhantomUnsend, [INFO] [stdout] 75 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/common/page/tree/leaf.rs:78:17 [INFO] [stdout] | [INFO] [stdout] 77 | impl LeafPageElement { [INFO] [stdout] | -------------------- associated function in this implementation [INFO] [stdout] 78 | pub(crate) fn new(flags: u32, pos: u32, key_size: u32, value_size: u32) -> LeafPageElement { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `borrow_mut` is never used [INFO] [stdout] --> src/common/cell/mod.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 27 | impl UnsafeRefCell { [INFO] [stdout] | -------------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn borrow_mut(&self) -> UnsafeRefMut<'_, T> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `map` and `map_split` are never used [INFO] [stdout] --> src/common/cell/mod.rs:125:10 [INFO] [stdout] | [INFO] [stdout] 123 | impl<'b, T: ?Sized> UnsafeRef<'b, T> { [INFO] [stdout] | ------------------------------------ associated functions in this implementation [INFO] [stdout] 124 | #[inline] [INFO] [stdout] 125 | pub fn map(orig: UnsafeRef<'b, T>, f: F) -> UnsafeRef<'b, U> [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 136 | pub fn map_split( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `UnsafeRefMut` is never constructed [INFO] [stdout] --> src/common/cell/mod.rs:161:12 [INFO] [stdout] | [INFO] [stdout] 161 | pub struct UnsafeRefMut<'b, T: ?Sized> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `map` and `map_split` are never used [INFO] [stdout] --> src/common/cell/mod.rs:184:10 [INFO] [stdout] | [INFO] [stdout] 182 | impl<'b, T: ?Sized> UnsafeRefMut<'b, T> { [INFO] [stdout] | --------------------------------------- associated functions in this implementation [INFO] [stdout] 183 | #[inline] [INFO] [stdout] 184 | pub fn map(mut orig: UnsafeRefMut<'b, T>, f: F) -> UnsafeRefMut<'b, U> [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn map_split( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/ids.rs:80:3 [INFO] [stdout] | [INFO] [stdout] 80 | PgId [INFO] [stdout] | ^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/ids.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | $(#[$meta])* [INFO] [stdout] | _______^ [INFO] [stdout] 13 | | #[repr(C)] [INFO] [stdout] 14 | | #[derive(Default, Debug, Copy, Clone, PartialOrd, PartialEq, Ord, Eq, Hash, Pod, Zeroable)] [INFO] [stdout] 15 | | pub struct $x(pub u64); [INFO] [stdout] | |___________________________^ [INFO] [stdout] ... [INFO] [stdout] 78 | / id!( [INFO] [stdout] 79 | | /// The Page ID. Page address = `PgId` * page_size [INFO] [stdout] 80 | | PgId [INFO] [stdout] 81 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `id` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `pd` is never used [INFO] [stdout] --> src/common/ids.rs:84:21 [INFO] [stdout] | [INFO] [stdout] 84 | pub(crate) const fn pd(id: u64) -> PgId { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/ids.rs:90:3 [INFO] [stdout] | [INFO] [stdout] 90 | TxId [INFO] [stdout] | ^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/ids.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | $(#[$meta])* [INFO] [stdout] | _______^ [INFO] [stdout] 13 | | #[repr(C)] [INFO] [stdout] 14 | | #[derive(Default, Debug, Copy, Clone, PartialOrd, PartialEq, Ord, Eq, Hash, Pod, Zeroable)] [INFO] [stdout] 15 | | pub struct $x(pub u64); [INFO] [stdout] | |___________________________^ [INFO] [stdout] ... [INFO] [stdout] 88 | / id!( [INFO] [stdout] 89 | | /// The Transaction ID. Monotonic and incremented every commit [INFO] [stdout] 90 | | TxId [INFO] [stdout] 91 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `id` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `with_capacity`, `len`, and `is_empty` are never used [INFO] [stdout] --> src/common/pool.rs:31:10 [INFO] [stdout] | [INFO] [stdout] 14 | impl SyncPool { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn with_capacity T + 'static, R: Fn(&mut T) + 'static>( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 47 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn is_empty(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `pin_default` is never used [INFO] [stdout] --> src/common/pool.rs:74:10 [INFO] [stdout] | [INFO] [stdout] 70 | / impl SyncPool [INFO] [stdout] 71 | | where [INFO] [stdout] 72 | | T: Default, [INFO] [stdout] | |_____________- associated function in this implementation [INFO] [stdout] 73 | { [INFO] [stdout] 74 | pub fn pin_default() -> Arc>>> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `detach` is never used [INFO] [stdout] --> src/common/pool.rs:111:10 [INFO] [stdout] | [INFO] [stdout] 103 | impl SyncReusable { [INFO] [stdout] | ----------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 111 | pub fn detach(mut self) -> T { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `len` and `get` are never used [INFO] [stdout] --> src/common/refstack.rs:18:10 [INFO] [stdout] | [INFO] [stdout] 9 | impl<'a, T> RefStack<'a, T> { [INFO] [stdout] | --------------------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 18 | pub fn len(&self) -> usize { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 25 | pub fn get(&self) -> &T { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `sub` is never used [INFO] [stdout] --> src/db.rs:409:17 [INFO] [stdout] | [INFO] [stdout] 353 | impl DbStats { [INFO] [stdout] | ------------ method in this implementation [INFO] [stdout] ... [INFO] [stdout] 409 | pub(crate) fn sub(&self, rhs: &DbStats) -> DbStats { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `alloc_size` and `file_size` are never read [INFO] [stdout] --> src/db.rs:597:3 [INFO] [stdout] | [INFO] [stdout] 593 | struct MemBackend { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 597 | alloc_size: u64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 598 | /// current on disk file size [INFO] [stdout] 599 | file_size: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `path` is never read [INFO] [stdout] --> src/db.rs:706:3 [INFO] [stdout] | [INFO] [stdout] 705 | pub struct FileBackend { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 706 | path: Arc, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `invalidate`, `munmap`, `has_synced_free_list`, `mmap_unlock`, `mmap_lock`, and `mmap_relock` are never used [INFO] [stdout] --> src/db.rs:719:6 [INFO] [stdout] | [INFO] [stdout] 718 | impl FileBackend { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] 719 | fn invalidate(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 723 | fn munmap(&mut self) -> crate::Result<()> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 729 | fn has_synced_free_list(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 733 | fn mmap_unlock(&mut self) -> crate::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 740 | fn mmap_lock(&mut self) -> crate::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 747 | fn mmap_relock(&mut self) -> crate::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `timeout` and `no_freelist_sync` are never used [INFO] [stdout] --> src/db.rs:1413:17 [INFO] [stdout] | [INFO] [stdout] 1411 | impl BoltOptions { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] 1412 | #[inline] [INFO] [stdout] 1413 | pub(crate) fn timeout(&self) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1427 | pub(crate) fn no_freelist_sync(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/db.rs:1582:6 [INFO] [stdout] | [INFO] [stdout] 1581 | impl Batcher { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] 1582 | fn new(db: Weak, max_batch_delay: Duration, max_batch_size: u32) -> Arc { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `add`, `sub_assign`, and `sub` are never used [INFO] [stdout] --> src/tx.rs:636:17 [INFO] [stdout] | [INFO] [stdout] 512 | impl TxStats { [INFO] [stdout] | ------------ methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 636 | pub(crate) fn add(&self, rhs: &TxStats) -> TxStats { [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 642 | pub(crate) fn sub_assign(&self, rhs: &TxStats) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 657 | pub(crate) fn sub(&self, rhs: &TxStats) -> TxStats { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `root_bucket_mut` is never used [INFO] [stdout] --> src/tx.rs:819:6 [INFO] [stdout] | [INFO] [stdout] 816 | pub(crate) trait TxRwIApi<'tx>: TxIApi<'tx> + TxICheck<'tx> { [INFO] [stdout] | -------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 819 | fn root_bucket_mut(self) -> BucketCell<'tx>; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `UnsealRwTx` is never used [INFO] [stdout] --> src/tx.rs:1843:20 [INFO] [stdout] | [INFO] [stdout] 1843 | pub(crate) trait UnsealRwTx<'tx>: UnsealTx<'tx> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/bucket.rs:1081:14 [INFO] [stdout] | [INFO] [stdout] 1081 | fn split_r(&self) -> Ref> { [INFO] [stdout] | ^^^^^ ----------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1081 | fn split_r(&self) -> Ref<'_, BucketR<'tx>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/bucket.rs:1085:16 [INFO] [stdout] | [INFO] [stdout] 1085 | fn split_ref(&self) -> (Ref>, Ref>>) { [INFO] [stdout] | ^^^^^ ----------------- ------------------------- the lifetimes get resolved as `'_` [INFO] [stdout] | | | [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1085 | fn split_ref(&self) -> (Ref<'_, BucketR<'tx>>, Ref<'_, Option>>) { [INFO] [stdout] | +++ +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/bucket.rs:1090:15 [INFO] [stdout] | [INFO] [stdout] 1090 | fn split_ow(&self) -> Ref>> { [INFO] [stdout] | ^^^^^ ------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1090 | fn split_ow(&self) -> Ref<'_, Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/bucket.rs:1098:18 [INFO] [stdout] | [INFO] [stdout] 1098 | fn split_r_mut(&self) -> RefMut> { [INFO] [stdout] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1098 | fn split_r_mut(&self) -> RefMut<'_, BucketR<'tx>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/bucket.rs:1102:19 [INFO] [stdout] | [INFO] [stdout] 1102 | fn split_ow_mut(&self) -> RefMut>> { [INFO] [stdout] | ^^^^^ ---------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1102 | fn split_ow_mut(&self) -> RefMut<'_, Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/common/mod.rs:32:14 [INFO] [stdout] | [INFO] [stdout] 32 | fn split_r(&self) -> cell::Ref; [INFO] [stdout] | ^^^^^ ------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 32 | fn split_r(&self) -> cell::Ref<'_, R>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/common/mod.rs:35:16 [INFO] [stdout] | [INFO] [stdout] 35 | fn split_ref(&self) -> (cell::Ref, cell::Ref>); [INFO] [stdout] | ^^^^^ ------------ -------------------- the lifetimes get resolved as `'_` [INFO] [stdout] | | | [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 35 | fn split_ref(&self) -> (cell::Ref<'_, R>, cell::Ref<'_, Option>); [INFO] [stdout] | +++ +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/common/mod.rs:38:15 [INFO] [stdout] | [INFO] [stdout] 38 | fn split_ow(&self) -> cell::Ref>; [INFO] [stdout] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 38 | fn split_ow(&self) -> cell::Ref<'_, Option>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/common/mod.rs:44:18 [INFO] [stdout] | [INFO] [stdout] 44 | fn split_r_mut(&self) -> cell::RefMut; [INFO] [stdout] | ^^^^^ --------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 44 | fn split_r_mut(&self) -> cell::RefMut<'_, R>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/common/mod.rs:47:19 [INFO] [stdout] | [INFO] [stdout] 47 | fn split_ow_mut(&self) -> cell::RefMut>; [INFO] [stdout] | ^^^^^ ----------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 47 | fn split_ow_mut(&self) -> cell::RefMut<'_, Option>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/common/lock.rs:59:18 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn get_mut(&self) -> Option> { [INFO] [stdout] | ^^^^^ --------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 59 | pub fn get_mut(&self) -> Option> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/common/refstack.rs:14:15 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn push(&self, value: T) -> RefStack { [INFO] [stdout] | ^^^^^ ----------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 14 | pub fn push(&self, value: T) -> RefStack<'_, T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:84:12 [INFO] [stdout] | [INFO] [stdout] 84 | fn begin(&self) -> crate::Result; [INFO] [stdout] | ^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 84 | fn begin(&self) -> crate::Result>; [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:220:15 [INFO] [stdout] | [INFO] [stdout] 220 | fn begin_rw(&mut self) -> crate::Result; [INFO] [stdout] | ^^^^^^^^^ ------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 220 | fn begin_rw(&mut self) -> crate::Result>; [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:546:15 [INFO] [stdout] | [INFO] [stdout] 546 | fn freelist(&self) -> MutexGuard; [INFO] [stdout] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 546 | fn freelist(&self) -> MutexGuard<'_, Freelist>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:588:15 [INFO] [stdout] | [INFO] [stdout] 588 | fn freelist(&self) -> MutexGuard { [INFO] [stdout] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 588 | fn freelist(&self) -> MutexGuard<'_, Freelist> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:670:15 [INFO] [stdout] | [INFO] [stdout] 670 | fn freelist(&self) -> MutexGuard { [INFO] [stdout] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 670 | fn freelist(&self) -> MutexGuard<'_, Freelist> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:967:15 [INFO] [stdout] | [INFO] [stdout] 967 | fn freelist(&self) -> MutexGuard { [INFO] [stdout] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 967 | fn freelist(&self) -> MutexGuard<'_, Freelist> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:1907:26 [INFO] [stdout] | [INFO] [stdout] 1907 | pub(crate) fn begin_tx(&self) -> crate::Result { [INFO] [stdout] | ^^^^^ ------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1907 | pub(crate) fn begin_tx(&self) -> crate::Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling bbolt-rs v1.3.10 (/opt/rustwide/workdir) [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:1948:29 [INFO] [stdout] | [INFO] [stdout] 1948 | pub(crate) fn begin_rw_tx(&mut self) -> crate::Result { [INFO] [stdout] | ^^^^^^^^^ -------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1948 | pub(crate) fn begin_rw_tx(&mut self) -> crate::Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:1983:12 [INFO] [stdout] | [INFO] [stdout] 1983 | fn begin(&self) -> crate::Result { [INFO] [stdout] | ^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1983 | fn begin(&self) -> crate::Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:2042:15 [INFO] [stdout] | [INFO] [stdout] 2042 | fn begin_rw(&mut self) -> crate::Result { [INFO] [stdout] | ^^^^^^^^^ ------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 2042 | fn begin_rw(&mut self) -> crate::Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/tx.rs:876:14 [INFO] [stdout] | [INFO] [stdout] 876 | fn split_r(&self) -> Ref> { [INFO] [stdout] | ^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 876 | fn split_r(&self) -> Ref<'_, TxR<'tx>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/tx.rs:880:16 [INFO] [stdout] | [INFO] [stdout] 880 | fn split_ref(&self) -> (Ref>, Ref>>) { [INFO] [stdout] | ^^^^^ ------------- --------------------- the lifetimes get resolved as `'_` [INFO] [stdout] | | | [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 880 | fn split_ref(&self) -> (Ref<'_, TxR<'tx>>, Ref<'_, Option>>) { [INFO] [stdout] | +++ +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/tx.rs:885:15 [INFO] [stdout] | [INFO] [stdout] 885 | fn split_ow(&self) -> Ref>> { [INFO] [stdout] | ^^^^^ --------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 885 | fn split_ow(&self) -> Ref<'_, Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/tx.rs:894:18 [INFO] [stdout] | [INFO] [stdout] 894 | fn split_r_mut(&self) -> RefMut> { [INFO] [stdout] | ^^^^^ ---------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 894 | fn split_r_mut(&self) -> RefMut<'_, TxR<'tx>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/tx.rs:898:19 [INFO] [stdout] | [INFO] [stdout] 898 | fn split_ow_mut(&self) -> RefMut>> { [INFO] [stdout] | ^^^^^ ------------------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 898 | fn split_ow_mut(&self) -> RefMut<'_, Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BoltOptionsBuilder` and `Bolt` [INFO] [stdout] --> src/bucket.rs:1821:5 [INFO] [stdout] | [INFO] [stdout] 1821 | Bolt, BoltOptionsBuilder, BucketApi, BucketRwApi, CursorApi, DbApi, DbRwAPI, Error, TxApi, [INFO] [stdout] | ^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Fake` and `Faker` [INFO] [stdout] --> src/bucket.rs:1825:14 [INFO] [stdout] | [INFO] [stdout] 1825 | use fake::{Fake, Faker}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::fs` [INFO] [stdout] --> src/bucket.rs:1827:7 [INFO] [stdout] | [INFO] [stdout] 1827 | use std::fs; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `File` and `OpenOptions` [INFO] [stdout] --> src/bucket.rs:1828:17 [INFO] [stdout] | [INFO] [stdout] 1828 | use std::fs::{File, OpenOptions}; [INFO] [stdout] | ^^^^ ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `Read` and `Write` [INFO] [stdout] --> src/bucket.rs:1829:17 [INFO] [stdout] | [INFO] [stdout] 1829 | use std::io::{Read, Write}; [INFO] [stdout] | ^^^^ ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::path::Path` [INFO] [stdout] --> src/bucket.rs:1830:7 [INFO] [stdout] | [INFO] [stdout] 1830 | use std::path::Path; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/common/inode.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::rc::Rc` [INFO] [stdout] --> src/common/pool.rs:150:7 [INFO] [stdout] | [INFO] [stdout] 150 | use std::rc::Rc; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::mpsc::channel` [INFO] [stdout] --> src/db.rs:2103:7 [INFO] [stdout] | [INFO] [stdout] 2103 | use std::sync::mpsc::channel; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::sync::Arc` [INFO] [stdout] --> src/db.rs:2104:7 [INFO] [stdout] | [INFO] [stdout] 2104 | use std::sync::Arc; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused imports: `BucketApi`, `BucketRwApi`, `CursorApi`, `Error`, and `TxRwApi` [INFO] [stdout] --> src/test_support.rs:5:22 [INFO] [stdout] | [INFO] [stdout] 5 | Bolt, BoltOptions, BucketApi, BucketRwApi, CursorApi, DbApi, Error, TxApi, TxRwApi, TxRwRefApi, [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^ ^^^^^ ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fake::faker::lorem::en::Sentence` [INFO] [stdout] --> src/test_support.rs:8:5 [INFO] [stdout] | [INFO] [stdout] 8 | use fake::faker::lorem::en::Sentence; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `fake::locales::EN` [INFO] [stdout] --> src/test_support.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use fake::locales::EN; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools::Itertools` [INFO] [stdout] --> src/test_support.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | use itertools::Itertools; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `itertools::rev` [INFO] [stdout] --> src/iter.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use itertools::rev; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `MetaPage` [INFO] [stdout] --> src/util.rs:1:49 [INFO] [stdout] | [INFO] [stdout] 1 | use crate::common::page::meta::{MappedMetaPage, MetaPage}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::ops::Deref` [INFO] [stdout] --> src/util.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | use std::ops::Deref; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `bucket::BucketApi::for_each`: please use `iter_*` methods instead [INFO] [stdout] --> src/bucket.rs:2343:7 [INFO] [stdout] | [INFO] [stdout] 2343 | b.for_each(|k, v| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `bucket::BucketApi::for_each_bucket`: please use `iter_*` methods instead [INFO] [stdout] --> src/bucket.rs:2352:7 [INFO] [stdout] | [INFO] [stdout] 2352 | b.for_each_bucket(|k| { [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `bucket::BucketApi::for_each`: please use `iter_*` methods instead [INFO] [stdout] --> src/bucket.rs:2467:38 [INFO] [stdout] | [INFO] [stdout] 2467 | tx.bucket(b"widgets").unwrap().for_each(|k, _| { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tx::TxApi::for_each`: please use `iter_*` methods instead [INFO] [stdout] --> src/tx.rs:2315:10 [INFO] [stdout] | [INFO] [stdout] 2315 | tx.for_each(|_, _| Ok(()))?; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated method `tx::TxApi::for_each`: please use `iter_*` methods instead [INFO] [stdout] --> src/tx.rs:2327:10 [INFO] [stdout] | [INFO] [stdout] 2327 | tx.for_each(|_, _| Err(Error::Other(anyhow!("marker"))))?; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::io::Write` [INFO] [stdout] --> src/tx.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | use std::io::Write; [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/bucket.rs:2918:12 [INFO] [stdout] | [INFO] [stdout] 2918 | for (i, entry) in d.values.iter().enumerate() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `k` [INFO] [stdout] --> src/iter.rs:362:12 [INFO] [stdout] | [INFO] [stdout] 362 | for (k, mut b) in tx.iter_mut_buckets() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_k` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `v` [INFO] [stdout] --> src/iter.rs:367:19 [INFO] [stdout] | [INFO] [stdout] 367 | for (k, v) in wb.iter_entries() { [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `f` [INFO] [stdout] --> src/util.rs:14:11 [INFO] [stdout] | [INFO] [stdout] 14 | let mut f = OpenOptions::new() [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `db_path` [INFO] [stdout] --> src/util.rs:21:7 [INFO] [stdout] | [INFO] [stdout] 21 | let db_path = cell.split_r().db; [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_db_path` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/util.rs:14:7 [INFO] [stdout] | [INFO] [stdout] 14 | let mut f = OpenOptions::new() [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] warning: field `0` is never read [INFO] [stdout] --> src/bucket.rs:876:8 [INFO] [stdout] | [INFO] [stdout] 876 | struct InlineBucket { [INFO] [stdout] | ^^^^^^^^^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/bucket.rs:873:1 [INFO] [stdout] | [INFO] [stdout] 873 | / /// A convenience struct representing an inline page header [INFO] [stdout] 874 | | #[repr(C)] [INFO] [stdout] 875 | | #[derive(Copy, Clone, Pod, Zeroable)] [INFO] [stdout] 876 | | struct InlineBucket { [INFO] [stdout] 877 | | header: BucketHeader, [INFO] [stdout] 878 | | page: PageHeader, [INFO] [stdout] 879 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/bucket.rs:8:1 [INFO] [stdout] | [INFO] [stdout] 8 | / /// `BucketHeader` represents the on-file layout of a bucket header. [INFO] [stdout] 9 | | /// This is stored as the "value" of a bucket key. If the bucket is small enough, [INFO] [stdout] 10 | | /// then its root page can be stored inline in the "value", after the bucket [INFO] [stdout] 11 | | /// header. In the case of inline buckets, the "root" will be 0. [INFO] [stdout] ... | [INFO] [stdout] 21 | | sequence: u64, [INFO] [stdout] 22 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/bucket.rs:17:12 [INFO] [stdout] | [INFO] [stdout] 17 | pub struct BucketHeader { [INFO] [stdout] | ^^^^^^^^^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `coerce_mut` is never used [INFO] [stdout] --> src/common/page/mod.rs:79:6 [INFO] [stdout] | [INFO] [stdout] 21 | pub trait CoerciblePage { [INFO] [stdout] | ------------- associated function in this trait [INFO] [stdout] ... [INFO] [stdout] 79 | fn coerce_mut<'a>(mapped_page: &'a mut MutPage<'_>) -> Option<&'a mut Self> [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/page/mod.rs:157:12 [INFO] [stdout] | [INFO] [stdout] 157 | pub struct PageHeader { [INFO] [stdout] | ^^^^^^^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/page/mod.rs:152:1 [INFO] [stdout] | [INFO] [stdout] 152 | / /// `PageHeader` represents the on-file layout of a page header. [INFO] [stdout] 153 | | /// [INFO] [stdout] 154 | | /// `page` in Go BBolt [INFO] [stdout] 155 | | #[repr(C)] [INFO] [stdout] ... | [INFO] [stdout] 166 | | pub overflow: u32, [INFO] [stdout] 167 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `init` is never used [INFO] [stdout] --> src/common/page/freelist.rs:33:10 [INFO] [stdout] | [INFO] [stdout] 25 | impl MappedFreeListPage { [INFO] [stdout] | ----------------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 33 | pub fn init(bytes: *mut u8) -> MappedFreeListPage { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `hashset` is never used [INFO] [stdout] --> src/common/page/freelist.rs:554:6 [INFO] [stdout] | [INFO] [stdout] 554 | fn hashset(ids: &[u64]) -> HashSet { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/page/meta.rs:23:12 [INFO] [stdout] | [INFO] [stdout] 23 | pub struct Meta { [INFO] [stdout] | ^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/page/meta.rs:17:1 [INFO] [stdout] | [INFO] [stdout] 17 | / /// `Meta` represents the on-file layout of a database's metadata [INFO] [stdout] 18 | | /// [INFO] [stdout] 19 | | /// `meta` in Go BBolt [INFO] [stdout] 20 | | #[repr(C)] [INFO] [stdout] ... | [INFO] [stdout] 40 | | checksum: u64, [INFO] [stdout] 41 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/page/meta.rs:92:12 [INFO] [stdout] | [INFO] [stdout] 92 | pub struct MetaPage { [INFO] [stdout] | ^^^^^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/page/meta.rs:90:1 [INFO] [stdout] | [INFO] [stdout] 90 | / #[repr(C)] [INFO] [stdout] 91 | | #[derive(Copy, Clone, Pod, Zeroable)] [INFO] [stdout] 92 | | pub struct MetaPage { [INFO] [stdout] 93 | | pub page: PageHeader, [INFO] [stdout] 94 | | pub meta: Meta, [INFO] [stdout] 95 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/page/tree/branch.rs:65:12 [INFO] [stdout] | [INFO] [stdout] 65 | pub struct BranchPageElement { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/page/tree/branch.rs:59:1 [INFO] [stdout] | [INFO] [stdout] 59 | / ///`BranchPageElement` represents the on-file layout of a branch page's element [INFO] [stdout] 60 | | /// [INFO] [stdout] 61 | | /// `branchPageElement` in Go BBolt [INFO] [stdout] 62 | | #[repr(C)] [INFO] [stdout] ... | [INFO] [stdout] 73 | | unsend: PhantomUnsend, [INFO] [stdout] 74 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/page/tree/leaf.rs:64:12 [INFO] [stdout] | [INFO] [stdout] 64 | pub struct LeafPageElement { [INFO] [stdout] | ^^^^^^^^^^^^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/page/tree/leaf.rs:58:1 [INFO] [stdout] | [INFO] [stdout] 58 | / /// `LeafPageElement` represents the on-file layout of a leaf page's element [INFO] [stdout] 59 | | /// [INFO] [stdout] 60 | | /// `leafPageElement` in Go BBolt [INFO] [stdout] 61 | | #[repr(C)] [INFO] [stdout] ... | [INFO] [stdout] 74 | | unsend: PhantomUnsend, [INFO] [stdout] 75 | | } [INFO] [stdout] | |_^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `borrow_mut` is never used [INFO] [stdout] --> src/common/cell/mod.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 27 | impl UnsafeRefCell { [INFO] [stdout] | -------------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 37 | pub fn borrow_mut(&self) -> UnsafeRefMut<'_, T> { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `map` and `map_split` are never used [INFO] [stdout] --> src/common/cell/mod.rs:125:10 [INFO] [stdout] | [INFO] [stdout] 123 | impl<'b, T: ?Sized> UnsafeRef<'b, T> { [INFO] [stdout] | ------------------------------------ associated functions in this implementation [INFO] [stdout] 124 | #[inline] [INFO] [stdout] 125 | pub fn map(orig: UnsafeRef<'b, T>, f: F) -> UnsafeRef<'b, U> [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 136 | pub fn map_split( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `UnsafeRefMut` is never constructed [INFO] [stdout] --> src/common/cell/mod.rs:161:12 [INFO] [stdout] | [INFO] [stdout] 161 | pub struct UnsafeRefMut<'b, T: ?Sized> { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated functions `map` and `map_split` are never used [INFO] [stdout] --> src/common/cell/mod.rs:184:10 [INFO] [stdout] | [INFO] [stdout] 182 | impl<'b, T: ?Sized> UnsafeRefMut<'b, T> { [INFO] [stdout] | --------------------------------------- associated functions in this implementation [INFO] [stdout] 183 | #[inline] [INFO] [stdout] 184 | pub fn map(mut orig: UnsafeRefMut<'b, T>, f: F) -> UnsafeRefMut<'b, U> [INFO] [stdout] | ^^^ [INFO] [stdout] ... [INFO] [stdout] 196 | pub fn map_split( [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/ids.rs:80:3 [INFO] [stdout] | [INFO] [stdout] 80 | PgId [INFO] [stdout] | ^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/ids.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | $(#[$meta])* [INFO] [stdout] | _______^ [INFO] [stdout] 13 | | #[repr(C)] [INFO] [stdout] 14 | | #[derive(Default, Debug, Copy, Clone, PartialOrd, PartialEq, Ord, Eq, Hash, Pod, Zeroable)] [INFO] [stdout] 15 | | pub struct $x(pub u64); [INFO] [stdout] | |___________________________^ [INFO] [stdout] ... [INFO] [stdout] 78 | / id!( [INFO] [stdout] 79 | | /// The Page ID. Page address = `PgId` * page_size [INFO] [stdout] 80 | | PgId [INFO] [stdout] 81 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `id` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/common/ids.rs:90:3 [INFO] [stdout] | [INFO] [stdout] 90 | TxId [INFO] [stdout] | ^^^^ field in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `check` is never used [INFO] [stdout] --> src/common/ids.rs:12:7 [INFO] [stdout] | [INFO] [stdout] 12 | $(#[$meta])* [INFO] [stdout] | _______^ [INFO] [stdout] 13 | | #[repr(C)] [INFO] [stdout] 14 | | #[derive(Default, Debug, Copy, Clone, PartialOrd, PartialEq, Ord, Eq, Hash, Pod, Zeroable)] [INFO] [stdout] 15 | | pub struct $x(pub u64); [INFO] [stdout] | |___________________________^ [INFO] [stdout] ... [INFO] [stdout] 88 | / id!( [INFO] [stdout] 89 | | /// The Transaction ID. Monotonic and incremented every commit [INFO] [stdout] 90 | | TxId [INFO] [stdout] 91 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in the macro `id` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated items `with_capacity` and `is_empty` are never used [INFO] [stdout] --> src/common/pool.rs:31:10 [INFO] [stdout] | [INFO] [stdout] 14 | impl SyncPool { [INFO] [stdout] | ------------------- associated items in this implementation [INFO] [stdout] ... [INFO] [stdout] 31 | pub fn with_capacity T + 'static, R: Fn(&mut T) + 'static>( [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 51 | pub fn is_empty(&self) -> bool { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `pin_default` is never used [INFO] [stdout] --> src/common/pool.rs:74:10 [INFO] [stdout] | [INFO] [stdout] 70 | / impl SyncPool [INFO] [stdout] 71 | | where [INFO] [stdout] 72 | | T: Default, [INFO] [stdout] | |_____________- associated function in this implementation [INFO] [stdout] 73 | { [INFO] [stdout] 74 | pub fn pin_default() -> Arc>>> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `get` is never used [INFO] [stdout] --> src/common/refstack.rs:25:10 [INFO] [stdout] | [INFO] [stdout] 9 | impl<'a, T> RefStack<'a, T> { [INFO] [stdout] | --------------------------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 25 | pub fn get(&self) -> &T { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `alloc_size` and `file_size` are never read [INFO] [stdout] --> src/db.rs:597:3 [INFO] [stdout] | [INFO] [stdout] 593 | struct MemBackend { [INFO] [stdout] | ---------- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 597 | alloc_size: u64, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] 598 | /// current on disk file size [INFO] [stdout] 599 | file_size: u64, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `path` is never read [INFO] [stdout] --> src/db.rs:706:3 [INFO] [stdout] | [INFO] [stdout] 705 | pub struct FileBackend { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] 706 | path: Arc, [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `invalidate`, `munmap`, `has_synced_free_list`, `mmap_unlock`, `mmap_lock`, and `mmap_relock` are never used [INFO] [stdout] --> src/db.rs:719:6 [INFO] [stdout] | [INFO] [stdout] 718 | impl FileBackend { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] 719 | fn invalidate(&mut self) { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 723 | fn munmap(&mut self) -> crate::Result<()> { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 729 | fn has_synced_free_list(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 733 | fn mmap_unlock(&mut self) -> crate::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 740 | fn mmap_lock(&mut self) -> crate::Result<()> { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 747 | fn mmap_relock(&mut self) -> crate::Result<()> { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `timeout` and `no_freelist_sync` are never used [INFO] [stdout] --> src/db.rs:1413:17 [INFO] [stdout] | [INFO] [stdout] 1411 | impl BoltOptions { [INFO] [stdout] | ---------------- methods in this implementation [INFO] [stdout] 1412 | #[inline] [INFO] [stdout] 1413 | pub(crate) fn timeout(&self) -> Option { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 1427 | pub(crate) fn no_freelist_sync(&self) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new` is never used [INFO] [stdout] --> src/db.rs:1582:6 [INFO] [stdout] | [INFO] [stdout] 1581 | impl Batcher { [INFO] [stdout] | ------------ associated function in this implementation [INFO] [stdout] 1582 | fn new(db: Weak, max_batch_delay: Duration, max_batch_size: u32) -> Arc { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `begin_unseal` is never used [INFO] [stdout] --> src/test_support.rs:130:17 [INFO] [stdout] | [INFO] [stdout] 55 | impl TestDb { [INFO] [stdout] | ----------- method in this implementation [INFO] [stdout] ... [INFO] [stdout] 130 | pub(crate) fn begin_unseal(&self) -> crate::Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `copy` is never used [INFO] [stdout] --> src/util.rs:13:4 [INFO] [stdout] | [INFO] [stdout] 13 | fn copy>(cell: TxCell, path: P) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/bucket.rs:1081:14 [INFO] [stdout] | [INFO] [stdout] 1081 | fn split_r(&self) -> Ref> { [INFO] [stdout] | ^^^^^ ----------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1081 | fn split_r(&self) -> Ref<'_, BucketR<'tx>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/bucket.rs:1085:16 [INFO] [stdout] | [INFO] [stdout] 1085 | fn split_ref(&self) -> (Ref>, Ref>>) { [INFO] [stdout] | ^^^^^ ----------------- ------------------------- the lifetimes get resolved as `'_` [INFO] [stdout] | | | [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1085 | fn split_ref(&self) -> (Ref<'_, BucketR<'tx>>, Ref<'_, Option>>) { [INFO] [stdout] | +++ +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/bucket.rs:1090:15 [INFO] [stdout] | [INFO] [stdout] 1090 | fn split_ow(&self) -> Ref>> { [INFO] [stdout] | ^^^^^ ------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1090 | fn split_ow(&self) -> Ref<'_, Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/bucket.rs:1098:18 [INFO] [stdout] | [INFO] [stdout] 1098 | fn split_r_mut(&self) -> RefMut> { [INFO] [stdout] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1098 | fn split_r_mut(&self) -> RefMut<'_, BucketR<'tx>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/bucket.rs:1102:19 [INFO] [stdout] | [INFO] [stdout] 1102 | fn split_ow_mut(&self) -> RefMut>> { [INFO] [stdout] | ^^^^^ ---------------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1102 | fn split_ow_mut(&self) -> RefMut<'_, Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/common/mod.rs:32:14 [INFO] [stdout] | [INFO] [stdout] 32 | fn split_r(&self) -> cell::Ref; [INFO] [stdout] | ^^^^^ ------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 32 | fn split_r(&self) -> cell::Ref<'_, R>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/common/mod.rs:35:16 [INFO] [stdout] | [INFO] [stdout] 35 | fn split_ref(&self) -> (cell::Ref, cell::Ref>); [INFO] [stdout] | ^^^^^ ------------ -------------------- the lifetimes get resolved as `'_` [INFO] [stdout] | | | [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 35 | fn split_ref(&self) -> (cell::Ref<'_, R>, cell::Ref<'_, Option>); [INFO] [stdout] | +++ +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/common/mod.rs:38:15 [INFO] [stdout] | [INFO] [stdout] 38 | fn split_ow(&self) -> cell::Ref>; [INFO] [stdout] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 38 | fn split_ow(&self) -> cell::Ref<'_, Option>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/common/mod.rs:44:18 [INFO] [stdout] | [INFO] [stdout] 44 | fn split_r_mut(&self) -> cell::RefMut; [INFO] [stdout] | ^^^^^ --------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 44 | fn split_r_mut(&self) -> cell::RefMut<'_, R>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/common/mod.rs:47:19 [INFO] [stdout] | [INFO] [stdout] 47 | fn split_ow_mut(&self) -> cell::RefMut>; [INFO] [stdout] | ^^^^^ ----------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 47 | fn split_ow_mut(&self) -> cell::RefMut<'_, Option>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/common/lock.rs:59:18 [INFO] [stdout] | [INFO] [stdout] 59 | pub fn get_mut(&self) -> Option> { [INFO] [stdout] | ^^^^^ --------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 59 | pub fn get_mut(&self) -> Option> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/common/refstack.rs:14:15 [INFO] [stdout] | [INFO] [stdout] 14 | pub fn push(&self, value: T) -> RefStack { [INFO] [stdout] | ^^^^^ ----------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 14 | pub fn push(&self, value: T) -> RefStack<'_, T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:84:12 [INFO] [stdout] | [INFO] [stdout] 84 | fn begin(&self) -> crate::Result; [INFO] [stdout] | ^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 84 | fn begin(&self) -> crate::Result>; [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:220:15 [INFO] [stdout] | [INFO] [stdout] 220 | fn begin_rw(&mut self) -> crate::Result; [INFO] [stdout] | ^^^^^^^^^ ------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 220 | fn begin_rw(&mut self) -> crate::Result>; [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:546:15 [INFO] [stdout] | [INFO] [stdout] 546 | fn freelist(&self) -> MutexGuard; [INFO] [stdout] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 546 | fn freelist(&self) -> MutexGuard<'_, Freelist>; [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:588:15 [INFO] [stdout] | [INFO] [stdout] 588 | fn freelist(&self) -> MutexGuard { [INFO] [stdout] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 588 | fn freelist(&self) -> MutexGuard<'_, Freelist> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:670:15 [INFO] [stdout] | [INFO] [stdout] 670 | fn freelist(&self) -> MutexGuard { [INFO] [stdout] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 670 | fn freelist(&self) -> MutexGuard<'_, Freelist> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:967:15 [INFO] [stdout] | [INFO] [stdout] 967 | fn freelist(&self) -> MutexGuard { [INFO] [stdout] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 967 | fn freelist(&self) -> MutexGuard<'_, Freelist> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:1907:26 [INFO] [stdout] | [INFO] [stdout] 1907 | pub(crate) fn begin_tx(&self) -> crate::Result { [INFO] [stdout] | ^^^^^ ------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1907 | pub(crate) fn begin_tx(&self) -> crate::Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:1948:29 [INFO] [stdout] | [INFO] [stdout] 1948 | pub(crate) fn begin_rw_tx(&mut self) -> crate::Result { [INFO] [stdout] | ^^^^^^^^^ -------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1948 | pub(crate) fn begin_rw_tx(&mut self) -> crate::Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:1983:12 [INFO] [stdout] | [INFO] [stdout] 1983 | fn begin(&self) -> crate::Result { [INFO] [stdout] | ^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 1983 | fn begin(&self) -> crate::Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/db.rs:2042:15 [INFO] [stdout] | [INFO] [stdout] 2042 | fn begin_rw(&mut self) -> crate::Result { [INFO] [stdout] | ^^^^^^^^^ ------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 2042 | fn begin_rw(&mut self) -> crate::Result> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/test_support.rs:130:30 [INFO] [stdout] | [INFO] [stdout] 130 | pub(crate) fn begin_unseal(&self) -> crate::Result { [INFO] [stdout] | ^^^^^ --------------------- [INFO] [stdout] | | | [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 130 | pub(crate) fn begin_unseal(&self) -> crate::Result + UnsealTx<'_>> { [INFO] [stdout] | ++++ ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/test_support.rs:134:33 [INFO] [stdout] | [INFO] [stdout] 134 | pub(crate) fn begin_rw_unseal(&mut self) -> crate::Result { [INFO] [stdout] | ^^^^^^^^^ ---------------------------- [INFO] [stdout] | | | [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 134 | pub(crate) fn begin_rw_unseal(&mut self) -> crate::Result + UnsealRwTx<'_>> { [INFO] [stdout] | ++++ ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/tx.rs:876:14 [INFO] [stdout] | [INFO] [stdout] 876 | fn split_r(&self) -> Ref> { [INFO] [stdout] | ^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 876 | fn split_r(&self) -> Ref<'_, TxR<'tx>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/tx.rs:880:16 [INFO] [stdout] | [INFO] [stdout] 880 | fn split_ref(&self) -> (Ref>, Ref>>) { [INFO] [stdout] | ^^^^^ ------------- --------------------- the lifetimes get resolved as `'_` [INFO] [stdout] | | | [INFO] [stdout] | | the lifetimes get resolved as `'_` [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 880 | fn split_ref(&self) -> (Ref<'_, TxR<'tx>>, Ref<'_, Option>>) { [INFO] [stdout] | +++ +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/tx.rs:885:15 [INFO] [stdout] | [INFO] [stdout] 885 | fn split_ow(&self) -> Ref>> { [INFO] [stdout] | ^^^^^ --------------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 885 | fn split_ow(&self) -> Ref<'_, Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/tx.rs:894:18 [INFO] [stdout] | [INFO] [stdout] 894 | fn split_r_mut(&self) -> RefMut> { [INFO] [stdout] | ^^^^^ ---------------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 894 | fn split_r_mut(&self) -> RefMut<'_, TxR<'tx>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/tx.rs:898:19 [INFO] [stdout] | [INFO] [stdout] 898 | fn split_ow_mut(&self) -> RefMut>> { [INFO] [stdout] | ^^^^^ ------------------------ the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 898 | fn split_ow_mut(&self) -> RefMut<'_, Option>> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 4.93s [INFO] running `Command { std: "docker" "inspect" "4fc19e57db06f29f5251347cfabfd3e25663501669021da22c16a9b59ee30868", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4fc19e57db06f29f5251347cfabfd3e25663501669021da22c16a9b59ee30868", kill_on_drop: false }` [INFO] [stdout] 4fc19e57db06f29f5251347cfabfd3e25663501669021da22c16a9b59ee30868 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+8de4c7234dd9b97c9d76b58671343fdbbc9a433e" "test" "--frozen" "--target" "x86_64-unknown-linux-musl", kill_on_drop: false }` [INFO] [stdout] f5e9ae630e39f475a2e3c9bbc577a8bf34abf813ce5e681cd06b439f2a7b8f89 [INFO] running `Command { std: "docker" "start" "-a" "f5e9ae630e39f475a2e3c9bbc577a8bf34abf813ce5e681cd06b439f2a7b8f89", kill_on_drop: false }` [INFO] [stderr] warning: unused import: `std::ops::Deref` [INFO] [stderr] --> src/common/inode.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use std::ops::Deref; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused import: `itertools::rev` [INFO] [stderr] --> src/iter.rs:6:5 [INFO] [stderr] | [INFO] [stderr] 6 | use itertools::rev; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `MappedMetaPage` and `MetaPage` [INFO] [stderr] --> src/util.rs:1:33 [INFO] [stderr] | [INFO] [stderr] 1 | use crate::common::page::meta::{MappedMetaPage, MetaPage}; [INFO] [stderr] | ^^^^^^^^^^^^^^ ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `CoerciblePage` and `MutPage` [INFO] [stderr] --> src/util.rs:2:27 [INFO] [stderr] | [INFO] [stderr] 2 | use crate::common::page::{CoerciblePage, MutPage}; [INFO] [stderr] | ^^^^^^^^^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `crate::common::SplitRef` [INFO] [stderr] --> src/util.rs:3:5 [INFO] [stderr] | [INFO] [stderr] 3 | use crate::common::SplitRef; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `TxCell` [INFO] [stderr] --> src/util.rs:5:17 [INFO] [stderr] | [INFO] [stderr] 5 | use crate::tx::{TxCell, TxIApi}; [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `PgId` [INFO] [stderr] --> src/util.rs:6:47 [INFO] [stderr] | [INFO] [stderr] 6 | use crate::{Bolt, BucketRwApi, DbApi, DbPath, PgId, TxRwApi, TxRwRefApi}; [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `AlignedBytes` and `alignment` [INFO] [stderr] --> src/util.rs:7:16 [INFO] [stderr] | [INFO] [stderr] 7 | use aligners::{alignment, AlignedBytes}; [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fs::OpenOptions` [INFO] [stderr] --> src/util.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use std::fs::OpenOptions; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Deref` [INFO] [stderr] --> src/util.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use std::ops::Deref; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::path::Path` [INFO] [stderr] --> src/util.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use std::path::Path; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::io::Write` [INFO] [stderr] --> src/tx.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | use std::io::Write; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/bucket.rs:876:8 [INFO] [stderr] | [INFO] [stderr] 876 | struct InlineBucket { [INFO] [stderr] | ^^^^^^^^^^^^ field in this struct [INFO] [stderr] | [INFO] [stderr] = help: consider removing this field [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: function `check` is never used [INFO] [stderr] --> src/bucket.rs:873:1 [INFO] [stderr] | [INFO] [stderr] 873 | / /// A convenience struct representing an inline page header [INFO] [stderr] 874 | | #[repr(C)] [INFO] [stderr] 875 | | #[derive(Copy, Clone, Pod, Zeroable)] [INFO] [stderr] 876 | | struct InlineBucket { [INFO] [stderr] 877 | | header: BucketHeader, [INFO] [stderr] 878 | | page: PageHeader, [INFO] [stderr] 879 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: function `check` is never used [INFO] [stderr] --> src/common/bucket.rs:8:1 [INFO] [stderr] | [INFO] [stderr] 8 | / /// `BucketHeader` represents the on-file layout of a bucket header. [INFO] [stderr] 9 | | /// This is stored as the "value" of a bucket key. If the bucket is small enough, [INFO] [stderr] 10 | | /// then its root page can be stored inline in the "value", after the bucket [INFO] [stderr] 11 | | /// header. In the case of inline buckets, the "root" will be 0. [INFO] [stderr] ... | [INFO] [stderr] 21 | | sequence: u64, [INFO] [stderr] 22 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/common/bucket.rs:17:12 [INFO] [stderr] | [INFO] [stderr] 17 | pub struct BucketHeader { [INFO] [stderr] | ^^^^^^^^^^^^ field in this struct [INFO] [stderr] | [INFO] [stderr] = help: consider removing this field [INFO] [stderr] [INFO] [stderr] warning: associated functions `own` and `coerce_mut` are never used [INFO] [stderr] --> src/common/page/mod.rs:34:6 [INFO] [stderr] | [INFO] [stderr] 21 | pub trait CoerciblePage { [INFO] [stderr] | ------------- associated functions in this trait [INFO] [stderr] ... [INFO] [stderr] 34 | fn own(bytes: *mut u8) -> Self; [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 79 | fn coerce_mut<'a>(mapped_page: &'a mut MutPage<'_>) -> Option<&'a mut Self> [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/common/page/mod.rs:157:12 [INFO] [stderr] | [INFO] [stderr] 157 | pub struct PageHeader { [INFO] [stderr] | ^^^^^^^^^^ field in this struct [INFO] [stderr] | [INFO] [stderr] = help: consider removing this field [INFO] [stderr] [INFO] [stderr] warning: function `check` is never used [INFO] [stderr] --> src/common/page/mod.rs:152:1 [INFO] [stderr] | [INFO] [stderr] 152 | / /// `PageHeader` represents the on-file layout of a page header. [INFO] [stderr] 153 | | /// [INFO] [stderr] 154 | | /// `page` in Go BBolt [INFO] [stderr] 155 | | #[repr(C)] [INFO] [stderr] ... | [INFO] [stderr] 166 | | pub overflow: u32, [INFO] [stderr] 167 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: methods `set_branch`, `set_leaf`, and `set_free_list` are never used [INFO] [stderr] --> src/common/page/mod.rs:191:10 [INFO] [stderr] | [INFO] [stderr] 189 | impl PageHeader { [INFO] [stderr] | --------------- methods in this implementation [INFO] [stderr] 190 | #[inline] [INFO] [stderr] 191 | pub fn set_branch(&mut self) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 196 | pub fn set_leaf(&mut self) { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 206 | pub fn set_free_list(&mut self) { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated functions `new` and `init` are never used [INFO] [stderr] --> src/common/page/freelist.rs:26:17 [INFO] [stderr] | [INFO] [stderr] 25 | impl MappedFreeListPage { [INFO] [stderr] | ----------------------- associated functions in this implementation [INFO] [stderr] 26 | pub unsafe fn new(bytes: *mut u8) -> MappedFreeListPage { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 33 | pub fn init(bytes: *mut u8) -> MappedFreeListPage { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/common/page/meta.rs:23:12 [INFO] [stderr] | [INFO] [stderr] 23 | pub struct Meta { [INFO] [stderr] | ^^^^ field in this struct [INFO] [stderr] | [INFO] [stderr] = help: consider removing this field [INFO] [stderr] [INFO] [stderr] warning: function `check` is never used [INFO] [stderr] --> src/common/page/meta.rs:17:1 [INFO] [stderr] | [INFO] [stderr] 17 | / /// `Meta` represents the on-file layout of a database's metadata [INFO] [stderr] 18 | | /// [INFO] [stderr] 19 | | /// `meta` in Go BBolt [INFO] [stderr] 20 | | #[repr(C)] [INFO] [stderr] ... | [INFO] [stderr] 40 | | checksum: u64, [INFO] [stderr] 41 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/common/page/meta.rs:92:12 [INFO] [stderr] | [INFO] [stderr] 92 | pub struct MetaPage { [INFO] [stderr] | ^^^^^^^^ field in this struct [INFO] [stderr] | [INFO] [stderr] = help: consider removing this field [INFO] [stderr] [INFO] [stderr] warning: function `check` is never used [INFO] [stderr] --> src/common/page/meta.rs:90:1 [INFO] [stderr] | [INFO] [stderr] 90 | / #[repr(C)] [INFO] [stderr] 91 | | #[derive(Copy, Clone, Pod, Zeroable)] [INFO] [stderr] 92 | | pub struct MetaPage { [INFO] [stderr] 93 | | pub page: PageHeader, [INFO] [stderr] 94 | | pub meta: Meta, [INFO] [stderr] 95 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/common/page/tree/branch.rs:24:17 [INFO] [stderr] | [INFO] [stderr] 23 | impl MappedBranchPage { [INFO] [stderr] | --------------------- associated function in this implementation [INFO] [stderr] 24 | pub unsafe fn new(bytes: *mut u8) -> MappedBranchPage { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/common/page/tree/branch.rs:65:12 [INFO] [stderr] | [INFO] [stderr] 65 | pub struct BranchPageElement { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ field in this struct [INFO] [stderr] | [INFO] [stderr] = help: consider removing this field [INFO] [stderr] [INFO] [stderr] warning: function `check` is never used [INFO] [stderr] --> src/common/page/tree/branch.rs:59:1 [INFO] [stderr] | [INFO] [stderr] 59 | / ///`BranchPageElement` represents the on-file layout of a branch page's element [INFO] [stderr] 60 | | /// [INFO] [stderr] 61 | | /// `branchPageElement` in Go BBolt [INFO] [stderr] 62 | | #[repr(C)] [INFO] [stderr] ... | [INFO] [stderr] 73 | | unsend: PhantomUnsend, [INFO] [stderr] 74 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/common/page/tree/leaf.rs:23:17 [INFO] [stderr] | [INFO] [stderr] 22 | impl MappedLeafPage { [INFO] [stderr] | ------------------- associated function in this implementation [INFO] [stderr] 23 | pub unsafe fn new(bytes: *mut u8) -> MappedLeafPage { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/common/page/tree/leaf.rs:64:12 [INFO] [stderr] | [INFO] [stderr] 64 | pub struct LeafPageElement { [INFO] [stderr] | ^^^^^^^^^^^^^^^ field in this struct [INFO] [stderr] | [INFO] [stderr] = help: consider removing this field [INFO] [stderr] [INFO] [stderr] warning: function `check` is never used [INFO] [stderr] --> src/common/page/tree/leaf.rs:58:1 [INFO] [stderr] | [INFO] [stderr] 58 | / /// `LeafPageElement` represents the on-file layout of a leaf page's element [INFO] [stderr] 59 | | /// [INFO] [stderr] 60 | | /// `leafPageElement` in Go BBolt [INFO] [stderr] 61 | | #[repr(C)] [INFO] [stderr] ... | [INFO] [stderr] 74 | | unsend: PhantomUnsend, [INFO] [stderr] 75 | | } [INFO] [stderr] | |_^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/common/page/tree/leaf.rs:78:17 [INFO] [stderr] | [INFO] [stderr] 77 | impl LeafPageElement { [INFO] [stderr] | -------------------- associated function in this implementation [INFO] [stderr] 78 | pub(crate) fn new(flags: u32, pos: u32, key_size: u32, value_size: u32) -> LeafPageElement { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: method `borrow_mut` is never used [INFO] [stderr] --> src/common/cell/mod.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 27 | impl UnsafeRefCell { [INFO] [stderr] | -------------------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 37 | pub fn borrow_mut(&self) -> UnsafeRefMut<'_, T> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated functions `map` and `map_split` are never used [INFO] [stderr] --> src/common/cell/mod.rs:125:10 [INFO] [stderr] | [INFO] [stderr] 123 | impl<'b, T: ?Sized> UnsafeRef<'b, T> { [INFO] [stderr] | ------------------------------------ associated functions in this implementation [INFO] [stderr] 124 | #[inline] [INFO] [stderr] 125 | pub fn map(orig: UnsafeRef<'b, T>, f: F) -> UnsafeRef<'b, U> [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 136 | pub fn map_split( [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct `UnsafeRefMut` is never constructed [INFO] [stderr] --> src/common/cell/mod.rs:161:12 [INFO] [stderr] | [INFO] [stderr] 161 | pub struct UnsafeRefMut<'b, T: ?Sized> { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated functions `map` and `map_split` are never used [INFO] [stderr] --> src/common/cell/mod.rs:184:10 [INFO] [stderr] | [INFO] [stderr] 182 | impl<'b, T: ?Sized> UnsafeRefMut<'b, T> { [INFO] [stderr] | --------------------------------------- associated functions in this implementation [INFO] [stderr] 183 | #[inline] [INFO] [stderr] 184 | pub fn map(mut orig: UnsafeRefMut<'b, T>, f: F) -> UnsafeRefMut<'b, U> [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 196 | pub fn map_split( [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/common/ids.rs:80:3 [INFO] [stderr] | [INFO] [stderr] 80 | PgId [INFO] [stderr] | ^^^^ field in this struct [INFO] [stderr] | [INFO] [stderr] = help: consider removing this field [INFO] [stderr] [INFO] [stderr] warning: function `check` is never used [INFO] [stderr] --> src/common/ids.rs:12:7 [INFO] [stderr] | [INFO] [stderr] 12 | $(#[$meta])* [INFO] [stderr] | _______^ [INFO] [stderr] 13 | | #[repr(C)] [INFO] [stderr] 14 | | #[derive(Default, Debug, Copy, Clone, PartialOrd, PartialEq, Ord, Eq, Hash, Pod, Zeroable)] [INFO] [stderr] 15 | | pub struct $x(pub u64); [INFO] [stderr] | |___________________________^ [INFO] [stderr] ... [INFO] [stderr] 78 | / id!( [INFO] [stderr] 79 | | /// The Page ID. Page address = `PgId` * page_size [INFO] [stderr] 80 | | PgId [INFO] [stderr] 81 | | ); [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `id` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: function `pd` is never used [INFO] [stderr] --> src/common/ids.rs:84:21 [INFO] [stderr] | [INFO] [stderr] 84 | pub(crate) const fn pd(id: u64) -> PgId { [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: field `0` is never read [INFO] [stderr] --> src/common/ids.rs:90:3 [INFO] [stderr] | [INFO] [stderr] 90 | TxId [INFO] [stderr] | ^^^^ field in this struct [INFO] [stderr] | [INFO] [stderr] = help: consider removing this field [INFO] [stderr] [INFO] [stderr] warning: function `check` is never used [INFO] [stderr] --> src/common/ids.rs:12:7 [INFO] [stderr] | [INFO] [stderr] 12 | $(#[$meta])* [INFO] [stderr] | _______^ [INFO] [stderr] 13 | | #[repr(C)] [INFO] [stderr] 14 | | #[derive(Default, Debug, Copy, Clone, PartialOrd, PartialEq, Ord, Eq, Hash, Pod, Zeroable)] [INFO] [stderr] 15 | | pub struct $x(pub u64); [INFO] [stderr] | |___________________________^ [INFO] [stderr] ... [INFO] [stderr] 88 | / id!( [INFO] [stderr] 89 | | /// The Transaction ID. Monotonic and incremented every commit [INFO] [stderr] 90 | | TxId [INFO] [stderr] 91 | | ); [INFO] [stderr] | |_- in this macro invocation [INFO] [stderr] | [INFO] [stderr] = note: this warning originates in the macro `id` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: associated items `with_capacity`, `len`, and `is_empty` are never used [INFO] [stderr] --> src/common/pool.rs:31:10 [INFO] [stderr] | [INFO] [stderr] 14 | impl SyncPool { [INFO] [stderr] | ------------------- associated items in this implementation [INFO] [stderr] ... [INFO] [stderr] 31 | pub fn with_capacity T + 'static, R: Fn(&mut T) + 'static>( [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 47 | pub fn len(&self) -> usize { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 51 | pub fn is_empty(&self) -> bool { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `pin_default` is never used [INFO] [stderr] --> src/common/pool.rs:74:10 [INFO] [stderr] | [INFO] [stderr] 70 | / impl SyncPool [INFO] [stderr] 71 | | where [INFO] [stderr] 72 | | T: Default, [INFO] [stderr] | |_____________- associated function in this implementation [INFO] [stderr] 73 | { [INFO] [stderr] 74 | pub fn pin_default() -> Arc>>> { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `detach` is never used [INFO] [stderr] --> src/common/pool.rs:111:10 [INFO] [stderr] | [INFO] [stderr] 103 | impl SyncReusable { [INFO] [stderr] | ----------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 111 | pub fn detach(mut self) -> T { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `len` and `get` are never used [INFO] [stderr] --> src/common/refstack.rs:18:10 [INFO] [stderr] | [INFO] [stderr] 9 | impl<'a, T> RefStack<'a, T> { [INFO] [stderr] | --------------------------- methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 18 | pub fn len(&self) -> usize { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 25 | pub fn get(&self) -> &T { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: method `sub` is never used [INFO] [stderr] --> src/db.rs:409:17 [INFO] [stderr] | [INFO] [stderr] 353 | impl DbStats { [INFO] [stderr] | ------------ method in this implementation [INFO] [stderr] ... [INFO] [stderr] 409 | pub(crate) fn sub(&self, rhs: &DbStats) -> DbStats { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: fields `alloc_size` and `file_size` are never read [INFO] [stderr] --> src/db.rs:597:3 [INFO] [stderr] | [INFO] [stderr] 593 | struct MemBackend { [INFO] [stderr] | ---------- fields in this struct [INFO] [stderr] ... [INFO] [stderr] 597 | alloc_size: u64, [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] 598 | /// current on disk file size [INFO] [stderr] 599 | file_size: u64, [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: field `path` is never read [INFO] [stderr] --> src/db.rs:706:3 [INFO] [stderr] | [INFO] [stderr] 705 | pub struct FileBackend { [INFO] [stderr] | ----------- field in this struct [INFO] [stderr] 706 | path: Arc, [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `invalidate`, `munmap`, `has_synced_free_list`, `mmap_unlock`, `mmap_lock`, and `mmap_relock` are never used [INFO] [stderr] --> src/db.rs:719:6 [INFO] [stderr] | [INFO] [stderr] 718 | impl FileBackend { [INFO] [stderr] | ---------------- methods in this implementation [INFO] [stderr] 719 | fn invalidate(&mut self) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 723 | fn munmap(&mut self) -> crate::Result<()> { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 729 | fn has_synced_free_list(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 733 | fn mmap_unlock(&mut self) -> crate::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 740 | fn mmap_lock(&mut self) -> crate::Result<()> { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 747 | fn mmap_relock(&mut self) -> crate::Result<()> { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `timeout` and `no_freelist_sync` are never used [INFO] [stderr] --> src/db.rs:1413:17 [INFO] [stderr] | [INFO] [stderr] 1411 | impl BoltOptions { [INFO] [stderr] | ---------------- methods in this implementation [INFO] [stderr] 1412 | #[inline] [INFO] [stderr] 1413 | pub(crate) fn timeout(&self) -> Option { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 1427 | pub(crate) fn no_freelist_sync(&self) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `new` is never used [INFO] [stderr] --> src/db.rs:1582:6 [INFO] [stderr] | [INFO] [stderr] 1581 | impl Batcher { [INFO] [stderr] | ------------ associated function in this implementation [INFO] [stderr] 1582 | fn new(db: Weak, max_batch_delay: Duration, max_batch_size: u32) -> Arc { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: methods `add`, `sub_assign`, and `sub` are never used [INFO] [stderr] --> src/tx.rs:636:17 [INFO] [stderr] | [INFO] [stderr] 512 | impl TxStats { [INFO] [stderr] | ------------ methods in this implementation [INFO] [stderr] ... [INFO] [stderr] 636 | pub(crate) fn add(&self, rhs: &TxStats) -> TxStats { [INFO] [stderr] | ^^^ [INFO] [stderr] ... [INFO] [stderr] 642 | pub(crate) fn sub_assign(&self, rhs: &TxStats) { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 657 | pub(crate) fn sub(&self, rhs: &TxStats) -> TxStats { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: method `root_bucket_mut` is never used [INFO] [stderr] --> src/tx.rs:819:6 [INFO] [stderr] | [INFO] [stderr] 816 | pub(crate) trait TxRwIApi<'tx>: TxIApi<'tx> + TxICheck<'tx> { [INFO] [stderr] | -------- method in this trait [INFO] [stderr] ... [INFO] [stderr] 819 | fn root_bucket_mut(self) -> BucketCell<'tx>; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: trait `UnsealRwTx` is never used [INFO] [stderr] --> src/tx.rs:1843:20 [INFO] [stderr] | [INFO] [stderr] 1843 | pub(crate) trait UnsealRwTx<'tx>: UnsealTx<'tx> { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/bucket.rs:1081:14 [INFO] [stderr] | [INFO] [stderr] 1081 | fn split_r(&self) -> Ref> { [INFO] [stderr] | ^^^^^ ----------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 1081 | fn split_r(&self) -> Ref<'_, BucketR<'tx>> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/bucket.rs:1085:16 [INFO] [stderr] | [INFO] [stderr] 1085 | fn split_ref(&self) -> (Ref>, Ref>>) { [INFO] [stderr] | ^^^^^ ----------------- ------------------------- the lifetimes get resolved as `'_` [INFO] [stderr] | | | [INFO] [stderr] | | the lifetimes get resolved as `'_` [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 1085 | fn split_ref(&self) -> (Ref<'_, BucketR<'tx>>, Ref<'_, Option>>) { [INFO] [stderr] | +++ +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/bucket.rs:1090:15 [INFO] [stderr] | [INFO] [stderr] 1090 | fn split_ow(&self) -> Ref>> { [INFO] [stderr] | ^^^^^ ------------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 1090 | fn split_ow(&self) -> Ref<'_, Option>> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/bucket.rs:1098:18 [INFO] [stderr] | [INFO] [stderr] 1098 | fn split_r_mut(&self) -> RefMut> { [INFO] [stderr] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 1098 | fn split_r_mut(&self) -> RefMut<'_, BucketR<'tx>> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/bucket.rs:1102:19 [INFO] [stderr] | [INFO] [stderr] 1102 | fn split_ow_mut(&self) -> RefMut>> { [INFO] [stderr] | ^^^^^ ---------------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 1102 | fn split_ow_mut(&self) -> RefMut<'_, Option>> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/common/mod.rs:32:14 [INFO] [stderr] | [INFO] [stderr] 32 | fn split_r(&self) -> cell::Ref; [INFO] [stderr] | ^^^^^ ------------ the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 32 | fn split_r(&self) -> cell::Ref<'_, R>; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/common/mod.rs:35:16 [INFO] [stderr] | [INFO] [stderr] 35 | fn split_ref(&self) -> (cell::Ref, cell::Ref>); [INFO] [stderr] | ^^^^^ ------------ -------------------- the lifetimes get resolved as `'_` [INFO] [stderr] | | | [INFO] [stderr] | | the lifetimes get resolved as `'_` [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 35 | fn split_ref(&self) -> (cell::Ref<'_, R>, cell::Ref<'_, Option>); [INFO] [stderr] | +++ +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/common/mod.rs:38:15 [INFO] [stderr] | [INFO] [stderr] 38 | fn split_ow(&self) -> cell::Ref>; [INFO] [stderr] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 38 | fn split_ow(&self) -> cell::Ref<'_, Option>; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/common/mod.rs:44:18 [INFO] [stderr] | [INFO] [stderr] 44 | fn split_r_mut(&self) -> cell::RefMut; [INFO] [stderr] | ^^^^^ --------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 44 | fn split_r_mut(&self) -> cell::RefMut<'_, R>; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/common/mod.rs:47:19 [INFO] [stderr] | [INFO] [stderr] 47 | fn split_ow_mut(&self) -> cell::RefMut>; [INFO] [stderr] | ^^^^^ ----------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 47 | fn split_ow_mut(&self) -> cell::RefMut<'_, Option>; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/common/lock.rs:59:18 [INFO] [stderr] | [INFO] [stderr] 59 | pub fn get_mut(&self) -> Option> { [INFO] [stderr] | ^^^^^ --------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 59 | pub fn get_mut(&self) -> Option> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/common/refstack.rs:14:15 [INFO] [stderr] | [INFO] [stderr] 14 | pub fn push(&self, value: T) -> RefStack { [INFO] [stderr] | ^^^^^ ----------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 14 | pub fn push(&self, value: T) -> RefStack<'_, T> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/db.rs:84:12 [INFO] [stderr] | [INFO] [stderr] 84 | fn begin(&self) -> crate::Result; [INFO] [stderr] | ^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 84 | fn begin(&self) -> crate::Result>; [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/db.rs:220:15 [INFO] [stderr] | [INFO] [stderr] 220 | fn begin_rw(&mut self) -> crate::Result; [INFO] [stderr] | ^^^^^^^^^ ------------ the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 220 | fn begin_rw(&mut self) -> crate::Result>; [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/db.rs:546:15 [INFO] [stderr] | [INFO] [stderr] 546 | fn freelist(&self) -> MutexGuard; [INFO] [stderr] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 546 | fn freelist(&self) -> MutexGuard<'_, Freelist>; [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/db.rs:588:15 [INFO] [stderr] | [INFO] [stderr] 588 | fn freelist(&self) -> MutexGuard { [INFO] [stderr] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 588 | fn freelist(&self) -> MutexGuard<'_, Freelist> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/db.rs:670:15 [INFO] [stderr] | [INFO] [stderr] 670 | fn freelist(&self) -> MutexGuard { [INFO] [stderr] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 670 | fn freelist(&self) -> MutexGuard<'_, Freelist> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/db.rs:967:15 [INFO] [stderr] | [INFO] [stderr] 967 | fn freelist(&self) -> MutexGuard { [INFO] [stderr] | ^^^^^ -------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 967 | fn freelist(&self) -> MutexGuard<'_, Freelist> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/db.rs:1907:26 [INFO] [stderr] | [INFO] [stderr] 1907 | pub(crate) fn begin_tx(&self) -> crate::Result { [INFO] [stderr] | ^^^^^ ------ the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 1907 | pub(crate) fn begin_tx(&self) -> crate::Result> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/db.rs:1948:29 [INFO] [stderr] | [INFO] [stderr] 1948 | pub(crate) fn begin_rw_tx(&mut self) -> crate::Result { [INFO] [stderr] | ^^^^^^^^^ -------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 1948 | pub(crate) fn begin_rw_tx(&mut self) -> crate::Result> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/db.rs:1983:12 [INFO] [stderr] | [INFO] [stderr] 1983 | fn begin(&self) -> crate::Result { [INFO] [stderr] | ^^^^^ ---------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 1983 | fn begin(&self) -> crate::Result> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/db.rs:2042:15 [INFO] [stderr] | [INFO] [stderr] 2042 | fn begin_rw(&mut self) -> crate::Result { [INFO] [stderr] | ^^^^^^^^^ ------------ the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 2042 | fn begin_rw(&mut self) -> crate::Result> { [INFO] [stderr] | ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/tx.rs:876:14 [INFO] [stderr] | [INFO] [stderr] 876 | fn split_r(&self) -> Ref> { [INFO] [stderr] | ^^^^^ ------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 876 | fn split_r(&self) -> Ref<'_, TxR<'tx>> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/tx.rs:880:16 [INFO] [stderr] | [INFO] [stderr] 880 | fn split_ref(&self) -> (Ref>, Ref>>) { [INFO] [stderr] | ^^^^^ ------------- --------------------- the lifetimes get resolved as `'_` [INFO] [stderr] | | | [INFO] [stderr] | | the lifetimes get resolved as `'_` [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 880 | fn split_ref(&self) -> (Ref<'_, TxR<'tx>>, Ref<'_, Option>>) { [INFO] [stderr] | +++ +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/tx.rs:885:15 [INFO] [stderr] | [INFO] [stderr] 885 | fn split_ow(&self) -> Ref>> { [INFO] [stderr] | ^^^^^ --------------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 885 | fn split_ow(&self) -> Ref<'_, Option>> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/tx.rs:894:18 [INFO] [stderr] | [INFO] [stderr] 894 | fn split_r_mut(&self) -> RefMut> { [INFO] [stderr] | ^^^^^ ---------------- the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 894 | fn split_r_mut(&self) -> RefMut<'_, TxR<'tx>> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/tx.rs:898:19 [INFO] [stderr] | [INFO] [stderr] 898 | fn split_ow_mut(&self) -> RefMut>> { [INFO] [stderr] | ^^^^^ ------------------------ the lifetime gets resolved as `'_` [INFO] [stderr] | | [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 898 | fn split_ow_mut(&self) -> RefMut<'_, Option>> { [INFO] [stderr] | +++ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `BoltOptionsBuilder` and `Bolt` [INFO] [stderr] --> src/bucket.rs:1821:5 [INFO] [stderr] | [INFO] [stderr] 1821 | Bolt, BoltOptionsBuilder, BucketApi, BucketRwApi, CursorApi, DbApi, DbRwAPI, Error, TxApi, [INFO] [stderr] | ^^^^ ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_imports)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Fake` and `Faker` [INFO] [stderr] --> src/bucket.rs:1825:14 [INFO] [stderr] | [INFO] [stderr] 1825 | use fake::{Fake, Faker}; [INFO] [stderr] | ^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::fs` [INFO] [stderr] --> src/bucket.rs:1827:7 [INFO] [stderr] | [INFO] [stderr] 1827 | use std::fs; [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `File` and `OpenOptions` [INFO] [stderr] --> src/bucket.rs:1828:17 [INFO] [stderr] | [INFO] [stderr] 1828 | use std::fs::{File, OpenOptions}; [INFO] [stderr] | ^^^^ ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `Read` and `Write` [INFO] [stderr] --> src/bucket.rs:1829:17 [INFO] [stderr] | [INFO] [stderr] 1829 | use std::io::{Read, Write}; [INFO] [stderr] | ^^^^ ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::path::Path` [INFO] [stderr] --> src/bucket.rs:1830:7 [INFO] [stderr] | [INFO] [stderr] 1830 | use std::path::Path; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::ops::Deref` [INFO] [stderr] --> src/common/inode.rs:10:5 [INFO] [stderr] | [INFO] [stderr] 10 | use std::ops::Deref; [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::rc::Rc` [INFO] [stderr] --> src/common/pool.rs:150:7 [INFO] [stderr] | [INFO] [stderr] 150 | use std::rc::Rc; [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::sync::mpsc::channel` [INFO] [stderr] --> src/db.rs:2103:7 [INFO] [stderr] | [INFO] [stderr] 2103 | use std::sync::mpsc::channel; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `std::sync::Arc` [INFO] [stderr] --> src/db.rs:2104:7 [INFO] [stderr] | [INFO] [stderr] 2104 | use std::sync::Arc; [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused imports: `BucketApi`, `BucketRwApi`, `CursorApi`, `Error`, and `TxRwApi` [INFO] [stderr] --> src/test_support.rs:5:22 [INFO] [stderr] | [INFO] [stderr] 5 | Bolt, BoltOptions, BucketApi, BucketRwApi, CursorApi, DbApi, Error, TxApi, TxRwApi, TxRwRefApi, [INFO] [stderr] | ^^^^^^^^^ ^^^^^^^^^^^ ^^^^^^^^^ ^^^^^ ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `fake::faker::lorem::en::Sentence` [INFO] [stderr] --> src/test_support.rs:8:5 [INFO] [stderr] | [INFO] [stderr] 8 | use fake::faker::lorem::en::Sentence; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `fake::locales::EN` [INFO] [stderr] --> src/test_support.rs:9:5 [INFO] [stderr] | [INFO] [stderr] 9 | use fake::locales::EN; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `itertools::Itertools` [INFO] [stderr] --> src/test_support.rs:12:5 [INFO] [stderr] | [INFO] [stderr] 12 | use itertools::Itertools; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused import: `MetaPage` [INFO] [stderr] --> src/util.rs:1:49 [INFO] [stderr] | [INFO] [stderr] 1 | use crate::common::page::meta::{MappedMetaPage, MetaPage}; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `bucket::BucketApi::for_each`: please use `iter_*` methods instead [INFO] [stderr] --> src/bucket.rs:2343:7 [INFO] [stderr] | [INFO] [stderr] 2343 | b.for_each(|k, v| { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `bucket::BucketApi::for_each_bucket`: please use `iter_*` methods instead [INFO] [stderr] --> src/bucket.rs:2352:7 [INFO] [stderr] | [INFO] [stderr] 2352 | b.for_each_bucket(|k| { [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `bucket::BucketApi::for_each`: please use `iter_*` methods instead [INFO] [stderr] --> src/bucket.rs:2467:38 [INFO] [stderr] | [INFO] [stderr] 2467 | tx.bucket(b"widgets").unwrap().for_each(|k, _| { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `tx::TxApi::for_each`: please use `iter_*` methods instead [INFO] [stderr] --> src/tx.rs:2315:10 [INFO] [stderr] | [INFO] [stderr] 2315 | tx.for_each(|_, _| Ok(()))?; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: use of deprecated method `tx::TxApi::for_each`: please use `iter_*` methods instead [INFO] [stderr] --> src/tx.rs:2327:10 [INFO] [stderr] | [INFO] [stderr] 2327 | tx.for_each(|_, _| Err(Error::Other(anyhow!("marker"))))?; [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: unused variable: `i` [INFO] [stderr] --> src/bucket.rs:2918:12 [INFO] [stderr] | [INFO] [stderr] 2918 | for (i, entry) in d.values.iter().enumerate() { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: unused variable: `k` [INFO] [stderr] --> src/iter.rs:362:12 [INFO] [stderr] | [INFO] [stderr] 362 | for (k, mut b) in tx.iter_mut_buckets() { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_k` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `v` [INFO] [stderr] --> src/iter.rs:367:19 [INFO] [stderr] | [INFO] [stderr] 367 | for (k, v) in wb.iter_entries() { [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_v` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `f` [INFO] [stderr] --> src/util.rs:14:11 [INFO] [stderr] | [INFO] [stderr] 14 | let mut f = OpenOptions::new() [INFO] [stderr] | ^ help: if this is intentional, prefix it with an underscore: `_f` [INFO] [stderr] [INFO] [stderr] warning: unused variable: `db_path` [INFO] [stderr] --> src/util.rs:21:7 [INFO] [stderr] | [INFO] [stderr] 21 | let db_path = cell.split_r().db; [INFO] [stderr] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_db_path` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/util.rs:14:7 [INFO] [stderr] | [INFO] [stderr] 14 | let mut f = OpenOptions::new() [INFO] [stderr] | ----^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_mut)]` on by default [INFO] [stderr] [INFO] [stderr] warning: associated function `coerce_mut` is never used [INFO] [stderr] --> src/common/page/mod.rs:79:6 [INFO] [stderr] | [INFO] [stderr] 21 | pub trait CoerciblePage { [INFO] [stderr] | ------------- associated function in this trait [INFO] [stderr] ... [INFO] [stderr] 79 | fn coerce_mut<'a>(mapped_page: &'a mut MutPage<'_>) -> Option<&'a mut Self> [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function `init` is never used [INFO] [stderr] --> src/common/page/freelist.rs:33:10 [INFO] [stderr] | [INFO] [stderr] 25 | impl MappedFreeListPage { [INFO] [stderr] | ----------------------- associated function in this implementation [INFO] [stderr] ... [INFO] [stderr] 33 | pub fn init(bytes: *mut u8) -> MappedFreeListPage { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `hashset` is never used [INFO] [stderr] --> src/common/page/freelist.rs:554:6 [INFO] [stderr] | [INFO] [stderr] 554 | fn hashset(ids: &[u64]) -> HashSet { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated items `with_capacity` and `is_empty` are never used [INFO] [stderr] --> src/common/pool.rs:31:10 [INFO] [stderr] | [INFO] [stderr] 14 | impl SyncPool { [INFO] [stderr] | ------------------- associated items in this implementation [INFO] [stderr] ... [INFO] [stderr] 31 | pub fn with_capacity T + 'static, R: Fn(&mut T) + 'static>( [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] ... [INFO] [stderr] 51 | pub fn is_empty(&self) -> bool { [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: method `get` is never used [INFO] [stderr] --> src/common/refstack.rs:25:10 [INFO] [stderr] | [INFO] [stderr] 9 | impl<'a, T> RefStack<'a, T> { [INFO] [stderr] | --------------------------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 25 | pub fn get(&self) -> &T { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: method `begin_unseal` is never used [INFO] [stderr] --> src/test_support.rs:130:17 [INFO] [stderr] | [INFO] [stderr] 55 | impl TestDb { [INFO] [stderr] | ----------- method in this implementation [INFO] [stderr] ... [INFO] [stderr] 130 | pub(crate) fn begin_unseal(&self) -> crate::Result { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function `copy` is never used [INFO] [stderr] --> src/util.rs:13:4 [INFO] [stderr] | [INFO] [stderr] 13 | fn copy>(cell: TxCell, path: P) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/test_support.rs:130:30 [INFO] [stderr] | [INFO] [stderr] 130 | pub(crate) fn begin_unseal(&self) -> crate::Result { [INFO] [stderr] | ^^^^^ --------------------- [INFO] [stderr] | | | [INFO] [stderr] | | the lifetimes get resolved as `'_` [INFO] [stderr] | | the lifetimes get resolved as `'_` [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 130 | pub(crate) fn begin_unseal(&self) -> crate::Result + UnsealTx<'_>> { [INFO] [stderr] | ++++ ++++ [INFO] [stderr] [INFO] [stderr] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stderr] --> src/test_support.rs:134:33 [INFO] [stderr] | [INFO] [stderr] 134 | pub(crate) fn begin_rw_unseal(&mut self) -> crate::Result { [INFO] [stderr] | ^^^^^^^^^ ---------------------------- [INFO] [stderr] | | | [INFO] [stderr] | | the lifetimes get resolved as `'_` [INFO] [stderr] | | the lifetimes get resolved as `'_` [INFO] [stderr] | this lifetime flows to the output [INFO] [stderr] | [INFO] [stderr] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stderr] | [INFO] [stderr] 134 | pub(crate) fn begin_rw_unseal(&mut self) -> crate::Result + UnsealRwTx<'_>> { [INFO] [stderr] | ++++ ++++ [INFO] [stderr] [INFO] [stderr] warning: `bbolt-rs` (lib) generated 81 warnings (run `cargo fix --lib -p bbolt-rs` to apply 38 suggestions) [INFO] [stderr] warning: `bbolt-rs` (lib test) generated 93 warnings (58 duplicates) (run `cargo fix --lib -p bbolt-rs --tests` to apply 18 suggestions) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.13s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/bbolt_rs-6ec9a585602eb0ac) [INFO] [stdout] [INFO] [stdout] running 133 tests [INFO] [stdout] test bucket::tests::test_bucket_get_capacity ... ignored [INFO] [stdout] test bucket::tests::test_bucket_delete_bucket ... ok [INFO] [stdout] test bucket::tests::test_bucket_for_each_short_circuit ... ok [INFO] [stdout] test bucket::tests::test_bucket_delete_bucket_incompatible_value ... ok [INFO] [stdout] test bucket::tests::test_bucket_get_from_node ... ok [INFO] [stdout] test bucket::tests::test_bucket_bucket_incompatible_value ... ok [INFO] [stdout] test bucket::tests::test_bucket_for_each ... ok [INFO] [stdout] test bucket::tests::test_bucket_delete ... ok [INFO] [stdout] test bucket::tests::test_bucket_create_bucket_incompatible_value ... ok [INFO] [stdout] test bucket::tests::test_bucket_delete_bucket_nested2 ... ok [INFO] [stdout] test bucket::tests::test_bucket_delete_bucket_nested ... ok [INFO] [stdout] test bucket::tests::test_bucket_for_each_bucket ... ok [INFO] [stdout] test bucket::tests::test_bucket_for_each_bucket_no_buckets ... ok [INFO] [stdout] test bucket::tests::test_bucket_get_incompatible_value ... ok [INFO] [stdout] test bucket::tests::test_bucket_delete_non_existing ... ok [INFO] [stdout] test bucket::tests::test_bucket_put_empty_key ... ok [INFO] [stdout] test bucket::tests::test_bucket_get_non_existent ... ok [INFO] [stdout] test bucket::tests::test_bucket_put_value_too_large ... ok [INFO] [stdout] test bucket::tests::test_bucket_next_sequence ... ok [INFO] [stdout] test bucket::tests::test_bucket_put_incompatible_value ... ok [INFO] [stdout] test bucket::tests::test_bucket_put ... ok [INFO] [stdout] test bucket::tests::test_bucket_put_key_too_large ... ok [INFO] [stdout] test common::page::freelist::tests::freelist_free_overflow ... ok [INFO] [stdout] test common::page::freelist::tests::freelist_allocate ... ok [INFO] [stdout] test common::page::freelist::tests::freelist_free ... ok [INFO] [stdout] test common::page::freelist::tests::freelist_merge_with_exist ... ignored [INFO] [stdout] test common::page::freelist::tests::freelist_read ... ok [INFO] [stdout] test common::page::freelist::tests::freelist_read_ids_and_free_page_ids ... ok [INFO] [stdout] test common::page::freelist::tests::freelist_release ... ok [INFO] [stdout] test common::page::freelist::tests::freelist_release_range ... ok [INFO] [stdout] test common::page::freelist::tests::freelist_write ... ok [INFO] [stdout] test bucket::tests::test_bucket_next_sequence_persist ... ok [INFO] [stdout] test common::page::meta::test::test ... ok [INFO] [stdout] test common::pool::tests::test_arc ... ok [INFO] [stdout] test common::refstack::tests::test_refstack ... ok [INFO] [stdout] test bucket::tests::test_bucket_put_repeat ... ok [INFO] [stdout] test bucket::tests::test_bucket_sequence ... ok [INFO] [stdout] test bucket::tests::test_bucket_stats_empty_bucket ... ok [INFO] [stdout] test cursor::tests::test_cursor_empty_bucket_reverse ... ok [INFO] [stdout] test cursor::tests::test_cursor_empty_bucket ... ok [INFO] [stdout] test bucket::tests::test_bucket_delete_large ... ok [INFO] [stdout] test bucket::tests::test_bucket_stats_nested ... ok [INFO] [stdout] test bucket::tests::test_bucket_stats_small ... ok [INFO] [stdout] test bucket::tests::test_bucket_delete_bucket_large ... ok [INFO] [stdout] test cursor::tests::test_cursor_leaf_root_reverse ... ok [INFO] [stdout] test cursor::tests::test_cursor_quick_check_buckets_only ... ok [INFO] [stdout] test cursor::tests::test_cursor_iterate_leaf ... ok [INFO] [stdout] test cursor::tests::test_cursor_quick_check_buckets_only_reverse ... ok [INFO] [stdout] test db::test::benchmark_dbbatch_automatic ... ignored [INFO] [stdout] test db::test::benchmark_dbbatch_manual10x100 ... ignored [INFO] [stdout] test db::test::benchmark_dbbatch_single ... ignored [INFO] [stdout] test db::test::test_db_batch_full ... ignored [INFO] [stdout] test db::test::test_db_batch_panic ... ignored [INFO] [stdout] test cursor::tests::test_cursor_seek ... ok [INFO] [stdout] test db::test::test_db_batch_time ... ignored [INFO] [stdout] test db::test::test_db_begin_err_database_not_open ... ok [INFO] [stdout] test cursor::tests::test_cursor_restart ... ok [INFO] [stdout] test db::test::test_db_close_pending_tx_ro ... ignored [INFO] [stdout] test db::test::test_db_close_pending_tx_rw ... ignored [INFO] [stdout] test db::test::test_db_concurrent_write_to ... ignored [INFO] [stdout] test db::test::test_db_begin_rw_closed ... ok [INFO] [stdout] test db::test::test_db_open_initial_mmap_size ... ignored [INFO] [stdout] test cursor::tests::test_cursor_first_empty_pages ... ok [INFO] [stdout] test cursor::tests::test_cursor_delete ... ok [INFO] [stdout] test cursor::tests::test_cursor_last_empty_pages ... ok [INFO] [stdout] test db::test::test_db_update_closed ... ok [INFO] [stdout] test db::test::test_db_begin_rw ... ok [INFO] [stdout] test db::test::test_db_update_panic ... ignored [INFO] [stdout] test db::test::test_db_open_read_only ... ok [INFO] [stdout] test db::test::test_db_view_panic ... ignored [INFO] [stdout] test db::test::test_dbunmap ... ignored [INFO] [stdout] test db::test::test_dbstats_sub ... ok [INFO] [stdout] test cursor::tests::test_cursor_seek_large ... ok [INFO] [stdout] test db::test::test_open_big_page ... ok [INFO] [stdout] test db::test::test_open ... ok [INFO] [stdout] test db::test::test_db_view_error ... ok [INFO] [stdout] test db::test::test_open_check ... ok [INFO] [stdout] test db::test::test_open_err_checksum ... ok [INFO] [stdout] test db::test::test_open_err_not_exists ... ok [INFO] [stdout] test db::test::test_open_err_path_required ... ok [INFO] [stdout] test db::test::test_open_meta_init_write_error ... ignored [INFO] [stdout] test db::test::test_open_err_version_mismatch ... ok [INFO] [stdout] test db::test::test_open_err_invalid ... ok [INFO] [stdout] test db::test::test_open_recover_free_list ... ignored [INFO] [stdout] test db::test::test_open_file_too_small ... ok [INFO] [stdout] test db::test::test_open_read_page_size_from_meta1_os ... ok [INFO] [stdout] test db::test::test_db_batch ... ok [INFO] [stdout] test node::test::test_node_put ... ok [INFO] [stdout] test node::test::test_node_read_leaf_page ... ok [INFO] [stdout] test node::test::test_node_split ... ok [INFO] [stdout] test node::test::test_node_split_min_keys ... ok [INFO] [stdout] test node::test::test_node_split_single_page ... ok [INFO] [stdout] test node::test::test_node_write_leaf_page ... ok [INFO] [stdout] test tx::test::example_tx_copy_file ... ignored [INFO] [stdout] test db::test::test_db_stats ... ok [INFO] [stdout] test db::test::test_db_update ... ok [INFO] [stdout] test iter::test::test_tx_for_each_no_error ... ok [INFO] [stdout] test cursor::tests::test_cursor_repeat_operations ... ok [INFO] [stdout] test tx::test::test_tx_copy_file ... ignored [INFO] [stdout] test tx::test::test_tx_copy_file_error_meta ... ignored [INFO] [stdout] test tx::test::test_tx_copy_file_error_normal ... ignored [INFO] [stdout] test iter::test::test_tx_walk_no_error ... ok [INFO] [stdout] test bucket::tests::test_bucket_put_large ... ok [INFO] [stdout] test tx::test::test_tx_bucket ... ok [INFO] [stdout] test tx::test::test_tx_check_read_only ... ok [INFO] [stdout] test tx::test::test_tx_create_bucket ... ok [INFO] [stdout] test tx::test::test_tx_create_bucket_err_bucket_name_required ... ok [INFO] [stdout] test tx::test::test_tx_create_bucket_if_not_exists ... ok [INFO] [stdout] test tx::test::test_tx_create_bucket_if_not_exists_err_bucket_name_required ... ok [INFO] [stdout] test tx::test::test_tx_for_each_with_error ... ok [INFO] [stdout] test db::test::test_open_read_page_size_from_meta1_given ... ok [INFO] [stdout] test tx::test::test_tx_on_commit_rollback ... ok [INFO] [stdout] test tx::test::test_tx_create_bucket_err_bucket_exists ... ok [INFO] [stdout] test bucket::tests::test_bucket_nested ... ok [INFO] [stdout] test tx::test::test_tx_stats_add ... ok [INFO] [stdout] test tx::test::test_tx_stats_get_and_inc_atomically ... ok [INFO] [stdout] test tx::test::test_tx_stats_sub ... ok [INFO] [stdout] test tx::test::test_tx_truncate_before_write ... ignored [INFO] [stdout] test tx::test::test_tx_cursor ... ok [INFO] [stdout] test tx::test::test_tx_for_each_no_error ... ok [INFO] [stdout] test tx::test::test_tx_on_commit ... ok [INFO] [stdout] test tx::test::test_tx_delete_bucket_not_found ... ok [INFO] [stdout] test tx::test::test_tx_get_not_found ... ok [INFO] [stdout] test tx::test::test_tx_rollback ... ok [INFO] [stdout] test db::test::test_open_size ... ok [INFO] [stdout] test tx::test::test_tx_delete_bucket ... ok [INFO] [stdout] test db::test::test_db_consistency ... ok [INFO] [stdout] test tx::test::test_tx_release_range ... ok [INFO] [stdout] test bucket::tests::test_bucket_put_multiple ... ok [INFO] [stdout] test cursor::tests::test_cursor_quick_check_reverse ... ok [INFO] [stdout] test cursor::tests::test_cursor_quick_check ... ok [INFO] [stdout] test bucket::tests::test_bucket_delete_quick ... ok [INFO] [stdout] test bucket::tests::test_bucket_put_single ... ok [INFO] [stderr] Running unittests src/bin/bench.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/bench-b6e57bc77795c719) [INFO] [stdout] [INFO] [stdout] test result: ok. 111 passed; 0 failed; 22 ignored; 0 measured; 0 filtered out; finished in 38.47s [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] [stderr] Running unittests src/bin/spill.rs (/opt/rustwide/target/x86_64-unknown-linux-musl/debug/deps/spill-22131245488a4ad5) [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "f5e9ae630e39f475a2e3c9bbc577a8bf34abf813ce5e681cd06b439f2a7b8f89", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f5e9ae630e39f475a2e3c9bbc577a8bf34abf813ce5e681cd06b439f2a7b8f89", kill_on_drop: false }` [INFO] [stdout] f5e9ae630e39f475a2e3c9bbc577a8bf34abf813ce5e681cd06b439f2a7b8f89