[INFO] fetching crate leveldb 0.8.6...
[INFO] testing leveldb-0.8.6 against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146098-7
[INFO] extracting crate leveldb 0.8.6 into /workspace/builds/worker-3-tc1/source
[INFO] started tweaking crates.io crate leveldb 0.8.6
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate leveldb 0.8.6
[INFO] tweaked toml for crates.io crate leveldb 0.8.6 written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate leveldb 0.8.6 on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 20 packages to latest compatible versions
[INFO] [stderr]       Adding db-key v0.0.5 (available: v0.1.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded db-key v0.0.5
[INFO] [stderr]   Downloaded ffi-opaque v2.0.1
[INFO] [stderr]   Downloaded tempdir v0.3.7
[INFO] [stderr]   Downloaded leveldb-sys v2.0.9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] c22f989c045321dae7a166395ef9872bf84fd53714b3fa14d659e57b5cab030b
[INFO] running `Command { std: "docker" "start" "-a" "c22f989c045321dae7a166395ef9872bf84fd53714b3fa14d659e57b5cab030b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c22f989c045321dae7a166395ef9872bf84fd53714b3fa14d659e57b5cab030b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c22f989c045321dae7a166395ef9872bf84fd53714b3fa14d659e57b5cab030b", kill_on_drop: false }`
[INFO] [stdout] c22f989c045321dae7a166395ef9872bf84fd53714b3fa14d659e57b5cab030b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3f527c165f5d1c40d0eeb20091f9062a70adbb11ba004724beebc9fe8b2dbab1
[INFO] running `Command { std: "docker" "start" "-a" "3f527c165f5d1c40d0eeb20091f9062a70adbb11ba004724beebc9fe8b2dbab1", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling ffi-opaque v2.0.1
[INFO] [stderr]    Compiling db-key v0.0.5
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling cmake v0.1.54
[INFO] [stderr]    Compiling leveldb-sys v2.0.9
[INFO] [stderr]    Compiling leveldb v0.8.6 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/database/error.rs:45:32
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn cause(&self) -> Option<&std::error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn cause(&self) -> Option<&dyn std::error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods
[INFO] [stdout]    --> src/database/iterator.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks
[INFO] [stdout]     = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods
[INFO] [stdout]    --> src/database/iterator.rs:116:5
[INFO] [stdout]     |
[INFO] [stdout] 116 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods
[INFO] [stdout]    --> src/database/iterator.rs:119:5
[INFO] [stdout]     |
[INFO] [stdout] 119 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/database/iterator.rs:88:55
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn iter(&'a self, options: ReadOptions<'a, K>) -> Iterator<K>;
[INFO] [stdout]    |              --                            --         ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |              |                             |
[INFO] [stdout]    |              the lifetime is named here    the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn iter(&'a self, options: ReadOptions<'a, K>) -> Iterator<'a, K>;
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/database/iterator.rs:90:60
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn keys_iter(&'a self, options: ReadOptions<'a, K>) -> KeyIterator<K>;
[INFO] [stdout]    |                   --                            --         ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |                             |
[INFO] [stdout]    |                   the lifetime is named here    the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn keys_iter(&'a self, options: ReadOptions<'a, K>) -> KeyIterator<'a, K>;
[INFO] [stdout]    |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/database/iterator.rs:92:61
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn value_iter(&'a self, options: ReadOptions<'a, K>) -> ValueIterator<K>;
[INFO] [stdout]    |                    --                            --         ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |                             |
[INFO] [stdout]    |                    the lifetime is named here    the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn value_iter(&'a self, options: ReadOptions<'a, K>) -> ValueIterator<'a, K>;
[INFO] [stdout]    |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/database/iterator.rs:96:55
[INFO] [stdout]    |
[INFO] [stdout] 96 |     fn iter(&'a self, options: ReadOptions<'a, K>) -> Iterator<K> {
[INFO] [stdout]    |              --                            --         ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |              |                             |
[INFO] [stdout]    |              the lifetime is named here    the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 96 |     fn iter(&'a self, options: ReadOptions<'a, K>) -> Iterator<'a, K> {
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/database/iterator.rs:100:60
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn keys_iter(&'a self, options: ReadOptions<'a, K>) -> KeyIterator<K> {
[INFO] [stdout]     |                   --                            --         ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |                             |
[INFO] [stdout]     |                   the lifetime is named here    the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn keys_iter(&'a self, options: ReadOptions<'a, K>) -> KeyIterator<'a, K> {
[INFO] [stdout]     |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/database/iterator.rs:104:61
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn value_iter(&'a self, options: ReadOptions<'a, K>) -> ValueIterator<K> {
[INFO] [stdout]     |                    --                            --         ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                    |                             |
[INFO] [stdout]     |                    the lifetime is named here    the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn value_iter(&'a self, options: ReadOptions<'a, K>) -> ValueIterator<'a, K> {
[INFO] [stdout]     |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/database/snapshots.rs:83:59
[INFO] [stdout]    |
[INFO] [stdout] 83 |     fn iter(&'a self, mut options: ReadOptions<'a, K>) -> Iterator<K> {
[INFO] [stdout]    |              --                                --         ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |              |                                 |
[INFO] [stdout]    |              the lifetime is named here        the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 83 |     fn iter(&'a self, mut options: ReadOptions<'a, K>) -> Iterator<'a, K> {
[INFO] [stdout]    |                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/database/snapshots.rs:87:64
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn keys_iter(&'a self, mut options: ReadOptions<'a, K>) -> KeyIterator<K> {
[INFO] [stdout]    |                   --                                --         ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |                                 |
[INFO] [stdout]    |                   the lifetime is named here        the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn keys_iter(&'a self, mut options: ReadOptions<'a, K>) -> KeyIterator<'a, K> {
[INFO] [stdout]    |                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/database/snapshots.rs:91:65
[INFO] [stdout]    |
[INFO] [stdout] 91 |     fn value_iter(&'a self, mut options: ReadOptions<'a, K>) -> ValueIterator<K> {
[INFO] [stdout]    |                    --                                --         ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |                                 |
[INFO] [stdout]    |                    the lifetime is named here        the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 91 |     fn value_iter(&'a self, mut options: ReadOptions<'a, K>) -> ValueIterator<'a, K> {
[INFO] [stdout]    |                                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 18.26s
[INFO] running `Command { std: "docker" "inspect" "3f527c165f5d1c40d0eeb20091f9062a70adbb11ba004724beebc9fe8b2dbab1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3f527c165f5d1c40d0eeb20091f9062a70adbb11ba004724beebc9fe8b2dbab1", kill_on_drop: false }`
[INFO] [stdout] 3f527c165f5d1c40d0eeb20091f9062a70adbb11ba004724beebc9fe8b2dbab1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f99d6d4d45bfed76ec80e2f10f85c0754eb5bbaeede5d3be26e0726448ef68dd
[INFO] running `Command { std: "docker" "start" "-a" "f99d6d4d45bfed76ec80e2f10f85c0754eb5bbaeede5d3be26e0726448ef68dd", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/database/error.rs:45:32
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn cause(&self) -> Option<&std::error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn cause(&self) -> Option<&dyn std::error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods
[INFO] [stdout]    --> src/database/iterator.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks
[INFO] [stdout]     = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods
[INFO] [stdout]    --> src/database/iterator.rs:116:5
[INFO] [stdout]     |
[INFO] [stdout] 116 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods
[INFO] [stdout]    --> src/database/iterator.rs:119:5
[INFO] [stdout]     |
[INFO] [stdout] 119 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/database/iterator.rs:88:55
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn iter(&'a self, options: ReadOptions<'a, K>) -> Iterator<K>;
[INFO] [stdout]    |              --                            --         ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |              |                             |
[INFO] [stdout]    |              the lifetime is named here    the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn iter(&'a self, options: ReadOptions<'a, K>) -> Iterator<'a, K>;
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/database/iterator.rs:90:60
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn keys_iter(&'a self, options: ReadOptions<'a, K>) -> KeyIterator<K>;
[INFO] [stdout]    |                   --                            --         ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |                             |
[INFO] [stdout]    |                   the lifetime is named here    the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn keys_iter(&'a self, options: ReadOptions<'a, K>) -> KeyIterator<'a, K>;
[INFO] [stdout]    |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/database/iterator.rs:92:61
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn value_iter(&'a self, options: ReadOptions<'a, K>) -> ValueIterator<K>;
[INFO] [stdout]    |                    --                            --         ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |                             |
[INFO] [stdout]    |                    the lifetime is named here    the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn value_iter(&'a self, options: ReadOptions<'a, K>) -> ValueIterator<'a, K>;
[INFO] [stdout]    |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/database/iterator.rs:96:55
[INFO] [stdout]    |
[INFO] [stdout] 96 |     fn iter(&'a self, options: ReadOptions<'a, K>) -> Iterator<K> {
[INFO] [stdout]    |              --                            --         ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |              |                             |
[INFO] [stdout]    |              the lifetime is named here    the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 96 |     fn iter(&'a self, options: ReadOptions<'a, K>) -> Iterator<'a, K> {
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/database/iterator.rs:100:60
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn keys_iter(&'a self, options: ReadOptions<'a, K>) -> KeyIterator<K> {
[INFO] [stdout]     |                   --                            --         ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |                             |
[INFO] [stdout]     |                   the lifetime is named here    the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn keys_iter(&'a self, options: ReadOptions<'a, K>) -> KeyIterator<'a, K> {
[INFO] [stdout]     |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/database/iterator.rs:104:61
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn value_iter(&'a self, options: ReadOptions<'a, K>) -> ValueIterator<K> {
[INFO] [stdout]     |                    --                            --         ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                    |                             |
[INFO] [stdout]     |                    the lifetime is named here    the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn value_iter(&'a self, options: ReadOptions<'a, K>) -> ValueIterator<'a, K> {
[INFO] [stdout]     |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/database/snapshots.rs:83:59
[INFO] [stdout]    |
[INFO] [stdout] 83 |     fn iter(&'a self, mut options: ReadOptions<'a, K>) -> Iterator<K> {
[INFO] [stdout]    |              --                                --         ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |              |                                 |
[INFO] [stdout]    |              the lifetime is named here        the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 83 |     fn iter(&'a self, mut options: ReadOptions<'a, K>) -> Iterator<'a, K> {
[INFO] [stdout]    |                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/database/snapshots.rs:87:64
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn keys_iter(&'a self, mut options: ReadOptions<'a, K>) -> KeyIterator<K> {
[INFO] [stdout]    |                   --                                --         ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |                                 |
[INFO] [stdout]    |                   the lifetime is named here        the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn keys_iter(&'a self, mut options: ReadOptions<'a, K>) -> KeyIterator<'a, K> {
[INFO] [stdout]    |                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/database/snapshots.rs:91:65
[INFO] [stdout]    |
[INFO] [stdout] 91 |     fn value_iter(&'a self, mut options: ReadOptions<'a, K>) -> ValueIterator<K> {
[INFO] [stdout]    |                    --                                --         ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |                                 |
[INFO] [stdout]    |                    the lifetime is named here        the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 91 |     fn value_iter(&'a self, mut options: ReadOptions<'a, K>) -> ValueIterator<'a, K> {
[INFO] [stdout]    |                                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling tempdir v0.3.7
[INFO] [stderr]    Compiling leveldb v0.8.6 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/database/error.rs:45:32
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn cause(&self) -> Option<&std::error::Error> {
[INFO] [stdout]    |                                ^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 45 |     fn cause(&self) -> Option<&dyn std::error::Error> {
[INFO] [stdout]    |                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> tests/iterator.rs:84:22
[INFO] [stdout]    |
[INFO] [stdout] 84 |   let iterable: &mut Iterable<i32> = database;
[INFO] [stdout]    |                      ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 84 |   let iterable: &mut dyn Iterable<i32> = database;
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> tests/iterator.rs:99:22
[INFO] [stdout]    |
[INFO] [stdout] 99 |   let iterable: &mut Iterable<i32> = database;
[INFO] [stdout]    |                      ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 99 |   let iterable: &mut dyn Iterable<i32> = database;
[INFO] [stdout]    |                      +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods
[INFO] [stdout]    --> src/database/iterator.rs:113:5
[INFO] [stdout]     |
[INFO] [stdout] 113 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks
[INFO] [stdout]     = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods
[INFO] [stdout]    --> src/database/iterator.rs:116:5
[INFO] [stdout]     |
[INFO] [stdout] 116 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `#[inline]` attribute cannot be used on required trait methods
[INFO] [stdout]    --> src/database/iterator.rs:119:5
[INFO] [stdout]     |
[INFO] [stdout] 119 |     #[inline]
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/database/iterator.rs:88:55
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn iter(&'a self, options: ReadOptions<'a, K>) -> Iterator<K>;
[INFO] [stdout]    |              --                            --         ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |              |                             |
[INFO] [stdout]    |              the lifetime is named here    the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 88 |     fn iter(&'a self, options: ReadOptions<'a, K>) -> Iterator<'a, K>;
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/database/iterator.rs:90:60
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn keys_iter(&'a self, options: ReadOptions<'a, K>) -> KeyIterator<K>;
[INFO] [stdout]    |                   --                            --         ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |                             |
[INFO] [stdout]    |                   the lifetime is named here    the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 90 |     fn keys_iter(&'a self, options: ReadOptions<'a, K>) -> KeyIterator<'a, K>;
[INFO] [stdout]    |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/database/iterator.rs:92:61
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn value_iter(&'a self, options: ReadOptions<'a, K>) -> ValueIterator<K>;
[INFO] [stdout]    |                    --                            --         ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |                             |
[INFO] [stdout]    |                    the lifetime is named here    the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 92 |     fn value_iter(&'a self, options: ReadOptions<'a, K>) -> ValueIterator<'a, K>;
[INFO] [stdout]    |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/database/iterator.rs:96:55
[INFO] [stdout]    |
[INFO] [stdout] 96 |     fn iter(&'a self, options: ReadOptions<'a, K>) -> Iterator<K> {
[INFO] [stdout]    |              --                            --         ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |              |                             |
[INFO] [stdout]    |              the lifetime is named here    the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 96 |     fn iter(&'a self, options: ReadOptions<'a, K>) -> Iterator<'a, K> {
[INFO] [stdout]    |                                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/database/iterator.rs:100:60
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn keys_iter(&'a self, options: ReadOptions<'a, K>) -> KeyIterator<K> {
[INFO] [stdout]     |                   --                            --         ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |                             |
[INFO] [stdout]     |                   the lifetime is named here    the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 100 |     fn keys_iter(&'a self, options: ReadOptions<'a, K>) -> KeyIterator<'a, K> {
[INFO] [stdout]     |                                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/database/iterator.rs:104:61
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn value_iter(&'a self, options: ReadOptions<'a, K>) -> ValueIterator<K> {
[INFO] [stdout]     |                    --                            --         ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                    |                             |
[INFO] [stdout]     |                    the lifetime is named here    the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 104 |     fn value_iter(&'a self, options: ReadOptions<'a, K>) -> ValueIterator<'a, K> {
[INFO] [stdout]     |                                                                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `collect` that must be used
[INFO] [stdout]   --> tests/concurrent_access.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | /     (0..10).map(|i| {
[INFO] [stdout] 18 | |          let local_db = shared.clone();
[INFO] [stdout] 19 | |
[INFO] [stdout] 20 | |          thread::spawn(move || {
[INFO] [stdout] ...  |
[INFO] [stdout] 28 | |     .map(JoinHandle::join)
[INFO] [stdout] 29 | |     .collect::<Vec<_>>();
[INFO] [stdout]    | |________________________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 17 |     let _ = (0..10).map(|i| {
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/database/snapshots.rs:83:59
[INFO] [stdout]    |
[INFO] [stdout] 83 |     fn iter(&'a self, mut options: ReadOptions<'a, K>) -> Iterator<K> {
[INFO] [stdout]    |              --                                --         ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |              |                                 |
[INFO] [stdout]    |              the lifetime is named here        the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 83 |     fn iter(&'a self, mut options: ReadOptions<'a, K>) -> Iterator<'a, K> {
[INFO] [stdout]    |                                                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/database/snapshots.rs:87:64
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn keys_iter(&'a self, mut options: ReadOptions<'a, K>) -> KeyIterator<K> {
[INFO] [stdout]    |                   --                                --         ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                   |                                 |
[INFO] [stdout]    |                   the lifetime is named here        the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 87 |     fn keys_iter(&'a self, mut options: ReadOptions<'a, K>) -> KeyIterator<'a, K> {
[INFO] [stdout]    |                                                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stdout]   --> src/database/snapshots.rs:91:65
[INFO] [stdout]    |
[INFO] [stdout] 91 |     fn value_iter(&'a self, mut options: ReadOptions<'a, K>) -> ValueIterator<K> {
[INFO] [stdout]    |                    --                                --         ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                    |                                 |
[INFO] [stdout]    |                    the lifetime is named here        the lifetime is named here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]    |
[INFO] [stdout] 91 |     fn value_iter(&'a self, mut options: ReadOptions<'a, K>) -> ValueIterator<'a, K> {
[INFO] [stdout]    |                                                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.18s
[INFO] running `Command { std: "docker" "inspect" "f99d6d4d45bfed76ec80e2f10f85c0754eb5bbaeede5d3be26e0726448ef68dd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f99d6d4d45bfed76ec80e2f10f85c0754eb5bbaeede5d3be26e0726448ef68dd", kill_on_drop: false }`
[INFO] [stdout] f99d6d4d45bfed76ec80e2f10f85c0754eb5bbaeede5d3be26e0726448ef68dd
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 8744e0d6e2d33da62d5cb5dd2a21f44ecf1699c394195bd1d46e83e1a9424b46
[INFO] running `Command { std: "docker" "start" "-a" "8744e0d6e2d33da62d5cb5dd2a21f44ecf1699c394195bd1d46e83e1a9424b46", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/database/error.rs:45:32
[INFO] [stderr]    |
[INFO] [stderr] 45 |     fn cause(&self) -> Option<&std::error::Error> {
[INFO] [stderr]    |                                ^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 45 |     fn cause(&self) -> Option<&dyn std::error::Error> {
[INFO] [stderr]    |                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` attribute cannot be used on required trait methods
[INFO] [stderr]    --> src/database/iterator.rs:113:5
[INFO] [stderr]     |
[INFO] [stderr] 113 |     #[inline]
[INFO] [stderr]     |     ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks
[INFO] [stderr]     = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` attribute cannot be used on required trait methods
[INFO] [stderr]    --> src/database/iterator.rs:116:5
[INFO] [stderr]     |
[INFO] [stderr] 116 |     #[inline]
[INFO] [stderr]     |     ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks
[INFO] [stderr] 
[INFO] [stderr] warning: `#[inline]` attribute cannot be used on required trait methods
[INFO] [stderr]    --> src/database/iterator.rs:119:5
[INFO] [stderr]     |
[INFO] [stderr] 119 |     #[inline]
[INFO] [stderr]     |     ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = help: `#[inline]` can be applied to closures, functions, inherent methods, provided trait methods, and trait methods in impl blocks
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]   --> src/database/iterator.rs:88:55
[INFO] [stderr]    |
[INFO] [stderr] 88 |     fn iter(&'a self, options: ReadOptions<'a, K>) -> Iterator<K>;
[INFO] [stderr]    |              --                            --         ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |              |                             |
[INFO] [stderr]    |              the lifetime is named here    the lifetime is named here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: consistently use `'a`
[INFO] [stderr]    |
[INFO] [stderr] 88 |     fn iter(&'a self, options: ReadOptions<'a, K>) -> Iterator<'a, K>;
[INFO] [stderr]    |                                                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]   --> src/database/iterator.rs:90:60
[INFO] [stderr]    |
[INFO] [stderr] 90 |     fn keys_iter(&'a self, options: ReadOptions<'a, K>) -> KeyIterator<K>;
[INFO] [stderr]    |                   --                            --         ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                   |                             |
[INFO] [stderr]    |                   the lifetime is named here    the lifetime is named here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'a`
[INFO] [stderr]    |
[INFO] [stderr] 90 |     fn keys_iter(&'a self, options: ReadOptions<'a, K>) -> KeyIterator<'a, K>;
[INFO] [stderr]    |                                                                        +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]   --> src/database/iterator.rs:92:61
[INFO] [stderr]    |
[INFO] [stderr] 92 |     fn value_iter(&'a self, options: ReadOptions<'a, K>) -> ValueIterator<K>;
[INFO] [stderr]    |                    --                            --         ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                    |                             |
[INFO] [stderr]    |                    the lifetime is named here    the lifetime is named here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'a`
[INFO] [stderr]    |
[INFO] [stderr] 92 |     fn value_iter(&'a self, options: ReadOptions<'a, K>) -> ValueIterator<'a, K>;
[INFO] [stderr]    |                                                                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]   --> src/database/iterator.rs:96:55
[INFO] [stderr]    |
[INFO] [stderr] 96 |     fn iter(&'a self, options: ReadOptions<'a, K>) -> Iterator<K> {
[INFO] [stderr]    |              --                            --         ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |              |                             |
[INFO] [stderr]    |              the lifetime is named here    the lifetime is named here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'a`
[INFO] [stderr]    |
[INFO] [stderr] 96 |     fn iter(&'a self, options: ReadOptions<'a, K>) -> Iterator<'a, K> {
[INFO] [stderr]    |                                                                +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> src/database/iterator.rs:100:60
[INFO] [stderr]     |
[INFO] [stderr] 100 |     fn keys_iter(&'a self, options: ReadOptions<'a, K>) -> KeyIterator<K> {
[INFO] [stderr]     |                   --                            --         ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                   |                             |
[INFO] [stderr]     |                   the lifetime is named here    the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'a`
[INFO] [stderr]     |
[INFO] [stderr] 100 |     fn keys_iter(&'a self, options: ReadOptions<'a, K>) -> KeyIterator<'a, K> {
[INFO] [stderr]     |                                                                        +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]    --> src/database/iterator.rs:104:61
[INFO] [stderr]     |
[INFO] [stderr] 104 |     fn value_iter(&'a self, options: ReadOptions<'a, K>) -> ValueIterator<K> {
[INFO] [stderr]     |                    --                            --         ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                    |                             |
[INFO] [stderr]     |                    the lifetime is named here    the lifetime is named here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'a`
[INFO] [stderr]     |
[INFO] [stderr] 104 |     fn value_iter(&'a self, options: ReadOptions<'a, K>) -> ValueIterator<'a, K> {
[INFO] [stderr]     |                                                                           +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]   --> src/database/snapshots.rs:83:59
[INFO] [stderr]    |
[INFO] [stderr] 83 |     fn iter(&'a self, mut options: ReadOptions<'a, K>) -> Iterator<K> {
[INFO] [stderr]    |              --                                --         ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |              |                                 |
[INFO] [stderr]    |              the lifetime is named here        the lifetime is named here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'a`
[INFO] [stderr]    |
[INFO] [stderr] 83 |     fn iter(&'a self, mut options: ReadOptions<'a, K>) -> Iterator<'a, K> {
[INFO] [stderr]    |                                                                    +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]   --> src/database/snapshots.rs:87:64
[INFO] [stderr]    |
[INFO] [stderr] 87 |     fn keys_iter(&'a self, mut options: ReadOptions<'a, K>) -> KeyIterator<K> {
[INFO] [stderr]    |                   --                                --         ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                   |                                 |
[INFO] [stderr]    |                   the lifetime is named here        the lifetime is named here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'a`
[INFO] [stderr]    |
[INFO] [stderr] 87 |     fn keys_iter(&'a self, mut options: ReadOptions<'a, K>) -> KeyIterator<'a, K> {
[INFO] [stderr]    |                                                                            +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's named elsewhere is confusing
[INFO] [stderr]   --> src/database/snapshots.rs:91:65
[INFO] [stderr]    |
[INFO] [stderr] 91 |     fn value_iter(&'a self, mut options: ReadOptions<'a, K>) -> ValueIterator<K> {
[INFO] [stderr]    |                    --                                --         ^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                    |                                 |
[INFO] [stderr]    |                    the lifetime is named here        the lifetime is named here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: consistently use `'a`
[INFO] [stderr]    |
[INFO] [stderr] 91 |     fn value_iter(&'a self, mut options: ReadOptions<'a, K>) -> ValueIterator<'a, K> {
[INFO] [stderr]    |                                                                               +++
[INFO] [stderr] 
[INFO] [stderr] warning: `leveldb` (lib) generated 13 warnings (run `cargo fix --lib -p leveldb` to apply 13 suggestions)
[INFO] [stderr] warning: `leveldb` (lib test) generated 13 warnings (13 duplicates)
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/iterator.rs:84:22
[INFO] [stderr]    |
[INFO] [stderr] 84 |   let iterable: &mut Iterable<i32> = database;
[INFO] [stderr]    |                      ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 84 |   let iterable: &mut dyn Iterable<i32> = database;
[INFO] [stderr]    |                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> tests/iterator.rs:99:22
[INFO] [stderr]    |
[INFO] [stderr] 99 |   let iterable: &mut Iterable<i32> = database;
[INFO] [stderr]    |                      ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stderr]    |
[INFO] [stderr] 99 |   let iterable: &mut dyn Iterable<i32> = database;
[INFO] [stderr]    |                      +++
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `collect` that must be used
[INFO] [stderr]   --> tests/concurrent_access.rs:17:5
[INFO] [stderr]    |
[INFO] [stderr] 17 | /     (0..10).map(|i| {
[INFO] [stderr] 18 | |          let local_db = shared.clone();
[INFO] [stderr] 19 | |
[INFO] [stderr] 20 | |          thread::spawn(move || {
[INFO] [stderr] ...  |
[INFO] [stderr] 28 | |     .map(JoinHandle::join)
[INFO] [stderr] 29 | |     .collect::<Vec<_>>();
[INFO] [stderr]    | |________________________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: if you really need to exhaust the iterator, consider `.for_each(drop)` instead
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 17 |     let _ = (0..10).map(|i| {
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `leveldb` (test "tests") generated 3 warnings (run `cargo fix --test "tests" -p leveldb` to apply 2 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.02s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/leveldb-7963e1bcb64a130b)
[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 tests/tests.rs (/opt/rustwide/target/debug/deps/tests-5705482a83848d41)
[INFO] [stdout] 
[INFO] [stdout] running 24 tests
[INFO] [stdout] test database::test_create_options ... ok
[INFO] [stdout] test database::test_open_non_existant_database_without_create ... ok
[INFO] [stdout] test binary::test_write_to_database ... ok
[INFO] [stdout] test binary::test_delete_from_database ... ok
[INFO] [stdout] test binary::test_get_from_empty_database ... ok
[INFO] [stdout] test comparator::comparator::test_comparator ... ok
[INFO] [stdout] test binary::test_get_from_filled_database ... ok
[INFO] [stdout] test database::test_open_database ... ok
[INFO] [stdout] test iterator::test_iterator_from_to ... ok
[INFO] [stdout] test iterator::test_iterator ... ok
[INFO] [stdout] test iterator::test_iterator_last ... ok
[INFO] [stdout] test compaction::compaction::test_iterator_from_to ... ok
[INFO] [stdout] test management::test_destroy_database ... ok
[INFO] [stdout] test writebatch::test_writebatch ... ok
[INFO] [stdout] test snapshots::test_snapshot_iterator ... ok
[INFO] [stdout] test snapshots::test_snapshots ... ok
[INFO] [stdout] test writebatch::test_writebatchiter ... ok
[INFO] [stdout] test management::test_repair_database ... ok
[INFO] [stdout] test comparator::comparator::test_ord_comparator ... ok
[INFO] [stdout] test iterator::test_key_iterator ... ok
[INFO] [stdout] test iterator::test_value_iterator ... ok
[INFO] [stdout] test cache::test_open_database_with_cache ... ok
[INFO] [stdout] test iterator::test_iterator_reverse ... ok
[INFO] [stdout] test concurrent_access::access_from_threads ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 24 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests leveldb
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test src/lib.rs - (line 5) ... ignored
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "8744e0d6e2d33da62d5cb5dd2a21f44ecf1699c394195bd1d46e83e1a9424b46", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8744e0d6e2d33da62d5cb5dd2a21f44ecf1699c394195bd1d46e83e1a9424b46", kill_on_drop: false }`
[INFO] [stdout] 8744e0d6e2d33da62d5cb5dd2a21f44ecf1699c394195bd1d46e83e1a9424b46
