[INFO] fetching crate aedb 0.3.1...
[INFO] checking aedb-0.3.1 against 4d7c0cd298ace72490220301fa543d63a154f8ce for pr-164789
[INFO] extracting crate aedb 0.3.1 into /workspace/builds/worker-7-tc2/source
[INFO] started tweaking crates.io crate aedb 0.3.1
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate aedb 0.3.1
[INFO] tweaked toml for crates.io crate aedb 0.3.1 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate aedb 0.3.1 on toolchain 4d7c0cd298ace72490220301fa543d63a154f8ce
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d7c0cd298ace72490220301fa543d63a154f8ce" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate aedb 0.3.1 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" "+4d7c0cd298ace72490220301fa543d63a154f8ce" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:163:12
[INFO] [stderr]     |
[INFO] [stderr] 163 | homepage = "https://github.com/empyrealapp/aedb"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 168 | repository = "https://github.com/empyrealapp/aedb"
[INFO] [stderr]     |              -------------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `aedb` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/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:c0af3998e971868164375a7dfb646c9933ddd1a3bdb00fa2041266763dc1eeab" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 902c8cfca0a82c73cab5c309dcafb4c61328d10230ccdbea084735e9116e8007
[INFO] running `Command { std: "docker" "start" "902c8cfca0a82c73cab5c309dcafb4c61328d10230ccdbea084735e9116e8007", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "902c8cfca0a82c73cab5c309dcafb4c61328d10230ccdbea084735e9116e8007", 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" "902c8cfca0a82c73cab5c309dcafb4c61328d10230ccdbea084735e9116e8007" "/opt/rustwide/cargo-home/bin/cargo" "+4d7c0cd298ace72490220301fa543d63a154f8ce" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "902c8cfca0a82c73cab5c309dcafb4c61328d10230ccdbea084735e9116e8007", 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" "902c8cfca0a82c73cab5c309dcafb4c61328d10230ccdbea084735e9116e8007" "/opt/rustwide/cargo-home/bin/cargo" "+4d7c0cd298ace72490220301fa543d63a154f8ce" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:163:12
[INFO] [stderr]     |
[INFO] [stderr] 163 | homepage = "https://github.com/empyrealapp/aedb"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 168 | repository = "https://github.com/empyrealapp/aedb"
[INFO] [stderr]     |              -------------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `aedb` (manifest) generated 1 warning
[INFO] [stderr]    Compiling libc v0.2.182
[INFO] [stderr]     Checking cfg-if v1.0.4
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling quote v1.0.44
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling zerocopy v0.8.39
[INFO] [stderr]    Compiling find-msvc-tools v0.1.9
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling getrandom v0.4.1
[INFO] [stderr]     Checking memchr v2.8.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]     Checking itoa v1.0.17
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking subtle v2.6.1
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]     Checking cpufeatures v0.2.17
[INFO] [stderr]    Compiling pkg-config v0.3.32
[INFO] [stderr]    Compiling rustix v1.1.3
[INFO] [stderr]    Compiling syn v2.0.116
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]     Checking bitflags v2.11.0
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling crunchy v0.2.4
[INFO] [stderr]     Checking static_assertions v1.1.0
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]    Compiling semver v1.0.27
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling cc v1.2.56
[INFO] [stderr]    Compiling object v0.37.3
[INFO] [stderr]     Checking byteorder v1.5.0
[INFO] [stderr]     Checking opaque-debug v0.3.1
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking uuid v1.21.0
[INFO] [stderr]     Checking inout v0.1.4
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking memmap2 v0.9.11
[INFO] [stderr]     Checking cipher v0.4.4
[INFO] [stderr]     Checking universal-hash v0.5.1
[INFO] [stderr]     Checking polyval v0.6.2
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]    Compiling crc32c v0.6.8
[INFO] [stderr]     Checking bitmaps v2.1.0
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling im v15.1.0
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking regex-syntax v0.8.9
[INFO] [stderr]     Checking gimli v0.32.3
[INFO] [stderr]     Checking hex v0.4.3
[INFO] [stderr]    Compiling cpp_demangle v0.4.5
[INFO] [stderr]     Checking tempfile v3.25.0
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]     Checking rustc-hex v2.1.0
[INFO] [stderr]     Checking rustc-demangle v0.1.27
[INFO] [stderr]     Checking uint v0.9.5
[INFO] [stderr]     Checking castaway v0.2.4
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]    Compiling blake3 v1.8.3
[INFO] [stderr]     Checking sized-chunks v0.6.5
[INFO] [stderr]    Compiling findshlibs v0.10.2
[INFO] [stderr]     Checking ghash v0.5.1
[INFO] [stderr]     Checking aes v0.8.4
[INFO] [stderr]     Checking ctr v0.9.2
[INFO] [stderr]     Checking debugid v0.8.0
[INFO] [stderr]     Checking aead v0.5.2
[INFO] [stderr]     Checking rand_xoshiro v0.6.0
[INFO] [stderr]     Checking socket2 v0.6.2
[INFO] [stderr]     Checking is-terminal v0.4.17
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking rmp v0.8.15
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]     Checking crossbeam-queue v0.3.12
[INFO] [stderr]     Checking tracing-core v0.1.36
[INFO] [stderr]    Compiling symbolic-demangle v12.18.3
[INFO] [stderr]     Checking stable_deref_trait v1.2.1
[INFO] [stderr]     Checking clap_lex v1.0.0
[INFO] [stderr]     Checking bytes v1.11.1
[INFO] [stderr]     Checking arrayref v0.3.9
[INFO] [stderr]     Checking plotters-backend v0.3.7
[INFO] [stderr]     Checking constant_time_eq v0.4.2
[INFO] [stderr]     Checking bytemuck v1.25.0
[INFO] [stderr]     Checking ciborium-io v0.2.2
[INFO] [stderr]     Checking equivalent v1.0.2
[INFO] [stderr]     Checking hashbrown v0.16.1
[INFO] [stderr]     Checking plotters-svg v0.3.7
[INFO] [stderr]     Checking rgb v0.8.53
[INFO] [stderr]     Checking crossbeam v0.8.4
[INFO] [stderr]     Checking clap_builder v4.5.58
[INFO] [stderr]     Checking symbolic-common v12.18.3
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking indexmap v2.13.0
[INFO] [stderr]     Checking aes-gcm v0.10.3
[INFO] [stderr]     Checking addr2line v0.25.1
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking sha2 v0.10.9
[INFO] [stderr]     Checking hmac v0.12.1
[INFO] [stderr]     Checking wait-timeout v0.2.1
[INFO] [stderr]    Compiling zerocopy-derive v0.8.39
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling zeroize_derive v1.4.3
[INFO] [stderr]    Compiling equator-macro v0.4.2
[INFO] [stderr]     Checking backtrace v0.3.76
[INFO] [stderr]     Checking zeroize v1.8.2
[INFO] [stderr]     Checking fs2 v0.4.3
[INFO] [stderr]     Checking num-format v0.4.4
[INFO] [stderr]     Checking quick-xml v0.26.0
[INFO] [stderr]     Checking serde_bytes v0.11.19
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking equator v0.4.2
[INFO] [stderr]     Checking cast v0.3.0
[INFO] [stderr]     Checking log v0.4.29
[INFO] [stderr]    Compiling pprof v0.15.0
[INFO] [stderr]     Checking quick-error v1.2.3
[INFO] [stderr]     Checking same-file v1.0.6
[INFO] [stderr]     Checking str_stack v0.1.0
[INFO] [stderr]     Checking bit-vec v0.8.0
[INFO] [stderr]     Checking rusty-fork v0.3.1
[INFO] [stderr]     Checking criterion-plot v0.5.0
[INFO] [stderr]     Checking walkdir v2.5.0
[INFO] [stderr]     Checking aligned-vec v0.6.4
[INFO] [stderr]     Checking nix v0.26.4
[INFO] [stderr]     Checking bit-set v0.8.0
[INFO] [stderr]     Checking clap v4.5.58
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]     Checking rayon v1.11.0
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]     Checking rand_xorshift v0.4.0
[INFO] [stderr]     Checking spin v0.10.0
[INFO] [stderr]     Checking rustc-hash v1.1.0
[INFO] [stderr]     Checking unarray v0.1.4
[INFO] [stderr]     Checking oorandom v11.1.5
[INFO] [stderr]     Checking mintex v0.1.4
[INFO] [stderr]     Checking anes v0.1.6
[INFO] [stderr]     Checking thousands v0.2.0
[INFO] [stderr]     Checking smallvec v1.15.1
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking tokio v1.49.0
[INFO] [stderr]     Checking rmp-serde v1.3.1
[INFO] [stderr]     Checking compact_str v0.8.1
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking dhat v0.3.3
[INFO] [stderr]     Checking zstd v0.13.3
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking inferno v0.11.21
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking proptest v1.10.0
[INFO] [stderr]     Checking rand v0.8.6
[INFO] [stderr]     Checking criterion v0.5.1
[INFO] [stderr]     Checking fixed-hash v0.8.0
[INFO] [stderr]     Checking primitive-types v0.12.2
[INFO] [stderr]     Checking aedb v0.3.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: overflow evaluating the requirement `{closure@src/api/backup_restore.rs:74:37: 74:81}: Send`
[INFO] [stdout]    --> src/api/backup_restore.rs:74:9
[INFO] [stdout]     |
[INFO] [stdout]  74 | /         tokio::task::spawn_blocking(move || -> Result<BackupManifest, AedbError> {
[INFO] [stdout]  75 | |             let checkpoint = write_checkpoint_with_key(
[INFO] [stdout]  76 | |                 keyspace.as_ref(),
[INFO] [stdout]  77 | |                 catalog.as_ref(),
[INFO] [stdout] ...   |
[INFO] [stdout] 136 | |             Ok(manifest)
[INFO] [stdout] 137 | |         })
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `(Arc<KeyspaceSnapshot>, Arc<Catalog>, u64, PathBuf, std::option::Option<[u8; 32]>, std::option::Option<String>, _, i32, _, _): Send`
[INFO] [stdout]     = note: which requires `Arc<KeyspaceSnapshot>: Send`
[INFO] [stdout]     = note: which requires `KeyspaceSnapshot: Send`
[INFO] [stdout]     = note: which requires `Arc<im::HashMap<NamespaceId, Namespace>>: Send`
[INFO] [stdout]     = note: which requires `im::HashMap<NamespaceId, Namespace>: Send`
[INFO] [stdout]     = note: which requires `im::fakepool::Arc<im::nodes::hamt::Node<(NamespaceId, Namespace)>>: Send`
[INFO] [stdout]     = note: which requires `Arc<im::nodes::hamt::Node<(NamespaceId, Namespace)>>: Send`
[INFO] [stdout]     = note: which requires `im::nodes::hamt::Node<(NamespaceId, Namespace)>: Send`
[INFO] [stdout]     = note: which requires `sized_chunks::sparse_chunk::SparseChunk<im::nodes::hamt::Entry<(NamespaceId, Namespace)>, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>>: Send`
[INFO] [stdout]     = note: which requires `MaybeUninit<sized_chunks::types::SizeEven<im::nodes::hamt::Entry<(NamespaceId, Namespace)>, sized_chunks::types::SizeEven<im::nodes::hamt::Entry<(NamespaceId, Namespace)>, _>>>: Send`
[INFO] [stdout]     = note: which requires `ManuallyDrop<sized_chunks::types::SizeEven<im::nodes::hamt::Entry<(NamespaceId, Namespace)>, sized_chunks::types::SizeEven<im::nodes::hamt::Entry<(NamespaceId, Namespace)>, _>>>: Send`
[INFO] [stdout]     = note: which requires `sized_chunks::types::SizeEven<im::nodes::hamt::Entry<(NamespaceId, Namespace)>, sized_chunks::types::SizeEven<im::nodes::hamt::Entry<(NamespaceId, Namespace)>, sized_chunks::types::SizeEven<Entry<_>, _>>>: Send`
[INFO] [stdout]     = note: which requires `PhantomData<im::nodes::hamt::Entry<(NamespaceId, Namespace)>>: Send`
[INFO] [stdout]     = note: which requires `im::nodes::hamt::Entry<(NamespaceId, Namespace)>: Send`
[INFO] [stdout]     = note: which requires `im::fakepool::Arc<im::nodes::hamt::Node<(NamespaceId, Namespace)>>: 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 (`aedb`)
[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@src/lib.rs:2593:37: 2593:69}: Send`
[INFO] [stdout]     --> src/lib.rs:2593:9
[INFO] [stdout]      |
[INFO] [stdout] 2593 | /         tokio::task::spawn_blocking(move || -> Result<(), AedbError> {
[INFO] [stdout] 2594 | |             let checkpoint = write_checkpoint_with_key(
[INFO] [stdout] 2595 | |                 snapshot.as_ref(),
[INFO] [stdout] 2596 | |                 catalog.as_ref(),
[INFO] [stdout] ...    |
[INFO] [stdout] 2641 | |             Ok(())
[INFO] [stdout] 2642 | |         })
[INFO] [stdout]      | |__________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: which requires `(Arc<KeyspaceSnapshot>, Arc<Catalog>, u64, PathBuf, std::option::Option<[u8; 32]>, std::option::Option<String>, _, i32, _, usize): Send`
[INFO] [stdout]      = note: which requires `Arc<KeyspaceSnapshot>: Send`
[INFO] [stdout]      = note: which requires `KeyspaceSnapshot: Send`
[INFO] [stdout]      = note: which requires `Arc<im::HashMap<NamespaceId, Namespace>>: Send`
[INFO] [stdout]      = note: which requires `im::HashMap<NamespaceId, Namespace>: Send`
[INFO] [stdout]      = note: which requires `im::fakepool::Arc<im::nodes::hamt::Node<(NamespaceId, Namespace)>>: Send`
[INFO] [stdout]      = note: which requires `Arc<im::nodes::hamt::Node<(NamespaceId, Namespace)>>: Send`
[INFO] [stdout]      = note: which requires `im::nodes::hamt::Node<(NamespaceId, Namespace)>: Send`
[INFO] [stdout]      = note: which requires `sized_chunks::sparse_chunk::SparseChunk<im::nodes::hamt::Entry<(NamespaceId, Namespace)>, UInt<UInt<UInt<UInt<UInt<UInt<UTerm, B1>, B0>, B0>, B0>, B0>, B0>>: Send`
[INFO] [stdout]      = note: which requires `MaybeUninit<sized_chunks::types::SizeEven<im::nodes::hamt::Entry<(NamespaceId, Namespace)>, sized_chunks::types::SizeEven<im::nodes::hamt::Entry<(NamespaceId, Namespace)>, _>>>: Send`
[INFO] [stdout]      = note: which requires `ManuallyDrop<sized_chunks::types::SizeEven<im::nodes::hamt::Entry<(NamespaceId, Namespace)>, sized_chunks::types::SizeEven<im::nodes::hamt::Entry<(NamespaceId, Namespace)>, _>>>: Send`
[INFO] [stdout]      = note: which requires `sized_chunks::types::SizeEven<im::nodes::hamt::Entry<(NamespaceId, Namespace)>, sized_chunks::types::SizeEven<im::nodes::hamt::Entry<(NamespaceId, Namespace)>, sized_chunks::types::SizeEven<Entry<_>, _>>>: Send`
[INFO] [stdout]      = note: which requires `PhantomData<im::nodes::hamt::Entry<(NamespaceId, Namespace)>>: Send`
[INFO] [stdout]      = note: which requires `im::nodes::hamt::Entry<(NamespaceId, Namespace)>: Send`
[INFO] [stdout]      = note: which requires `im::fakepool::Arc<im::nodes::hamt::Node<(NamespaceId, Namespace)>>: 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 (`aedb`)
[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@tests/casino_betting_races.rs:201:21: 201:31}: Send`
[INFO] [stdout]    --> tests/casino_betting_races.rs:201:15
[INFO] [stdout]     |
[INFO] [stdout] 201 |         tasks.spawn(async move {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `{coroutine witness@tests/casino_betting_races.rs:201:21: 201:31}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::commit_envelope()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::commit_envelope::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::commit_envelope_with_size_hint()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::commit_envelope_with_size_hint::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = ()>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::dispatch_lifecycle_events_for_commit()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::dispatch_lifecycle_events_for_commit::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<Vec<LifecycleEvent>, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::read_lifecycle_events_for_commit()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::read_lifecycle_events_for_commit::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = (KeyspaceSnapshot, Catalog, u64)>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of CommitExecutor::snapshot_state()}: 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 (`casino_betting_races`)
[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@tests/order_book_simulation.rs:226:33: 226:43}: Send`
[INFO] [stdout]    --> tests/order_book_simulation.rs:226:20
[INFO] [stdout]     |
[INFO] [stdout] 226 |           tasks.push(tokio::spawn(async move {
[INFO] [stdout]     |  ____________________^
[INFO] [stdout] 227 | |             let owner = format!("trader_{t}");
[INFO] [stdout] 228 | |             let mut nonces: BTreeMap<String, u64> = BTreeMap::new();
[INFO] [stdout] 229 | |             let mut rng = StdRng::seed_from_u64(42 + t as u64);
[INFO] [stdout] ...   |
[INFO] [stdout] 341 | |             })
[INFO] [stdout] 342 | |         }));
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `{coroutine witness@tests/order_book_simulation.rs:226:33: 226:43}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of aedb::api::order_book_api::<impl AedbInstance>::order_book_cancel_by_client_id()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@aedb::api::order_book_api::<impl AedbInstance>::order_book_cancel_by_client_id::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::commit_prevalidated_internal()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::commit_prevalidated_internal::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of CommitExecutor::submit_prevalidated()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@CommitExecutor::submit_prevalidated::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of CommitExecutor::submit_envelope_with_mode_size_hint()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@CommitExecutor::submit_envelope_with_mode_size_hint::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `&CommitExecutor: Send`
[INFO] [stdout]     = note: which requires `CommitExecutor: Sync`
[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 (`order_book_simulation`)
[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@tests/backup_restore.rs:172:31: 172:41}: Send`
[INFO] [stdout]    --> tests/backup_restore.rs:172:18
[INFO] [stdout]     |
[INFO] [stdout] 172 |       let writer = tokio::spawn(async move {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 173 | |         let mut i = 0u64;
[INFO] [stdout] 174 | |         while !writer_stop.load(Ordering::Relaxed) {
[INFO] [stdout] 175 | |             let key = format!("hot:{i}").into_bytes();
[INFO] [stdout] ...   |
[INFO] [stdout] 191 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `{coroutine witness@tests/backup_restore.rs:172:31: 172:41}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::commit()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::commit::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = ()>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::dispatch_lifecycle_events_for_commit()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::dispatch_lifecycle_events_for_commit::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<Vec<LifecycleEvent>, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::read_lifecycle_events_for_commit()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::read_lifecycle_events_for_commit::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = (KeyspaceSnapshot, Catalog, u64)>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of CommitExecutor::snapshot_state()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@CommitExecutor::snapshot_state::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = tokio::sync::MutexGuard<'_, aedb::commit::executor::ExecutorState>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of tokio::sync::Mutex<aedb::commit::executor::ExecutorState>::lock()}: 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 (`backup_restore`)
[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@tests/security_boundaries.rs:379:21: 379:31}: Send`
[INFO] [stdout]    --> tests/security_boundaries.rs:379:15
[INFO] [stdout]     |
[INFO] [stdout] 379 |         tasks.spawn(async move {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `{coroutine witness@tests/security_boundaries.rs:379:21: 379:31}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of aedb::api::kv_api::<impl AedbInstance>::table_inc_u256()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@aedb::api::kv_api::<impl AedbInstance>::table_inc_u256::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::commit()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::commit::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = ()>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::dispatch_lifecycle_events_for_commit()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::dispatch_lifecycle_events_for_commit::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<Vec<LifecycleEvent>, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::read_lifecycle_events_for_commit()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::read_lifecycle_events_for_commit::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = (KeyspaceSnapshot, Catalog, u64)>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of CommitExecutor::snapshot_state()}: 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 (`security_boundaries`)
[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/engine_interface.rs:286:39: 286:46}: Send`
[INFO] [stdout]    --> tests/engine_interface.rs:286:25
[INFO] [stdout]     |
[INFO] [stdout] 286 |       let update_thread = thread::spawn(move || {
[INFO] [stdout]     |  _________________________^
[INFO] [stdout] 287 | |         let runtime = tokio::runtime::Builder::new_current_thread()
[INFO] [stdout] 288 | |             .enable_all()
[INFO] [stdout] 289 | |             .build()
[INFO] [stdout] ...   |
[INFO] [stdout] 315 | |         })
[INFO] [stdout] 316 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `(Arc<AedbInstance>, std::sync::mpsc::Sender<()>, std::sync::mpsc::Receiver<()>): Send`
[INFO] [stdout]     = note: which requires `Arc<AedbInstance>: Send`
[INFO] [stdout]     = note: which requires `AedbInstance: Send`
[INFO] [stdout]     = note: which requires `Arc<lock_api::mutex::Mutex<parking_lot::raw_mutex::RawMutex, aedb::RecoveryCache>>: Send`
[INFO] [stdout]     = note: which requires `lock_api::mutex::Mutex<parking_lot::raw_mutex::RawMutex, aedb::RecoveryCache>: Send`
[INFO] [stdout]     = note: which requires `aedb::RecoveryCache: Send`
[INFO] [stdout]     = note: which requires `HashMap<u64, aedb::RecoveryCacheEntry>: Send`
[INFO] [stdout]     = note: which requires `hashbrown::map::HashMap<u64, aedb::RecoveryCacheEntry, RandomState>: Send`
[INFO] [stdout]     = note: which requires `hashbrown::raw::RawTable<(u64, aedb::RecoveryCacheEntry)>: Send`
[INFO] [stdout]     = note: which requires `(u64, aedb::RecoveryCacheEntry): Send`
[INFO] [stdout]     = note: which requires `aedb::RecoveryCacheEntry: Send`
[INFO] [stdout]     = note: which requires `SnapshotReadView: Send`
[INFO] [stdout]     = note: which requires `Arc<KeyspaceSnapshot>: Send`
[INFO] [stdout]     = note: which requires `KeyspaceSnapshot: Send`
[INFO] [stdout]     = note: which requires `Arc<im::hash::map::HashMap<NamespaceId, Namespace>>: 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 (`engine_interface`)
[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@tests/casino_settlement.rs:278:36: 278:46}: Send`
[INFO] [stdout]    --> tests/casino_settlement.rs:278:23
[INFO] [stdout]     |
[INFO] [stdout] 278 |       let settle_task = tokio::spawn(async move {
[INFO] [stdout]     |  _______________________^
[INFO] [stdout] 279 | |         let base_seq = db_settler
[INFO] [stdout] 280 | |             .snapshot_probe(ConsistencyMode::AtLatest)
[INFO] [stdout] 281 | |             .await
[INFO] [stdout] ...   |
[INFO] [stdout] 318 | |             .await
[INFO] [stdout] 319 | |     });
[INFO] [stdout]     | |______^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `{coroutine witness@tests/casino_settlement.rs:278:36: 278:46}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::commit_envelope()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::commit_envelope::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::commit_envelope_with_size_hint()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::commit_envelope_with_size_hint::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = ()>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::dispatch_lifecycle_events_for_commit()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::dispatch_lifecycle_events_for_commit::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<Vec<LifecycleEvent>, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::read_lifecycle_events_for_commit()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::read_lifecycle_events_for_commit::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = (KeyspaceSnapshot, Catalog, u64)>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of CommitExecutor::snapshot_state()}: 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 (`casino_settlement`)
[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 `AedbInstance: Send`
[INFO] [stdout]    --> tests/stress.rs:500:9
[INFO] [stdout]     |
[INFO] [stdout] 500 | /         tokio::spawn(async move {
[INFO] [stdout] 501 | |             for i in 0..scaled(5_000) {
[INFO] [stdout] 502 | |                 let id = i as i64;
[INFO] [stdout] 503 | |                 db.commit(Mutation::Upsert {
[INFO] [stdout] ...   |
[INFO] [stdout] 515 | |             db
[INFO] [stdout] 516 | |         })
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `Arc<lock_api::mutex::Mutex<parking_lot::raw_mutex::RawMutex, aedb::RecoveryCache>>: Send`
[INFO] [stdout]     = note: which requires `lock_api::mutex::Mutex<parking_lot::raw_mutex::RawMutex, aedb::RecoveryCache>: Send`
[INFO] [stdout]     = note: which requires `aedb::RecoveryCache: Send`
[INFO] [stdout]     = note: which requires `HashMap<u64, aedb::RecoveryCacheEntry>: Send`
[INFO] [stdout]     = note: which requires `hashbrown::map::HashMap<u64, aedb::RecoveryCacheEntry, RandomState>: Send`
[INFO] [stdout]     = note: which requires `hashbrown::raw::RawTable<(u64, aedb::RecoveryCacheEntry)>: Send`
[INFO] [stdout]     = note: which requires `(u64, aedb::RecoveryCacheEntry): Send`
[INFO] [stdout]     = note: which requires `aedb::RecoveryCacheEntry: Send`
[INFO] [stdout]     = note: which requires `SnapshotReadView: Send`
[INFO] [stdout]     = note: which requires `Arc<KeyspaceSnapshot>: Send`
[INFO] [stdout]     = note: which requires `KeyspaceSnapshot: Send`
[INFO] [stdout]     = note: which requires `Arc<im::hash::map::HashMap<NamespaceId, Namespace>>: Send`
[INFO] [stdout]     = note: which requires `im::hash::map::HashMap<NamespaceId, Namespace>: Send`
[INFO] [stdout]     = note: which requires `im::fakepool::Arc<im::nodes::hamt::Node<(NamespaceId, Namespace)>>: Send`
[INFO] [stdout]     = note: which requires `Arc<im::nodes::hamt::Node<(NamespaceId, Namespace)>>: 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 (`stress`)
[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@tests/adversarial_contention.rs:89:21: 89:31}: Send`
[INFO] [stdout]   --> tests/adversarial_contention.rs:89:15
[INFO] [stdout]    |
[INFO] [stdout] 89 |         tasks.spawn(async move {
[INFO] [stdout]    |               ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: which requires `{coroutine witness@tests/adversarial_contention.rs:89:21: 89:31}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of AedbInstance::commit_envelope()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@AedbInstance::commit_envelope::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of AedbInstance::commit_envelope_with_size_hint()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@AedbInstance::commit_envelope_with_size_hint::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = ()>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of AedbInstance::dispatch_lifecycle_events_for_commit()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@AedbInstance::dispatch_lifecycle_events_for_commit::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = Result<Vec<LifecycleEvent>, AedbError>>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of AedbInstance::read_lifecycle_events_for_commit()}: Send`
[INFO] [stdout]    = note: which requires `{coroutine witness@AedbInstance::read_lifecycle_events_for_commit::{closure#0}}: Send`
[INFO] [stdout]    = note: which requires `impl Future<Output = (KeyspaceSnapshot, Catalog, u64)>: Send`
[INFO] [stdout]    = note: which requires `{async fn body of CommitExecutor::snapshot_state()}: 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 (`adversarial_contention`)
[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@tests/replay_parity.rs:416:21: 416:31}: Send`
[INFO] [stdout]    --> tests/replay_parity.rs:416:15
[INFO] [stdout]     |
[INFO] [stdout] 416 |         tasks.spawn(async move {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `{coroutine witness@tests/replay_parity.rs:416:21: 416:31}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of aedb::api::kv_api::<impl AedbInstance>::table_inc_u256()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@aedb::api::kv_api::<impl AedbInstance>::table_inc_u256::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::commit()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::commit::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = ()>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::dispatch_lifecycle_events_for_commit()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::dispatch_lifecycle_events_for_commit::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<Vec<LifecycleEvent>, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::read_lifecycle_events_for_commit()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::read_lifecycle_events_for_commit::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = (KeyspaceSnapshot, Catalog, u64)>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of CommitExecutor::snapshot_state()}: 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 (`replay_parity`)
[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@tests/casino_double_spend.rs:105:21: 105:31}: Send`
[INFO] [stdout]    --> tests/casino_double_spend.rs:105:15
[INFO] [stdout]     |
[INFO] [stdout] 105 |         tasks.spawn(async move {
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `{coroutine witness@tests/casino_double_spend.rs:105:21: 105:31}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of aedb::api::kv_api::<impl AedbInstance>::table_dec_u256()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@aedb::api::kv_api::<impl AedbInstance>::table_dec_u256::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::commit()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::commit::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = ()>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::dispatch_lifecycle_events_for_commit()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::dispatch_lifecycle_events_for_commit::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<Vec<LifecycleEvent>, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::read_lifecycle_events_for_commit()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::read_lifecycle_events_for_commit::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = (KeyspaceSnapshot, Catalog, u64)>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of CommitExecutor::snapshot_state()}: 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 (`casino_double_spend`)
[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@tests/benchmark_gate.rs:688:33: 688:43}: Send`
[INFO] [stdout]    --> tests/benchmark_gate.rs:688:20
[INFO] [stdout]     |
[INFO] [stdout] 688 |           tasks.push(tokio::spawn(async move {
[INFO] [stdout]     |  ____________________^
[INFO] [stdout] 689 | |             let mut local_commits = 0u64;
[INFO] [stdout] 690 | |             let mut latencies = Vec::new();
[INFO] [stdout] 691 | |             while Instant::now() < deadline {
[INFO] [stdout] ...   |
[INFO] [stdout] 705 | |             (local_commits, latencies)
[INFO] [stdout] 706 | |         }));
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `{coroutine witness@tests/benchmark_gate.rs:688:33: 688:43}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::commit()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::commit::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = ()>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::dispatch_lifecycle_events_for_commit()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::dispatch_lifecycle_events_for_commit::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<Vec<LifecycleEvent>, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::read_lifecycle_events_for_commit()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::read_lifecycle_events_for_commit::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = (KeyspaceSnapshot, Catalog, u64)>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of CommitExecutor::snapshot_state()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@CommitExecutor::snapshot_state::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = tokio::sync::MutexGuard<'_, aedb::commit::executor::ExecutorState>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of tokio::sync::Mutex<aedb::commit::executor::ExecutorState>::lock()}: 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 (`benchmark_gate`)
[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@tests/mutate_returning_claim.rs:190:22: 190:32}: Send`
[INFO] [stdout]    --> tests/mutate_returning_claim.rs:190:9
[INFO] [stdout]     |
[INFO] [stdout] 190 | /         tokio::spawn(async move {
[INFO] [stdout] 191 | |             db.claim_one(
[INFO] [stdout] 192 | |                 "p",
[INFO] [stdout] 193 | |                 "app",
[INFO] [stdout] ...   |
[INFO] [stdout] 203 | |             .is_some()
[INFO] [stdout] 204 | |         })
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `{coroutine witness@tests/mutate_returning_claim.rs:190:22: 190:32}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<Option<MutateWhereReturningResult>, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of aedb::api::query_api::<impl AedbInstance>::claim_one()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@aedb::api::query_api::<impl AedbInstance>::claim_one::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<Option<MutateWhereReturningResult>, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of aedb::api::query_api::<impl AedbInstance>::mutate_where_returning()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@aedb::api::query_api::<impl AedbInstance>::mutate_where_returning::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<Option<MutateWhereReturningResult>, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::mutate_where_returning_inner()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::mutate_where_returning_inner::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::commit_envelope()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::commit_envelope::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::commit_envelope_with_size_hint()}: 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 (`mutate_returning_claim`)
[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@tests/security_properties.rs:259:33: 259:43}: Send`
[INFO] [stdout]    --> tests/security_properties.rs:259:20
[INFO] [stdout]     |
[INFO] [stdout] 259 |           tasks.push(tokio::spawn(async move {
[INFO] [stdout]     |  ____________________^
[INFO] [stdout] 260 | |             db.commit_envelope(TransactionEnvelope {
[INFO] [stdout] 261 | |                 caller: None,
[INFO] [stdout] 262 | |                 idempotency_key: None,
[INFO] [stdout] ...   |
[INFO] [stdout] 281 | |             .await
[INFO] [stdout] 282 | |         }));
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: which requires `{coroutine witness@tests/security_properties.rs:259:33: 259:43}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::commit_envelope()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::commit_envelope::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<CommitResult, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::commit_envelope_with_size_hint()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::commit_envelope_with_size_hint::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = ()>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::dispatch_lifecycle_events_for_commit()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::dispatch_lifecycle_events_for_commit::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = Result<Vec<LifecycleEvent>, AedbError>>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of AedbInstance::read_lifecycle_events_for_commit()}: Send`
[INFO] [stdout]     = note: which requires `{coroutine witness@AedbInstance::read_lifecycle_events_for_commit::{closure#0}}: Send`
[INFO] [stdout]     = note: which requires `impl Future<Output = (KeyspaceSnapshot, Catalog, u64)>: Send`
[INFO] [stdout]     = note: which requires `{async fn body of CommitExecutor::snapshot_state()}: 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 (`security_properties`)
[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] warning: unused dependency `crossbeam`
[INFO] [stderr]   --> Cargo.toml:31:15
[INFO] [stderr]    |
[INFO] [stderr] 31 | [dependencies.crossbeam]
[INFO] [stderr]    |               ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `crossbeam`
[INFO] [stderr] warning: `aedb` (manifest) generated 1 warning
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 36s
[INFO] running `Command { std: "docker" "inspect" "902c8cfca0a82c73cab5c309dcafb4c61328d10230ccdbea084735e9116e8007", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "902c8cfca0a82c73cab5c309dcafb4c61328d10230ccdbea084735e9116e8007", kill_on_drop: false }`
[INFO] [stdout] 902c8cfca0a82c73cab5c309dcafb4c61328d10230ccdbea084735e9116e8007
