[INFO] cloning repository https://github.com/ChPuru/quiver
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ChPuru/quiver" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FChPuru%2Fquiver", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FChPuru%2Fquiver'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] fab1561cf9373af910fe9214730a24e216b6ed0d
[INFO] checking ChPuru/quiver against a7c37f9f0ee5e93396106e9de20f4a86b4154e63 for pr-129249-4
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FChPuru%2Fquiver" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/ChPuru/quiver
[INFO] finished tweaking git repo https://github.com/ChPuru/quiver
[INFO] tweaked toml for git repo https://github.com/ChPuru/quiver written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/ChPuru/quiver on toolchain a7c37f9f0ee5e93396106e9de20f4a86b4154e63
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a7c37f9f0ee5e93396106e9de20f4a86b4154e63" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/ChPuru/quiver 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" "+a7c37f9f0ee5e93396106e9de20f4a86b4154e63" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded pyo3-macros v0.25.1
[INFO] [stderr]   Downloaded napi-build v2.5.0
[INFO] [stderr]   Downloaded napi-derive v3.6.9
[INFO] [stderr]   Downloaded pyo3-build-config v0.25.1
[INFO] [stderr]   Downloaded napi-derive-backend v6.1.4
[INFO] [stderr]   Downloaded convert_case v0.12.0
[INFO] [stderr]   Downloaded napi-sys v3.3.2
[INFO] [stderr]   Downloaded pyo3-ffi v0.25.1
[INFO] [stderr]   Downloaded pyo3-macros-backend v0.25.1
[INFO] [stderr]   Downloaded rustyline v18.0.1
[INFO] [stderr]   Downloaded redb v4.1.0
[INFO] [stderr]   Downloaded napi v3.13.0
[INFO] [stderr]   Downloaded pyo3 v0.25.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] c1c954d4310425d5f5c47cfdf31e4f25f65fe62dbf7a5e2e145f959b393bdf26
[INFO] running `Command { std: "docker" "start" "c1c954d4310425d5f5c47cfdf31e4f25f65fe62dbf7a5e2e145f959b393bdf26", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c1c954d4310425d5f5c47cfdf31e4f25f65fe62dbf7a5e2e145f959b393bdf26", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "c1c954d4310425d5f5c47cfdf31e4f25f65fe62dbf7a5e2e145f959b393bdf26" "/opt/rustwide/cargo-home/bin/cargo" "+a7c37f9f0ee5e93396106e9de20f4a86b4154e63" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c1c954d4310425d5f5c47cfdf31e4f25f65fe62dbf7a5e2e145f959b393bdf26", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "c1c954d4310425d5f5c47cfdf31e4f25f65fe62dbf7a5e2e145f959b393bdf26" "/opt/rustwide/cargo-home/bin/cargo" "+a7c37f9f0ee5e93396106e9de20f4a86b4154e63" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling zerocopy v0.8.52
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]     Checking bitflags v2.13.0
[INFO] [stderr]    Compiling syn v2.0.118
[INFO] [stderr]    Compiling im v15.1.0
[INFO] [stderr]     Checking bitmaps v2.1.0
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]     Checking lock_api v0.4.14
[INFO] [stderr]     Checking arc-swap v1.9.1
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]     Checking fastrand v2.4.1
[INFO] [stderr]    Compiling cc v1.2.65
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking quick-error v1.2.3
[INFO] [stderr]     Checking bit-vec v0.6.3
[INFO] [stderr]     Checking sized-chunks v0.6.5
[INFO] [stderr]    Compiling redb v4.1.0
[INFO] [stderr]     Checking bit-set v0.5.3
[INFO] [stderr]     Checking thread_local v1.1.9
[INFO] [stderr]     Checking unarray v0.1.4
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking rand_xoshiro v0.6.0
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]    Compiling libsqlite3-sys v0.38.2
[INFO] [stderr]     Checking wait-timeout v0.2.1
[INFO] [stderr]     Checking rand_xorshift v0.3.0
[INFO] [stderr]     Checking tempfile v3.10.1
[INFO] [stderr]    Compiling syn v3.0.6
[INFO] [stderr]    Compiling pyo3-build-config v0.25.1
[INFO] [stderr]     Checking rusty-fork v0.3.1
[INFO] [stderr]    Compiling napi-build v2.5.0
[INFO] [stderr]    Compiling nix v0.31.3
[INFO] [stderr]     Checking futures-channel v0.3.34
[INFO] [stderr]    Compiling convert_case v0.12.0
[INFO] [stderr]    Compiling napi v3.13.0
[INFO] [stderr]     Checking libloading v0.9.0
[INFO] [stderr]     Checking napi-sys v3.3.2
[INFO] [stderr]    Compiling napi-derive-backend v6.1.4
[INFO] [stderr]    Compiling pyo3-ffi v0.25.1
[INFO] [stderr]    Compiling pyo3-macros-backend v0.25.1
[INFO] [stderr]    Compiling pyo3 v0.25.1
[INFO] [stderr]    Compiling quiver-node v0.3.0 (/opt/rustwide/workdir/quiver-node)
[INFO] [stderr]    Compiling ctor v1.0.13
[INFO] [stderr]     Checking unindent v0.2.4
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking nohash-hasher v0.2.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rustyline v18.0.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking proptest v1.4.0
[INFO] [stderr]    Compiling tokio-macros v2.7.2
[INFO] [stderr]    Compiling futures-macro v0.3.34
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]    Compiling clap_derive v4.6.7
[INFO] [stderr]    Compiling napi-derive v3.6.9
[INFO] [stderr]     Checking tokio v1.53.1
[INFO] [stderr]     Checking futures-util v0.3.34
[INFO] [stderr]    Compiling pyo3-macros v0.25.1
[INFO] [stderr]     Checking clap v4.6.7
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking bincode v1.3.3
[INFO] [stderr]     Checking tokio-stream v0.1.19
[INFO] [stderr]     Checking quiver v0.3.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking futures-executor v0.3.34
[INFO] [stderr]     Checking futures v0.3.34
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]    --> src/db/maint.rs:395:14
[INFO] [stdout]     |
[INFO] [stdout] 395 |             .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |n| n.checked_sub(1))
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 395 -             .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |n| n.checked_sub(1))
[INFO] [stdout] 395 +             .try_update(Ordering::Relaxed, Ordering::Relaxed, |n| n.checked_sub(1))
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `{closure@src/db/maint.rs:686:20: 686:27}: Send`
[INFO] [stdout]    --> src/db/maint.rs:686:14
[INFO] [stdout]     |
[INFO] [stdout] 686 |             .spawn(move || thread_main(weak, theirs));
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `(std::sync::Weak<DbInner>, Arc<Signal>): Send`
[INFO] [stdout]     = note: which requires `std::sync::Weak<DbInner>: Send`
[INFO] [stdout]     = note: which requires `DbInner: Send`
[INFO] [stdout]     = note: which requires `SnapFeed: Send`
[INFO] [stdout]     = note: which requires `Rcu<DbRoot>: Send`
[INFO] [stdout]     = note: which requires `ArcSwapAny<Arc<DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `PhantomData<Arc<DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `Arc<DbRoot>: Send`
[INFO] [stdout]     = note: which requires `DbRoot: Send`
[INFO] [stdout]     = note: which requires `OrdMap<Arc<str>, RootEntry>: Send`
[INFO] [stdout]     = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `im::nodes::btree::Node<(Arc<str>, RootEntry)>: Send`
[INFO] [stdout]     = note: which requires `sized_chunks::sized_chunk::Chunk<std::option::Option<im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, RootEntry)>>>, typenum::uint::UInt<typenum::uint::UInt<typenum::uint::UInt<_, B0>, B0>, B1>>: Send`
[INFO] [stdout]     = note: which requires `MaybeUninit<sized_chunks::types::SizeOdd<std::option::Option<im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, RootEntry)>>>, sized_chunks::types::SizeEven<std::option::Option<_>, _>>>: Send`
[INFO] [stdout]     = note: and so on...
[INFO] [stdout]     = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]     = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`quiver`)
[INFO] [stdout]     = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]     = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]     = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u64>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]   --> src/sys.rs:76:14
[INFO] [stdout]    |
[INFO] [stdout] 76 |             .fetch_update(Ordering::SeqCst, Ordering::SeqCst, |t| Some(t.saturating_add(ms)));
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 76 -             .fetch_update(Ordering::SeqCst, Ordering::SeqCst, |t| Some(t.saturating_add(ms)));
[INFO] [stdout] 76 +             .try_update(Ordering::SeqCst, Ordering::SeqCst, |t| Some(t.saturating_add(ms)));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking rusqlite v0.40.2
[INFO] [stderr]     Checking quiver-tokio v0.3.0 (/opt/rustwide/workdir/quiver-tokio)
[INFO] [stderr]     Checking quiver-cli v0.3.0 (/opt/rustwide/workdir/quiver-cli)
[INFO] [stdout] warning: overflow evaluating the requirement `AsyncKv::read<T, F>::{opaque#0} == impl Future<Output = Result<T, quiver::Error>> + Send + 'static`
[INFO] [stdout]   --> quiver-tokio/src/kv.rs:53:35
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn read<T, F>(&self, f: F) -> impl Future<Output = Result<T>> + Send + 'static
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: which requires `impl Future<Output = Result<T, quiver::Error>> + Send + 'static well-formed`
[INFO] [stdout]    = note: which requires `{closure@quiver-tokio/src/kv.rs:59:36: 59:44}: Send`
[INFO] [stdout]    = note: which requires `(F, Kv): Send`
[INFO] [stdout]    = note: which requires `Kv: Send`
[INFO] [stdout]    = note: which requires `Database: Send`
[INFO] [stdout]    = note: which requires `Arc<quiver::db::DbInner>: Send`
[INFO] [stdout]    = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]    = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]    = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]    = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]    = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]    = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]    = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]    = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]    = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]    = note: and so on...
[INFO] [stdout]    = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]    = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`quiver_tokio`)
[INFO] [stdout]    = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]    = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]    = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `Arc<{closure@tests/maint_combined.rs:77:42: 77:59}>: CoerceUnsized<Arc<dyn for<'a> Fn(&'a str) + Send + Sync>>`
[INFO] [stdout]    --> tests/maint_combined.rs:77:33
[INFO] [stdout]     |
[INFO] [stdout]  77 |       db.set_compaction_hook(Some(Arc::new(move |name: &str| {
[INFO] [stdout]     |  _________________________________^
[INFO] [stdout]  78 | |         assert_eq!(name, "posts");
[INFO] [stdout]  79 | |         if seen.fetch_add(1, Ordering::SeqCst) > 0 {
[INFO] [stdout]  80 | |             return; // a second attempt: the first was abandoned
[INFO] [stdout] ...   |
[INFO] [stdout] 109 | |         *want.lock().unwrap() = Some((all(&db, "posts"), referrers(&db, 40)));
[INFO] [stdout] 110 | |     })));
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `{closure@tests/maint_combined.rs:77:42: 77:59}: Unsize<dyn for<'a> Fn(&'a str) + Send + Sync>`
[INFO] [stdout]     = note: which requires `{closure@tests/maint_combined.rs:77:42: 77:59}: Send`
[INFO] [stdout]     = note: which requires `(Arc<Atomic<usize>>, WeakDatabase, Arc<Atomic<usize>>, Arc<std::sync::Mutex<Option<_>>>): Send`
[INFO] [stdout]     = note: which requires `WeakDatabase: Send`
[INFO] [stdout]     = note: which requires `std::sync::Weak<quiver::db::DbInner>: Send`
[INFO] [stdout]     = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]     = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]     = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]     = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: and so on...
[INFO] [stdout]     = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]     = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`maint_combined`)
[INFO] [stdout]     = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]     = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]     = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `{closure@tests/concurrency.rs:39:36: 39:43}: Send`
[INFO] [stdout]   --> tests/concurrency.rs:39:22
[INFO] [stdout]    |
[INFO] [stdout] 39 |           readers.push(thread::spawn(move || {
[INFO] [stdout]    |  ______________________^
[INFO] [stdout] 40 | |             let mut iterations = 0u64;
[INFO] [stdout] 41 | |             let mut q = r * 7; // each reader probes a different starting point
[INFO] [stdout] 42 | |             while !done.load(Ordering::Relaxed) {
[INFO] [stdout] ...  |
[INFO] [stdout] 53 | |             iterations
[INFO] [stdout] 54 | |         }));
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: which requires `(usize, Arc<Atomic<bool>>, Database, Arc<Vec<Vec<f32>>>, usize): Send`
[INFO] [stdout]    = note: which requires `Database: Send`
[INFO] [stdout]    = note: which requires `Arc<quiver::db::DbInner>: Send`
[INFO] [stdout]    = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]    = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]    = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]    = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]    = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]    = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]    = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]    = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]    = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]    = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]    = note: which requires `im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>: Send`
[INFO] [stdout]    = note: which requires `sized_chunks::sized_chunk::Chunk<Option<im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>>, typenum::uint::UInt<typenum::uint::UInt<typenum::uint::UInt<_, B0>, B0>, B1>>: Send`
[INFO] [stdout]    = note: and so on...
[INFO] [stdout]    = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]    = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`concurrency`)
[INFO] [stdout]    = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]    = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]    = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<usize>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]    --> src/db/maint.rs:395:14
[INFO] [stdout]     |
[INFO] [stdout] 395 |             .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |n| n.checked_sub(1))
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 395 -             .fetch_update(Ordering::Relaxed, Ordering::Relaxed, |n| n.checked_sub(1))
[INFO] [stdout] 395 +             .try_update(Ordering::Relaxed, Ordering::Relaxed, |n| n.checked_sub(1))
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `{closure@src/db/maint.rs:686:20: 686:27}: Send`
[INFO] [stdout]    --> src/db/maint.rs:686:14
[INFO] [stdout]     |
[INFO] [stdout] 686 |             .spawn(move || thread_main(weak, theirs));
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `(std::sync::Weak<DbInner>, std::sync::Arc<Signal>): Send`
[INFO] [stdout]     = note: which requires `std::sync::Weak<DbInner>: Send`
[INFO] [stdout]     = note: which requires `DbInner: Send`
[INFO] [stdout]     = note: which requires `SnapFeed: Send`
[INFO] [stdout]     = note: which requires `Rcu<snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `ArcSwapAny<std::sync::Arc<snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `PhantomData<std::sync::Arc<snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `std::sync::Arc<snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `snapshot::DbRoot: Send`
[INFO] [stdout]     = note: which requires `OrdMap<std::sync::Arc<str>, RootEntry>: Send`
[INFO] [stdout]     = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(std::sync::Arc<str>, RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `std::sync::Arc<im::nodes::btree::Node<(std::sync::Arc<str>, RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `im::nodes::btree::Node<(std::sync::Arc<str>, RootEntry)>: Send`
[INFO] [stdout]     = note: which requires `sized_chunks::sized_chunk::Chunk<std::option::Option<im::fakepool::Arc<im::nodes::btree::Node<(std::sync::Arc<str>, RootEntry)>>>, typenum::uint::UInt<typenum::uint::UInt<typenum::uint::UInt<_, B0>, B0>, B1>>: Send`
[INFO] [stdout]     = note: which requires `MaybeUninit<sized_chunks::types::SizeOdd<std::option::Option<im::fakepool::Arc<im::nodes::btree::Node<(std::sync::Arc<str>, RootEntry)>>>, sized_chunks::types::SizeEven<std::option::Option<_>, _>>>: Send`
[INFO] [stdout]     = note: and so on...
[INFO] [stdout]     = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]     = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`quiver`)
[INFO] [stdout]     = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]     = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]     = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `{closure@tests/change_feed.rs:389:32: 389:39}: Send`
[INFO] [stdout]    --> tests/change_feed.rs:389:13
[INFO] [stdout]     |
[INFO] [stdout] 389 | /             std::thread::spawn(move || {
[INFO] [stdout] 390 | |                 for i in 0..per {
[INFO] [stdout] 391 | |                     db.put("c", w * 1_000_000 + i, Doc::new()).unwrap();
[INFO] [stdout] 392 | |                 }
[INFO] [stdout] 393 | |             })
[INFO] [stdout]     | |______________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `(u64, Database, u64): Send`
[INFO] [stdout]     = note: which requires `Database: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::db::DbInner>: Send`
[INFO] [stdout]     = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]     = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]     = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]     = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>: Send`
[INFO] [stdout]     = note: which requires `sized_chunks::sized_chunk::Chunk<Option<im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>>, typenum::uint::UInt<typenum::uint::UInt<typenum::uint::UInt<_, B0>, B0>, B1>>: Send`
[INFO] [stdout]     = note: and so on...
[INFO] [stdout]     = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]     = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`change_feed`)
[INFO] [stdout]     = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]     = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]     = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking quiver-py v0.3.0 (/opt/rustwide/workdir/quiver-py)
[INFO] [stdout] warning: overflow evaluating the requirement `AsyncKv::read<T, F>::{opaque#0} == impl Future<Output = Result<T, quiver::Error>> + Send + 'static`
[INFO] [stdout]   --> quiver-tokio/src/kv.rs:53:35
[INFO] [stdout]    |
[INFO] [stdout] 53 |     fn read<T, F>(&self, f: F) -> impl Future<Output = Result<T>> + Send + 'static
[INFO] [stdout]    |                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: which requires `impl Future<Output = Result<T, quiver::Error>> + Send + 'static well-formed`
[INFO] [stdout]    = note: which requires `{closure@quiver-tokio/src/kv.rs:59:36: 59:44}: Send`
[INFO] [stdout]    = note: which requires `(F, Kv): Send`
[INFO] [stdout]    = note: which requires `Kv: Send`
[INFO] [stdout]    = note: which requires `Database: Send`
[INFO] [stdout]    = note: which requires `Arc<quiver::db::DbInner>: Send`
[INFO] [stdout]    = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]    = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]    = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]    = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]    = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]    = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]    = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]    = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]    = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]    = note: and so on...
[INFO] [stdout]    = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]    = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`quiver_tokio`)
[INFO] [stdout]    = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]    = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]    = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `{closure@tests/fallible_predicates.rs:208:52: 208:60}: Send`
[INFO] [stdout]    --> tests/fallible_predicates.rs:208:38
[INFO] [stdout]     |
[INFO] [stdout] 208 |     let opts = QueryOptions::new(10).try_predicate(move |r| {
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `(Database, Vec<f32>): Send`
[INFO] [stdout]     = note: which requires `Database: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::db::DbInner>: Send`
[INFO] [stdout]     = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]     = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]     = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]     = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>: Send`
[INFO] [stdout]     = note: which requires `sized_chunks::sized_chunk::Chunk<Option<im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>>, typenum::uint::UInt<typenum::uint::UInt<typenum::uint::UInt<_, B0>, B0>, B1>>: Send`
[INFO] [stdout]     = note: and so on...
[INFO] [stdout]     = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]     = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`fallible_predicates`)
[INFO] [stdout]     = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]     = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]     = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `{closure@quiver-cli/tests/cli.rs:1256:28: 1256:35}: Send`
[INFO] [stdout]     --> quiver-cli/tests/cli.rs:1256:9
[INFO] [stdout]      |
[INFO] [stdout] 1256 | /         std::thread::spawn(move || {
[INFO] [stdout] 1257 | |             let mut i = 0u64;
[INFO] [stdout] 1258 | |             while !stop.load(Ordering::Relaxed) {
[INFO] [stdout] 1259 | |                 app.transaction(|tx| {
[INFO] [stdout] ...    |
[INFO] [stdout] 1267 | |             i
[INFO] [stdout] 1268 | |         })
[INFO] [stdout]      | |__________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: which requires `(Arc<Atomic<bool>>, Database): Send`
[INFO] [stdout]      = note: which requires `Database: Send`
[INFO] [stdout]      = note: which requires `Arc<quiver::db::DbInner>: Send`
[INFO] [stdout]      = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]      = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]      = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]      = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]      = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]      = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]      = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]      = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]      = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]      = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]      = note: which requires `im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>: Send`
[INFO] [stdout]      = note: which requires `sized_chunks::sized_chunk::Chunk<Option<im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>>, typenum::uint::UInt<typenum::uint::UInt<typenum::uint::UInt<_, B0>, B0>, B1>>: Send`
[INFO] [stdout]      = note: and so on...
[INFO] [stdout]      = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]      = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`cli`)
[INFO] [stdout]      = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]      = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]      = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u64>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]   --> src/sys.rs:76:14
[INFO] [stdout]    |
[INFO] [stdout] 76 |             .fetch_update(Ordering::SeqCst, Ordering::SeqCst, |t| Some(t.saturating_add(ms)));
[INFO] [stdout]    |              ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 76 -             .fetch_update(Ordering::SeqCst, Ordering::SeqCst, |t| Some(t.saturating_add(ms)));
[INFO] [stdout] 76 +             .try_update(Ordering::SeqCst, Ordering::SeqCst, |t| Some(t.saturating_add(ms)));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `{closure@examples/maint_bench.rs:196:36: 196:43}: Send`
[INFO] [stdout]    --> examples/maint_bench.rs:196:17
[INFO] [stdout]     |
[INFO] [stdout] 196 | /                 std::thread::spawn(move || {
[INFO] [stdout] 197 | |                     barrier.wait();
[INFO] [stdout] 198 | |                     let mut lat = Vec::with_capacity(per);
[INFO] [stdout] 199 | |                     for i in 0..per as u64 {
[INFO] [stdout] ...   |
[INFO] [stdout] 205 | |                     lat
[INFO] [stdout] 206 | |                 })
[INFO] [stdout]     | |__________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `(Arc<Barrier>, usize, usize, Database): Send`
[INFO] [stdout]     = note: which requires `Database: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::db::DbInner>: Send`
[INFO] [stdout]     = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]     = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]     = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]     = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>: Send`
[INFO] [stdout]     = note: which requires `sized_chunks::sized_chunk::Chunk<Option<im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>>, typenum::uint::UInt<typenum::uint::UInt<typenum::uint::UInt<_, B0>, B0>, B1>>: Send`
[INFO] [stdout]     = note: and so on...
[INFO] [stdout]     = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]     = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`maint_bench`)
[INFO] [stdout]     = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]     = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]     = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `pyo3::impl_::pyclass::SendablePyClass<database::Database>: pyo3::impl_::pyclass::PyClassThreadChecker<database::Database>`
[INFO] [stdout]    --> quiver-py/src/database.rs:308:1
[INFO] [stdout]     |
[INFO] [stdout] 308 | #[pyclass(frozen, module = "quiver", name = "Database")]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `database::Database: Send`
[INFO] [stdout]     = note: which requires `Handle: Send`
[INFO] [stdout]     = note: which requires `quiver::Database: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::db::DbInner>: Send`
[INFO] [stdout]     = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]     = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]     = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]     = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>: Send`
[INFO] [stdout]     = note: and so on...
[INFO] [stdout]     = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]     = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`_quiver`)
[INFO] [stdout]     = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]     = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]     = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout]     = note: this warning originates in the attribute macro `pyclass` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `Arc<{closure@tests/online_compaction.rs:31:14: 31:32}>: CoerceUnsized<Arc<dyn for<'a> Fn(&'a str) + Send + Sync>>`
[INFO] [stdout]   --> tests/online_compaction.rs:31:5
[INFO] [stdout]    |
[INFO] [stdout] 31 | /     Arc::new(move |_name: &str| {
[INFO] [stdout] 32 | |         if let Some(f) = f.lock().unwrap().take() {
[INFO] [stdout] 33 | |             if let Some(db) = weak.upgrade() {
[INFO] [stdout] 34 | |                 f(&db);
[INFO] [stdout] ...  |
[INFO] [stdout] 37 | |     })
[INFO] [stdout]    | |______^
[INFO] [stdout]    |
[INFO] [stdout]    = note: which requires `{closure@tests/online_compaction.rs:31:14: 31:32}: Unsize<dyn for<'a> Fn(&'a str) + Send + Sync>`
[INFO] [stdout]    = note: which requires `{closure@tests/online_compaction.rs:31:14: 31:32}: Send`
[INFO] [stdout]    = note: which requires `(std::sync::Mutex<Option<impl FnOnce(&Database) + Send + 'static>>, WeakDatabase): Send`
[INFO] [stdout]    = note: which requires `WeakDatabase: Send`
[INFO] [stdout]    = note: which requires `std::sync::Weak<quiver::db::DbInner>: Send`
[INFO] [stdout]    = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]    = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]    = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]    = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]    = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]    = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]    = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]    = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]    = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]    = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]    = note: and so on...
[INFO] [stdout]    = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]    = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`online_compaction`)
[INFO] [stdout]    = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]    = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]    = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `Result<Out, BindError>: Send`
[INFO] [stdout]    --> quiver-node/src/job.rs:100:19
[INFO] [stdout]     |
[INFO] [stdout] 100 |     type Output = BindResult<Out>;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `Out: Send`
[INFO] [stdout]     = note: which requires `JsDatabase: Send`
[INFO] [stdout]     = note: which requires `Database: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::db::DbInner>: Send`
[INFO] [stdout]     = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]     = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]     = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]     = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>: Send`
[INFO] [stdout]     = note: and so on...
[INFO] [stdout]     = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]     = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`quiver_node`)
[INFO] [stdout]     = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]     = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]     = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `pyo3::impl_::pyclass::SendablePyClass<database::Database>: pyo3::impl_::pyclass::PyClassThreadChecker<database::Database>`
[INFO] [stdout]    --> quiver-py/src/database.rs:308:1
[INFO] [stdout]     |
[INFO] [stdout] 308 | #[pyclass(frozen, module = "quiver", name = "Database")]
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `database::Database: Send`
[INFO] [stdout]     = note: which requires `Handle: Send`
[INFO] [stdout]     = note: which requires `quiver::Database: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::db::DbInner>: Send`
[INFO] [stdout]     = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]     = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]     = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]     = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>: Send`
[INFO] [stdout]     = note: and so on...
[INFO] [stdout]     = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]     = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`_quiver`)
[INFO] [stdout]     = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]     = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]     = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout]     = note: this warning originates in the attribute macro `pyclass` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `Result<Out, BindError>: Send`
[INFO] [stdout]    --> quiver-node/src/job.rs:100:19
[INFO] [stdout]     |
[INFO] [stdout] 100 |     type Output = BindResult<Out>;
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `Out: Send`
[INFO] [stdout]     = note: which requires `JsDatabase: Send`
[INFO] [stdout]     = note: which requires `Database: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::db::DbInner>: Send`
[INFO] [stdout]     = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]     = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]     = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]     = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>: Send`
[INFO] [stdout]     = note: and so on...
[INFO] [stdout]     = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]     = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`quiver_node`)
[INFO] [stdout]     = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]     = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]     = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `impl Future<Output = Result<(usize, usize), quiver_tokio::quiver::Error>>: Send`
[INFO] [stdout]    --> quiver-tokio/examples/axum_like.rs:126:22
[INFO] [stdout]     |
[INFO] [stdout] 126 |     let background = tokio::spawn(notifier(feed, state.db.clone()));
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `{async fn body of notifier()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@quiver-tokio/examples/axum_like.rs:95:101: 112:2}: Send`
[INFO] [stdout]     = note: which requires `AsyncSnapshot: Send`
[INFO] [stdout]     = note: which requires `Snapshot: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]     = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]     = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>: Send`
[INFO] [stdout]     = note: which requires `sized_chunks::sized_chunk::Chunk<Option<im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>>, typenum::uint::UInt<typenum::uint::UInt<typenum::uint::UInt<_, B0>, B0>, B1>>: Send`
[INFO] [stdout]     = note: which requires `MaybeUninit<sized_chunks::types::SizeOdd<Option<im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>>, sized_chunks::types::SizeEven<Option<_>, _>>>: Send`
[INFO] [stdout]     = note: which requires `ManuallyDrop<sized_chunks::types::SizeOdd<Option<im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>>, sized_chunks::types::SizeEven<Option<_>, _>>>: Send`
[INFO] [stdout]     = note: which requires `sized_chunks::types::SizeOdd<Option<im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>>, sized_chunks::types::SizeEven<Option<im::fakepool::Arc<Node<_>>>, _>>: Send`
[INFO] [stdout]     = note: which requires `Option<im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>>: Send`
[INFO] [stdout]     = note: and so on...
[INFO] [stdout]     = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]     = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`axum_like`)
[INFO] [stdout]     = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]     = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]     = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `{async block@quiver-tokio/tests/feed.rs:36:35: 36:45}: Send`
[INFO] [stdout]   --> quiver-tokio/tests/feed.rs:36:22
[INFO] [stdout]    |
[INFO] [stdout] 36 |           writers.push(tokio::spawn(async move {
[INFO] [stdout]    |  ______________________^
[INFO] [stdout] 37 | |             for i in 0..PER {
[INFO] [stdout] 38 | |                 db.put("c", format!("w{w}-{i:03}"), Doc::new().meta("i", i as i64)).await.unwrap();
[INFO] [stdout] ...  |
[INFO] [stdout] 42 | |         }));
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: which requires `(AsyncDatabase, usize): Send`
[INFO] [stdout]    = note: which requires `AsyncDatabase: Send`
[INFO] [stdout]    = note: which requires `Database: Send`
[INFO] [stdout]    = note: which requires `Arc<quiver::db::DbInner>: Send`
[INFO] [stdout]    = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]    = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]    = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]    = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]    = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]    = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]    = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]    = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]    = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]    = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]    = note: which requires `im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>: Send`
[INFO] [stdout]    = note: and so on...
[INFO] [stdout]    = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]    = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`feed`)
[INFO] [stdout]    = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]    = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]    = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `impl Future<Output = Result<i64, quiver_tokio::quiver::Error>> + Send + 'static well-formed`
[INFO] [stdout]    --> quiver-tokio/tests/async.rs:377:17
[INFO] [stdout]     |
[INFO] [stdout] 377 |       let total = db
[INFO] [stdout]     |  _________________^
[INFO] [stdout] 378 | |         .transaction(move |tx| {
[INFO] [stdout] 379 | |             tx.patch_key("acc", "alice", &Patch::new().incr("balance", -30i64))?;
[INFO] [stdout] 380 | |             tx.patch_key("acc", "bob", &Patch::new().incr("balance", 30i64))?;
[INFO] [stdout] ...   |
[INFO] [stdout] 389 | |         })
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `{closure@quiver-tokio/tests/async.rs:378:22: 378:31}: Send`
[INFO] [stdout]     = note: which requires `(Database,): Send`
[INFO] [stdout]     = note: which requires `Database: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::db::DbInner>: Send`
[INFO] [stdout]     = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]     = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]     = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]     = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>: Send`
[INFO] [stdout]     = note: and so on...
[INFO] [stdout]     = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]     = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`async`)
[INFO] [stdout]     = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]     = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]     = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `{closure@tests/snapshot.rs:52:32: 52:39}: Send`
[INFO] [stdout]   --> tests/snapshot.rs:52:13
[INFO] [stdout]    |
[INFO] [stdout] 52 | /             std::thread::spawn(move || {
[INFO] [stdout] 53 | |                 let mut checks = 0u64;
[INFO] [stdout] 54 | |                 while !stop.load(Ordering::Relaxed) || checks < 100 {
[INFO] [stdout] 55 | |                     let s = db.snapshot();
[INFO] [stdout] ...  |
[INFO] [stdout] 66 | |                 checks
[INFO] [stdout] 67 | |             })
[INFO] [stdout]    | |______________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: which requires `(Arc<Atomic<bool>>, Database): Send`
[INFO] [stdout]    = note: which requires `Database: Send`
[INFO] [stdout]    = note: which requires `Arc<quiver::db::DbInner>: Send`
[INFO] [stdout]    = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]    = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]    = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]    = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]    = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]    = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]    = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]    = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]    = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]    = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]    = note: which requires `im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>: Send`
[INFO] [stdout]    = note: which requires `sized_chunks::sized_chunk::Chunk<Option<im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>>, typenum::uint::UInt<typenum::uint::UInt<typenum::uint::UInt<_, B0>, B0>, B1>>: Send`
[INFO] [stdout]    = note: and so on...
[INFO] [stdout]    = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]    = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`snapshot`)
[INFO] [stdout]    = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]    = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]    = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `{closure@examples/storage_bench.rs:1159:28: 1159:35}: Send`
[INFO] [stdout]     --> examples/storage_bench.rs:1159:9
[INFO] [stdout]      |
[INFO] [stdout] 1159 | /         std::thread::spawn(move || {
[INFO] [stdout] 1160 | |             let mut worst = 0f64;
[INFO] [stdout] 1161 | |             while !stop.load(Ordering::Relaxed) {
[INFO] [stdout] 1162 | |                 let t0 = Instant::now();
[INFO] [stdout] ...    |
[INFO] [stdout] 1167 | |             worst
[INFO] [stdout] 1168 | |         })
[INFO] [stdout]      | |__________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: which requires `(Arc<Atomic<bool>>, quiver::Database, Arc<Atomic<usize>>): Send`
[INFO] [stdout]      = note: which requires `quiver::Database: Send`
[INFO] [stdout]      = note: which requires `Arc<quiver::db::DbInner>: Send`
[INFO] [stdout]      = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]      = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]      = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]      = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]      = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]      = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]      = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]      = note: which requires `OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]      = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]      = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]      = note: which requires `im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>: Send`
[INFO] [stdout]      = note: which requires `sized_chunks::sized_chunk::Chunk<Option<im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>>, typenum::uint::UInt<typenum::uint::UInt<typenum::uint::UInt<_, B0>, B0>, B1>>: Send`
[INFO] [stdout]      = note: and so on...
[INFO] [stdout]      = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]      = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`storage_bench`)
[INFO] [stdout]      = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]      = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]      = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `{closure@tests/binding_support.rs:176:32: 176:39}: Send`
[INFO] [stdout]    --> tests/binding_support.rs:176:13
[INFO] [stdout]     |
[INFO] [stdout] 176 | /             std::thread::spawn(move || {
[INFO] [stdout] 177 | |                 for i in 0..10 {
[INFO] [stdout] 178 | |                     db.alter_collection_with("c", |o| {
[INFO] [stdout] 179 | |                         o.fields.insert(format!("f{t}_{i}"), FieldSpec::default());
[INFO] [stdout] ...   |
[INFO] [stdout] 185 | |             })
[INFO] [stdout]     | |______________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `(Database, i32): Send`
[INFO] [stdout]     = note: which requires `Database: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::db::DbInner>: Send`
[INFO] [stdout]     = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]     = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]     = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]     = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>: Send`
[INFO] [stdout]     = note: which requires `sized_chunks::sized_chunk::Chunk<Option<im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>>, typenum::uint::UInt<typenum::uint::UInt<typenum::uint::UInt<_, B0>, B0>, B1>>: Send`
[INFO] [stdout]     = note: and so on...
[INFO] [stdout]     = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]     = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`binding_support`)
[INFO] [stdout]     = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]     = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]     = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `{closure@tests/record_api.rs:346:32: 346:39}: Send`
[INFO] [stdout]    --> tests/record_api.rs:346:13
[INFO] [stdout]     |
[INFO] [stdout] 346 |       let t = std::thread::spawn(move || {
[INFO] [stdout]     |  _____________^
[INFO] [stdout] 347 | |         let mut i = 0u64;
[INFO] [stdout] 348 | |         let vs = random_vectors(64, 8, 5);
[INFO] [stdout] 349 | |         while !stop2.load(std::sync::atomic::Ordering::Relaxed) && i < 2000 {
[INFO] [stdout] ...   |
[INFO] [stdout] 353 | |         i
[INFO] [stdout] 354 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `(Arc<Atomic<bool>>, Database): Send`
[INFO] [stdout]     = note: which requires `Database: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::db::DbInner>: Send`
[INFO] [stdout]     = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]     = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]     = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]     = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>: Send`
[INFO] [stdout]     = note: which requires `sized_chunks::sized_chunk::Chunk<Option<im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>>, typenum::uint::UInt<typenum::uint::UInt<typenum::uint::UInt<_, B0>, B0>, B1>>: Send`
[INFO] [stdout]     = note: and so on...
[INFO] [stdout]     = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]     = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`record_api`)
[INFO] [stdout]     = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]     = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]     = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `{closure@tests/wal_segments.rs:59:28: 59:35}: Send`
[INFO] [stdout]   --> tests/wal_segments.rs:59:9
[INFO] [stdout]    |
[INFO] [stdout] 59 |         std::thread::spawn(move || db.checkpoint())
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: which requires `(Database,): Send`
[INFO] [stdout]    = note: which requires `Database: Send`
[INFO] [stdout]    = note: which requires `Arc<quiver::db::DbInner>: Send`
[INFO] [stdout]    = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]    = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]    = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]    = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]    = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]    = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]    = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]    = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]    = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]    = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]    = note: which requires `im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>: Send`
[INFO] [stdout]    = note: which requires `sized_chunks::sized_chunk::Chunk<Option<im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>>, typenum::uint::UInt<typenum::uint::UInt<typenum::uint::UInt<_, B0>, B0>, B1>>: Send`
[INFO] [stdout]    = note: and so on...
[INFO] [stdout]    = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]    = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`wal_segments`)
[INFO] [stdout]    = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]    = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]    = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `{closure@examples/sessions.rs:297:34: 297:61}: Send`
[INFO] [stdout]    --> examples/sessions.rs:297:28
[INFO] [stdout]     |
[INFO] [stdout] 297 |             workers.push(s.spawn(|| -> quiver::Result<usize> {
[INFO] [stdout]     |                            ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `(&i32, &Database, &{closure@examples/sessions.rs:197:15: 197:17}): Send`
[INFO] [stdout]     = note: which requires `&Database: Send`
[INFO] [stdout]     = note: which requires `Database: Sync`
[INFO] [stdout]     = note: which requires `Arc<quiver::db::DbInner>: Sync`
[INFO] [stdout]     = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]     = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]     = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]     = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>: Send`
[INFO] [stdout]     = note: and so on...
[INFO] [stdout]     = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]     = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`sessions`)
[INFO] [stdout]     = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]     = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]     = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: overflow evaluating the requirement `{closure@tests/background_maintenance.rs:198:24: 198:31}: Send`
[INFO] [stdout]    --> tests/background_maintenance.rs:198:5
[INFO] [stdout]     |
[INFO] [stdout] 198 |     std::thread::spawn(move || done_tx.send(closer.close()).unwrap());
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `(std::sync::mpsc::Sender<Result<(), quiver::Error>>, Database): Send`
[INFO] [stdout]     = note: which requires `Database: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::db::DbInner>: Send`
[INFO] [stdout]     = note: which requires `quiver::db::DbInner: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::SnapFeed: Send`
[INFO] [stdout]     = note: which requires `quiver::rcu::Rcu<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `arc_swap::ArcSwapAny<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `PhantomData<Arc<quiver::snapshot::DbRoot>>: Send`
[INFO] [stdout]     = note: which requires `Arc<quiver::snapshot::DbRoot>: Send`
[INFO] [stdout]     = note: which requires `quiver::snapshot::DbRoot: Send`
[INFO] [stdout]     = note: which requires `im::ord::map::OrdMap<Arc<str>, quiver::snapshot::RootEntry>: Send`
[INFO] [stdout]     = note: which requires `im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>: Send`
[INFO] [stdout]     = note: which requires `im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>: Send`
[INFO] [stdout]     = note: which requires `sized_chunks::sized_chunk::Chunk<Option<im::fakepool::Arc<im::nodes::btree::Node<(Arc<str>, quiver::snapshot::RootEntry)>>>, typenum::uint::UInt<typenum::uint::UInt<typenum::uint::UInt<_, B0>, B0>, B1>>: Send`
[INFO] [stdout]     = note: and so on...
[INFO] [stdout]     = help: consider adding a manual `impl` of auto traits like `Send` for intermediate types, if auto traits are involved
[INFO] [stdout]     = help: or consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`background_maintenance`)
[INFO] [stdout]     = note: this lint is attached to the whole crate and can't be disabled on a per-function basis
[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]     = note: for more information, see issue #159228 <https://github.com/rust-lang/rust/issues/159228>
[INFO] [stdout]     = note: `#[warn(recursion_depth_exceeding_limit)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 06s
[INFO] running `Command { std: "docker" "inspect" "c1c954d4310425d5f5c47cfdf31e4f25f65fe62dbf7a5e2e145f959b393bdf26", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c1c954d4310425d5f5c47cfdf31e4f25f65fe62dbf7a5e2e145f959b393bdf26", kill_on_drop: false }`
[INFO] [stdout] c1c954d4310425d5f5c47cfdf31e4f25f65fe62dbf7a5e2e145f959b393bdf26
