[INFO] cloning repository https://github.com/Abso1ut3Zer0/nexus
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Abso1ut3Zer0/nexus" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAbso1ut3Zer0%2Fnexus", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAbso1ut3Zer0%2Fnexus'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c7c374eb45c94ae6b55f81ee74a68fc9e32cf572
[INFO] testing Abso1ut3Zer0/nexus against try#33835004928d3bf65db4d4712e1330766263b0bd for pr-155739
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FAbso1ut3Zer0%2Fnexus" "/workspace/builds/worker-6-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Abso1ut3Zer0/nexus
[INFO] finished tweaking git repo https://github.com/Abso1ut3Zer0/nexus
[INFO] tweaked toml for git repo https://github.com/Abso1ut3Zer0/nexus written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Abso1ut3Zer0/nexus on toolchain 33835004928d3bf65db4d4712e1330766263b0bd
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 340 packages to latest compatible versions
[INFO] [stderr]       Adding criterion v0.5.1 (available: v0.8.2)
[INFO] [stderr]       Adding generic-array v0.14.7 (available: v0.14.9)
[INFO] [stderr]       Adding getrandom v0.2.17 (available: v0.4.2)
[INFO] [stderr]       Adding getrandom v0.3.4 (available: v0.4.2)
[INFO] [stderr]       Adding rand v0.8.6 (available: v0.10.1)
[INFO] [stderr]       Adding rand v0.9.4 (available: v0.10.1)
[INFO] [stderr]       Adding rand_chacha v0.9.0 (available: v0.10.0)
[INFO] [stderr]       Adding rand_core v0.9.5 (available: v0.10.1)
[INFO] [stderr]       Adding rcgen v0.13.2 (available: v0.14.7)
[INFO] [stderr]       Adding reqwest v0.12.28 (available: v0.13.3)
[INFO] [stderr]       Adding sha1 v0.10.6 (available: v0.11.0)
[INFO] [stderr]       Adding signal-hook v0.3.18 (available: v0.4.4)
[INFO] [stderr]       Adding socket2 v0.5.10 (available: v0.6.3)
[INFO] [stderr]       Adding sonic-rs v0.3.17 (available: v0.5.8)
[INFO] [stderr]       Adding tokio-tungstenite v0.26.2 (available: v0.29.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] aa72e6adc7d2c71296e2ff14ad128ec9166f3633ea7dee9f877a05dc44212752
[INFO] running `Command { std: "docker" "start" "-a" "aa72e6adc7d2c71296e2ff14ad128ec9166f3633ea7dee9f877a05dc44212752", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "aa72e6adc7d2c71296e2ff14ad128ec9166f3633ea7dee9f877a05dc44212752", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "aa72e6adc7d2c71296e2ff14ad128ec9166f3633ea7dee9f877a05dc44212752", kill_on_drop: false }`
[INFO] [stdout] aa72e6adc7d2c71296e2ff14ad128ec9166f3633ea7dee9f877a05dc44212752
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 39bbe1451f8d09119d68908dcbeed7d8c8f43aba84efe676685ae4a77237eb6f
[INFO] running `Command { std: "docker" "start" "-a" "39bbe1451f8d09119d68908dcbeed7d8c8f43aba84efe676685ae4a77237eb6f", kill_on_drop: false }`
[INFO] [stderr]    Compiling dunce v1.0.5
[INFO] [stderr]    Compiling fs_extra v1.3.0
[INFO] [stderr]    Compiling aws-lc-rs v1.16.3
[INFO] [stderr]    Compiling cc v1.2.62
[INFO] [stderr]    Compiling typenum v1.20.0
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling rustls v0.23.40
[INFO] [stderr]    Compiling nexus-stats-core v1.2.1 (/opt/rustwide/workdir/nexus-stats-core)
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling nexus-queue v1.3.1 (/opt/rustwide/workdir/nexus-queue)
[INFO] [stderr]    Compiling nexus-slab v2.3.4 (/opt/rustwide/workdir/nexus-slab)
[INFO] [stderr]    Compiling rustls-native-certs v0.8.3
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rustc-hash v2.1.2
[INFO] [stderr]    Compiling nexus-smartptr v0.1.1 (/opt/rustwide/workdir/nexus-smartptr)
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling simdutf8 v0.1.5
[INFO] [stderr]    Compiling nexus-async-rt v0.6.0 (/opt/rustwide/workdir/nexus-async-rt)
[INFO] [stderr]    Compiling nexus-timer v1.4.2 (/opt/rustwide/workdir/nexus-timer)
[INFO] [stderr]    Compiling nexus-logbuf v2.2.0 (/opt/rustwide/workdir/nexus-logbuf)
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling socket2 v0.5.10
[INFO] [stderr]    Compiling nexus-stats-smoothing v1.2.1 (/opt/rustwide/workdir/nexus-stats-smoothing)
[INFO] [stderr]    Compiling nexus-ascii v1.6.2
[INFO] [stderr]    Compiling nexus-pool v1.0.4 (/opt/rustwide/workdir/nexus-pool)
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling nexus-stats-detection v1.0.1 (/opt/rustwide/workdir/nexus-stats-detection)
[INFO] [stderr]    Compiling nexus-stats v4.2.2 (/opt/rustwide/workdir/nexus-stats)
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling nexus-stats-regression v1.2.0 (/opt/rustwide/workdir/nexus-stats-regression)
[INFO] [stderr]    Compiling nexus-stats-control v1.0.2 (/opt/rustwide/workdir/nexus-stats-control)
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling aws-lc-sys v0.40.0
[INFO] [stderr]    Compiling nexus-collections v1.1.5 (/opt/rustwide/workdir/nexus-collections)
[INFO] [stderr]    Compiling nexus-id v1.1.5 (/opt/rustwide/workdir/nexus-id)
[INFO] [stderr]    Compiling nexus-channel v1.2.3 (/opt/rustwide/workdir/nexus-channel)
[INFO] [stderr]    Compiling nexus-notify v1.0.2 (/opt/rustwide/workdir/nexus-notify)
[INFO] [stderr]    Compiling nexus-slot v1.1.2 (/opt/rustwide/workdir/nexus-slot)
[INFO] [stderr]    Compiling nexus-decimal v1.1.0 (/opt/rustwide/workdir/nexus-decimal)
[INFO] [stderr]    Compiling nexus-rate v2.1.3 (/opt/rustwide/workdir/nexus-rate)
[INFO] [stderr]    Compiling nexus-ascii v1.6.2 (/opt/rustwide/workdir/nexus-ascii)
[INFO] [stderr]    Compiling nexus-rt-derive v1.2.0 (/opt/rustwide/workdir/nexus-rt-derive)
[INFO] [stderr]    Compiling nexus-bits-derive v0.4.2 (/opt/rustwide/workdir/nexus-bits-derive)
[INFO] [stderr]    Compiling nexus-bits v0.4.4 (/opt/rustwide/workdir/nexus-bits)
[INFO] [stderr]    Compiling nexus-rt v2.3.0 (/opt/rustwide/workdir/nexus-rt)
[INFO] [stderr]    Compiling rustls-webpki v0.103.13
[INFO] [stderr]    Compiling nexus-net v0.7.1 (/opt/rustwide/workdir/nexus-net)
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling nexus-async-net v0.7.1 (/opt/rustwide/workdir/nexus-async-net)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 29s
[INFO] running `Command { std: "docker" "inspect" "39bbe1451f8d09119d68908dcbeed7d8c8f43aba84efe676685ae4a77237eb6f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "39bbe1451f8d09119d68908dcbeed7d8c8f43aba84efe676685ae4a77237eb6f", kill_on_drop: false }`
[INFO] [stdout] 39bbe1451f8d09119d68908dcbeed7d8c8f43aba84efe676685ae4a77237eb6f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3779d4f3b833f3d57ecf28c6eb6e4fc8f575172948d5526cc5acd065290ed0e2
[INFO] running `Command { std: "docker" "start" "-a" "3779d4f3b833f3d57ecf28c6eb6e4fc8f575172948d5526cc5acd065290ed0e2", kill_on_drop: false }`
[INFO] [stderr] warning: output filename collision at /opt/rustwide/target/debug/examples/asm_check
[INFO] [stderr]   |
[INFO] [stderr]   = note: the example target `asm_check` in package `nexus-slab v2.3.4 (/opt/rustwide/workdir/nexus-slab)` has the same output filename as the example target `asm_check` in package `nexus-queue v1.3.1 (/opt/rustwide/workdir/nexus-queue)`
[INFO] [stderr]   = note: this may become a hard error in the future; see <https://github.com/rust-lang/cargo/issues/6313>
[INFO] [stderr]   = help: consider changing their names to be unique or compiling them separately
[INFO] [stderr] warning: output filename collision at /opt/rustwide/target/debug/examples/asm_check.dwp
[INFO] [stderr]   |
[INFO] [stderr]   = note: the example target `asm_check` in package `nexus-slab v2.3.4 (/opt/rustwide/workdir/nexus-slab)` has the same output filename as the example target `asm_check` in package `nexus-queue v1.3.1 (/opt/rustwide/workdir/nexus-queue)`
[INFO] [stderr]   = note: this may become a hard error in the future; see <https://github.com/rust-lang/cargo/issues/6313>
[INFO] [stderr]   = help: consider changing their names to be unique or compiling them separately
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling zerocopy-derive v0.8.48
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling futures-io v0.3.32
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling simd-adler32 v0.3.9
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling base64 v0.21.7
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling nexus-rt-derive v1.2.0 (/opt/rustwide/workdir/nexus-rt-derive)
[INFO] [stderr]    Compiling bitflags v2.11.1
[INFO] [stderr]    Compiling winnow v1.0.2
[INFO] [stderr]    Compiling target-triple v1.0.0
[INFO] [stderr]    Compiling toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling serde_spanned v1.1.1
[INFO] [stderr]    Compiling glob v0.3.3
[INFO] [stderr]    Compiling toml_parser v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling termcolor v1.4.1
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling nexus-rt v2.3.0 (/opt/rustwide/workdir/nexus-rt)
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling toml v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling hdrhistogram v7.5.4
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling zerofrom v0.1.7
[INFO] [stderr]    Compiling rustls v0.23.40
[INFO] [stderr]    Compiling yoke v0.8.2
[INFO] [stderr]    Compiling trybuild v1.0.116
[INFO] [stderr]    Compiling openssl-sys v0.9.115
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand v0.9.4
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling nexus-async-rt v0.6.0 (/opt/rustwide/workdir/nexus-async-rt)
[INFO] [stderr]    Compiling seq-macro v0.3.6
[INFO] [stderr]    Compiling simdutf8 v0.1.5
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling data-encoding v2.11.0
[INFO] [stderr]    Compiling nohash-hasher v0.2.0
[INFO] [stderr]    Compiling ascii v1.1.0
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling ref-cast-impl v1.0.25
[INFO] [stderr]    Compiling tungstenite v0.26.2
[INFO] [stderr]    Compiling ref-cast v1.0.25
[INFO] [stderr]    Compiling yasna v0.5.2
[INFO] [stderr]    Compiling faststr v0.2.34
[INFO] [stderr]    Compiling sonic-simd v0.1.4
[INFO] [stderr]    Compiling sonic-number v0.1.2
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling openssl v0.10.79
[INFO] [stderr]    Compiling tokio-tungstenite v0.26.2
[INFO] [stderr]    Compiling nexus-net v0.7.1 (/opt/rustwide/workdir/nexus-net)
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling sonic-rs v0.3.17
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling native-tls v0.2.18
[INFO] [stderr]    Compiling nexus-async-net v0.7.1 (/opt/rustwide/workdir/nexus-async-net)
[INFO] [stderr]    Compiling h2 v0.4.14
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling rcgen v0.13.2
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling rusty-fork v0.3.1
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling tower-http v0.6.10
[INFO] [stderr]    Compiling rand_xorshift v0.4.0
[INFO] [stderr]    Compiling unarray v0.1.4
[INFO] [stderr]    Compiling proptest v1.11.0
[INFO] [stderr]    Compiling tungstenite v0.29.0
[INFO] [stderr]    Compiling hyper v1.9.0
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling rustls-pemfile v2.2.0
[INFO] [stderr]    Compiling rust_decimal v1.42.0
[INFO] [stderr]    Compiling arrayvec v0.7.6
[INFO] [stderr]    Compiling fixdec v0.1.0
[INFO] [stderr]    Compiling nexus-bits-derive v0.4.2 (/opt/rustwide/workdir/nexus-bits-derive)
[INFO] [stderr]    Compiling crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling rtrb v0.3.4
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling rand v0.8.6
[INFO] [stderr]    Compiling seqlock v0.2.0
[INFO] [stderr]    Compiling nexus-bits v0.4.4 (/opt/rustwide/workdir/nexus-bits)
[INFO] [stderr]    Compiling nexus-id v1.1.5 (/opt/rustwide/workdir/nexus-id)
[INFO] [stderr]    Compiling nexus-rate v2.1.3 (/opt/rustwide/workdir/nexus-rate)
[INFO] [stderr]    Compiling nexus-slot v1.1.2 (/opt/rustwide/workdir/nexus-slot)
[INFO] [stderr]    Compiling nexus-smartptr v0.1.1 (/opt/rustwide/workdir/nexus-smartptr)
[INFO] [stderr]    Compiling nexus-logbuf v2.2.0 (/opt/rustwide/workdir/nexus-logbuf)
[INFO] [stderr]    Compiling nexus-decimal v1.1.0 (/opt/rustwide/workdir/nexus-decimal)
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling nexus-stats v4.2.2 (/opt/rustwide/workdir/nexus-stats)
[INFO] [stderr]    Compiling nexus-stats-detection v1.0.1 (/opt/rustwide/workdir/nexus-stats-detection)
[INFO] [stderr]    Compiling nexus-notify v1.0.2 (/opt/rustwide/workdir/nexus-notify)
[INFO] [stderr]    Compiling nexus-queue v1.3.1 (/opt/rustwide/workdir/nexus-queue)
[INFO] [stderr]    Compiling nexus-channel v1.2.3 (/opt/rustwide/workdir/nexus-channel)
[INFO] [stderr]    Compiling nexus-collections v1.1.5 (/opt/rustwide/workdir/nexus-collections)
[INFO] [stderr]    Compiling nexus-slab v2.3.4 (/opt/rustwide/workdir/nexus-slab)
[INFO] [stderr]    Compiling nexus-timer v1.4.2 (/opt/rustwide/workdir/nexus-timer)
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]    --> nexus-async-rt/tests/vs_tokio.rs:128:21
[INFO] [stdout]     |
[INFO] [stdout] 128 |     use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]     |                     ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]   --> nexus-async-rt/tests/vs_tokio.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 68 | /         spawn_boxed(async move {
[INFO] [stdout] 69 | |             let mut listener = listener;
[INFO] [stdout] 70 | |             let (mut s, _) = listener.accept().await.unwrap();
[INFO] [stdout] 71 | |             s.set_nodelay(true).unwrap();
[INFO] [stdout] ...  |
[INFO] [stdout] 80 | |         });
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 68 |         let _ = spawn_boxed(async move {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/vs_tokio.rs:84:9
[INFO] [stdout]     |
[INFO] [stdout]  84 | /         spawn_boxed(async move {
[INFO] [stdout]  85 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stdout]  86 | |             let mut c = TcpStream::connect(addr, io).unwrap();
[INFO] [stdout]  87 | |             c.set_nodelay(true).unwrap();
[INFO] [stdout] ...   |
[INFO] [stdout] 105 | |             writer.set(samples);
[INFO] [stdout] 106 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout]  84 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/vs_tokio.rs:217:9
[INFO] [stdout]     |
[INFO] [stdout] 217 | /         spawn_boxed(async move {
[INFO] [stdout] 218 | |             let mut b = b;
[INFO] [stdout] 219 | |             b.connect(a_addr).unwrap();
[INFO] [stdout] 220 | |             let mut buf = [0u8; MSG_SIZE];
[INFO] [stdout] ...   |
[INFO] [stdout] 228 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 217 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/vs_tokio.rs:231:9
[INFO] [stdout]     |
[INFO] [stdout] 231 | /         spawn_boxed(async move {
[INFO] [stdout] 232 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stdout] 233 | |             let mut a = a;
[INFO] [stdout] 234 | |             a.connect(b_addr).unwrap();
[INFO] [stdout] ...   |
[INFO] [stdout] 252 | |             writer.set(samples);
[INFO] [stdout] 253 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 231 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rdtsc` is never used
[INFO] [stdout]   --> nexus-async-rt/tests/vs_tokio_dispatch.rs:21:4
[INFO] [stdout]    |
[INFO] [stdout] 21 | fn rdtsc() -> u64 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/vs_tokio_dispatch.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 | /         executor.spawn_boxed(BenchTask {
[INFO] [stdout] 112 | |             count: 0,
[INFO] [stdout] 113 | |             target: TOTAL_POLLS as u64,
[INFO] [stdout] 114 | |             timestamps: ts,
[INFO] [stdout] 115 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 111 |         let _ = executor.spawn_boxed(BenchTask {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/channel_latency.rs:141:9
[INFO] [stdout]     |
[INFO] [stdout] 141 | /         spawn_boxed(async move {
[INFO] [stdout] 142 | |             for i in 0..(WARMUP + ITERS) {
[INFO] [stdout] 143 | |                 tx.send(i).await.unwrap();
[INFO] [stdout] 144 | |             }
[INFO] [stdout] 145 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 141 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/channel_latency.rs:180:9
[INFO] [stdout]     |
[INFO] [stdout] 180 | /         spawn_boxed(async move {
[INFO] [stdout] 181 | |             for i in 0..(WARMUP + ITERS) {
[INFO] [stdout] 182 | |                 tx.send(i).await.unwrap();
[INFO] [stdout] 183 | |             }
[INFO] [stdout] 184 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 180 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/channel_latency.rs:406:9
[INFO] [stdout]     |
[INFO] [stdout] 406 | /         spawn_boxed(async move {
[INFO] [stdout] 407 | |             for i in 0..(WARMUP + ITERS) {
[INFO] [stdout] 408 | |                 tx.send(i).await.unwrap();
[INFO] [stdout] 409 | |             }
[INFO] [stdout] 410 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 406 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> nexus-async-rt/tests/shutdown_quiesce.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |     let mut wb = WorldBuilder::new();
[INFO] [stdout]    |         ----^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> nexus-async-rt/tests/shutdown_quiesce.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |     let mut wb = WorldBuilder::new();
[INFO] [stdout]    |         ----^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> nexus-async-rt/tests/shutdown_quiesce.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let mut wb = WorldBuilder::new();
[INFO] [stdout]    |         ----^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> nexus-async-rt/tests/shutdown_quiesce.rs:85:9
[INFO] [stdout]    |
[INFO] [stdout] 85 |     let mut wb = WorldBuilder::new();
[INFO] [stdout]    |         ----^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> nexus-async-rt/tests/shutdown_quiesce.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 115 |     let mut wb = WorldBuilder::new();
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> nexus-async-rt/tests/shutdown_quiesce.rs:131:9
[INFO] [stdout]     |
[INFO] [stdout] 131 |     let mut wb = WorldBuilder::new();
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> nexus-async-rt/tests/shutdown_quiesce.rs:193:9
[INFO] [stdout]     |
[INFO] [stdout] 193 |     let mut wb = WorldBuilder::new();
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `rdtsc` is never used
[INFO] [stdout]   --> nexus-async-rt/tests/dispatch_histo.rs:20:4
[INFO] [stdout]    |
[INFO] [stdout] 20 | fn rdtsc() -> u64 {
[INFO] [stdout]    |    ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]   --> nexus-async-rt/tests/dispatch_histo.rs:69:5
[INFO] [stdout]    |
[INFO] [stdout] 69 | /     executor.spawn_boxed(InstrumentedTask {
[INFO] [stdout] 70 | |         count: 0,
[INFO] [stdout] 71 | |         target: total,
[INFO] [stdout] 72 | |         entries: e,
[INFO] [stdout] 73 | |     });
[INFO] [stdout]    | |______^
[INFO] [stdout]    |
[INFO] [stdout]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 69 |     let _ = executor.spawn_boxed(InstrumentedTask {
[INFO] [stdout]    |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `nexus_async_rt::JoinHandle::<T>::abort` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/miri_channel.rs:453:9
[INFO] [stdout]     |
[INFO] [stdout] 453 |         jh.abort();
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: returns whether the task was still running
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 453 |         let _ = jh.abort();
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `nexus_async_rt::JoinHandle::<T>::abort` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/miri_channel.rs:477:9
[INFO] [stdout]     |
[INFO] [stdout] 477 |         jh.abort();
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: returns whether the task was still running
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 477 |         let _ = jh.abort();
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `nexus_async_rt::JoinHandle::<T>::abort` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/miri_channel.rs:502:9
[INFO] [stdout]     |
[INFO] [stdout] 502 |         jh.abort();
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: returns whether the task was still running
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 502 |         let _ = jh.abort();
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `World`
[INFO] [stdout]   --> nexus-rt/tests/miri_tests.rs:11:26
[INFO] [stdout]    |
[INFO] [stdout] 11 | use nexus_rt::{Resource, World, WorldBuilder};
[INFO] [stdout]    |                          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DropTracker` is never constructed
[INFO] [stdout]   --> nexus-rt/tests/miri_tests.rs:28:8
[INFO] [stdout]    |
[INFO] [stdout] 28 | struct DropTracker(#[allow(dead_code)] u64);
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> nexus-rt/tests/miri_tests.rs:182:11
[INFO] [stdout]     |
[INFO] [stdout] 182 | struct R1(u64);
[INFO] [stdout]     |        -- ^^^
[INFO] [stdout]     |        |
[INFO] [stdout]     |        field in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> nexus-rt/tests/miri_tests.rs:184:11
[INFO] [stdout]     |
[INFO] [stdout] 184 | struct R2(u64);
[INFO] [stdout]     |        -- ^^^
[INFO] [stdout]     |        |
[INFO] [stdout]     |        field in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> nexus-rt/tests/miri_tests.rs:188:11
[INFO] [stdout]     |
[INFO] [stdout] 188 | struct R4(u64);
[INFO] [stdout]     |        -- ^^^
[INFO] [stdout]     |        |
[INFO] [stdout]     |        field in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> nexus-rt/tests/miri_tests.rs:190:11
[INFO] [stdout]     |
[INFO] [stdout] 190 | struct R5(u64);
[INFO] [stdout]     |        -- ^^^
[INFO] [stdout]     |        |
[INFO] [stdout]     |        field in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]    --> nexus-rt/tests/miri_tests.rs:192:11
[INFO] [stdout]     |
[INFO] [stdout] 192 | struct R6(u64);
[INFO] [stdout]     |        -- ^^^
[INFO] [stdout]     |        |
[INFO] [stdout]     |        field in this struct
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider removing this field
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]   --> nexus-async-rt/tests/net_tcp.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 | /         spawn_boxed(async move {
[INFO] [stdout] 31 | |             let (mut s, _) = listener.accept().await.unwrap();
[INFO] [stdout] 32 | |             let mut buf = [0u8; 128];
[INFO] [stdout] 33 | |             let n = s.read(&mut buf).await.unwrap();
[INFO] [stdout] 34 | |             s.write_all(&buf[..n]).await.unwrap();
[INFO] [stdout] 35 | |         });
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 30 |         let _ = spawn_boxed(async move {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]   --> nexus-async-rt/tests/net_tcp.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 | /         spawn_boxed(async move {
[INFO] [stdout] 38 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stdout] 39 | |             let mut c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stdout] 40 | |             c.write_all(b"hello world").await.unwrap();
[INFO] [stdout] ...  |
[INFO] [stdout] 44 | |             flag.set(true);
[INFO] [stdout] 45 | |         });
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 37 |         let _ = spawn_boxed(async move {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]   --> nexus-async-rt/tests/net_tcp.rs:66:9
[INFO] [stdout]    |
[INFO] [stdout] 66 | /         spawn_boxed(async move {
[INFO] [stdout] 67 | |             for _ in 0..3 {
[INFO] [stdout] 68 | |                 let (mut s, _) = listener.accept().await.unwrap();
[INFO] [stdout] 69 | |                 let mut buf = [0u8; 64];
[INFO] [stdout] ...  |
[INFO] [stdout] 74 | |         });
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 66 |         let _ = spawn_boxed(async move {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]   --> nexus-async-rt/tests/net_tcp.rs:76:9
[INFO] [stdout]    |
[INFO] [stdout] 76 | /         spawn_boxed(async move {
[INFO] [stdout] 77 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stdout] 78 | |             for i in 0..3u8 {
[INFO] [stdout] 79 | |                 let mut c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stdout] ...  |
[INFO] [stdout] 86 | |         });
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 76 |         let _ = spawn_boxed(async move {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_tcp.rs:113:9
[INFO] [stdout]     |
[INFO] [stdout] 113 | /         spawn_boxed(async move {
[INFO] [stdout] 114 | |             let (mut s, _) = listener.accept().await.unwrap();
[INFO] [stdout] 115 | |             let mut received = Vec::new();
[INFO] [stdout] 116 | |             let mut buf = [0u8; 8192];
[INFO] [stdout] ...   |
[INFO] [stdout] 126 | |             flag.set(true);
[INFO] [stdout] 127 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 113 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_tcp.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 | /         spawn_boxed(async move {
[INFO] [stdout] 130 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stdout] 131 | |             let mut c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stdout] 132 | |             c.write_all(&data).await.unwrap();
[INFO] [stdout] 133 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 129 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_tcp.rs:158:9
[INFO] [stdout]     |
[INFO] [stdout] 158 | /         spawn_boxed(async move {
[INFO] [stdout] 159 | |             let (mut s, _) = listener.accept().await.unwrap();
[INFO] [stdout] 160 | |             let (mut rd, mut wr) = s.split();
[INFO] [stdout] 161 | |             let mut buf = [0u8; 64];
[INFO] [stdout] ...   |
[INFO] [stdout] 168 | |                 .unwrap();
[INFO] [stdout] 169 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_tcp.rs:171:9
[INFO] [stdout]     |
[INFO] [stdout] 171 | /         spawn_boxed(async move {
[INFO] [stdout] 172 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stdout] 173 | |             let mut c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stdout] 174 | |             c.write_all(b"split").await.unwrap();
[INFO] [stdout] ...   |
[INFO] [stdout] 178 | |             flag.set(true);
[INFO] [stdout] 179 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 171 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_tcp.rs:198:9
[INFO] [stdout]     |
[INFO] [stdout] 198 | /         spawn_boxed(async move {
[INFO] [stdout] 199 | |             let (s, _) = listener.accept().await.unwrap();
[INFO] [stdout] 200 | |             let (read_half, write_half) = s.into_split();
[INFO] [stdout] 201 | |             let _stream = read_half.reunite(write_half).unwrap();
[INFO] [stdout] 202 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 198 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_tcp.rs:204:9
[INFO] [stdout]     |
[INFO] [stdout] 204 | /         spawn_boxed(async move {
[INFO] [stdout] 205 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stdout] 206 | |             let _c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stdout] 207 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 204 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_tcp.rs:230:9
[INFO] [stdout]     |
[INFO] [stdout] 230 | /         spawn_boxed(async move {
[INFO] [stdout] 231 | |             let (s, _) = listener.accept().await.unwrap();
[INFO] [stdout] 232 | |             s.set_nodelay(true).unwrap();
[INFO] [stdout] 233 | |             assert!(s.nodelay().unwrap());
[INFO] [stdout] ...   |
[INFO] [stdout] 243 | |             flag.set(true);
[INFO] [stdout] 244 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 230 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_tcp.rs:246:9
[INFO] [stdout]     |
[INFO] [stdout] 246 | /         spawn_boxed(async move {
[INFO] [stdout] 247 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stdout] 248 | |             let _c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stdout] 249 | |             nexus_async_rt::sleep(Duration::from_millis(100)).await;
[INFO] [stdout] 250 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 246 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_tcp.rs:278:9
[INFO] [stdout]     |
[INFO] [stdout] 278 | /         spawn_boxed(async move {
[INFO] [stdout] 279 | |             let (mut s, _) = listener.accept().await.unwrap();
[INFO] [stdout] 280 | |             let mut buf = [0u8; 16];
[INFO] [stdout] 281 | |             let n = s.read(&mut buf).await.unwrap();
[INFO] [stdout] 282 | |             assert_eq!(&buf[..n], b"via-socket");
[INFO] [stdout] 283 | |             flag.set(true);
[INFO] [stdout] 284 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 278 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_tcp.rs:286:9
[INFO] [stdout]     |
[INFO] [stdout] 286 | /         spawn_boxed(async move {
[INFO] [stdout] 287 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stdout] 288 | |             let mut c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stdout] 289 | |             c.write_all(b"via-socket").await.unwrap();
[INFO] [stdout] 290 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 286 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_tcp.rs:315:9
[INFO] [stdout]     |
[INFO] [stdout] 315 | /         spawn_boxed(async move {
[INFO] [stdout] 316 | |             let (s, _) = listener.accept().await.unwrap();
[INFO] [stdout] 317 | |             match s.try_write(b"data") {
[INFO] [stdout] 318 | |                 Ok(n) => assert!(n > 0),
[INFO] [stdout] ...   |
[INFO] [stdout] 322 | |             flag.set(true);
[INFO] [stdout] 323 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 315 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_tcp.rs:325:9
[INFO] [stdout]     |
[INFO] [stdout] 325 | /         spawn_boxed(async move {
[INFO] [stdout] 326 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stdout] 327 | |             let _c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stdout] 328 | |             nexus_async_rt::sleep(Duration::from_millis(100)).await;
[INFO] [stdout] 329 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 325 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_tcp.rs:356:9
[INFO] [stdout]     |
[INFO] [stdout] 356 | /         spawn_boxed(async move {
[INFO] [stdout] 357 | |             let (mut s, _) = listener.accept().await.unwrap();
[INFO] [stdout] 358 | |             let mut buf = [0u8; 16];
[INFO] [stdout] 359 | |             let n = s.read(&mut buf).await.unwrap();
[INFO] [stdout] 360 | |             assert_eq!(&buf[..n], b"from_std");
[INFO] [stdout] 361 | |             flag.set(true);
[INFO] [stdout] 362 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 356 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_tcp.rs:364:9
[INFO] [stdout]     |
[INFO] [stdout] 364 | /         spawn_boxed(async move {
[INFO] [stdout] 365 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stdout] 366 | |             let mut c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stdout] 367 | |             c.write_all(b"from_std").await.unwrap();
[INFO] [stdout] 368 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 364 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_tcp.rs:389:9
[INFO] [stdout]     |
[INFO] [stdout] 389 | /         spawn_boxed(async move {
[INFO] [stdout] 390 | |             let (s, _) = listener.accept().await.unwrap();
[INFO] [stdout] 391 | |             let std_stream = s.into_std().unwrap();
[INFO] [stdout] 392 | |             assert!(std_stream.peer_addr().is_ok());
[INFO] [stdout] 393 | |             flag.set(true);
[INFO] [stdout] 394 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 389 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_tcp.rs:396:9
[INFO] [stdout]     |
[INFO] [stdout] 396 | /         spawn_boxed(async move {
[INFO] [stdout] 397 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stdout] 398 | |             let _c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stdout] 399 | |             nexus_async_rt::sleep(Duration::from_millis(100)).await;
[INFO] [stdout] 400 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 396 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_tcp.rs:425:9
[INFO] [stdout]     |
[INFO] [stdout] 425 | /         spawn_boxed(async move {
[INFO] [stdout] 426 | |             match TcpStream::connect(closed_addr, nexus_async_rt::io()) {
[INFO] [stdout] 427 | |                 Err(_) => flag.set(true),
[INFO] [stdout] 428 | |                 Ok(mut c) => {
[INFO] [stdout] ...   |
[INFO] [stdout] 435 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 425 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_tcp.rs:456:9
[INFO] [stdout]     |
[INFO] [stdout] 456 | /         spawn_boxed(async move {
[INFO] [stdout] 457 | |             let (_s, _) = listener.accept().await.unwrap();
[INFO] [stdout] 458 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 456 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_tcp.rs:460:9
[INFO] [stdout]     |
[INFO] [stdout] 460 | /         spawn_boxed(async move {
[INFO] [stdout] 461 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stdout] 462 | |             let mut c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stdout] 463 | |             nexus_async_rt::sleep(Duration::from_millis(50)).await;
[INFO] [stdout] ...   |
[INFO] [stdout] 467 | |             flag.set(true);
[INFO] [stdout] 468 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 460 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]   --> nexus-async-rt/tests/channel.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | /         spawn_boxed(async move {
[INFO] [stdout] 27 | |             for i in 0..10 {
[INFO] [stdout] 28 | |                 tx.send(i).await.unwrap();
[INFO] [stdout] 29 | |             }
[INFO] [stdout] 30 | |         });
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 26 |         let _ = spawn_boxed(async move {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]   --> nexus-async-rt/tests/channel.rs:54:13
[INFO] [stdout]    |
[INFO] [stdout] 54 | /             spawn_boxed(async move {
[INFO] [stdout] 55 | |                 for i in 0..100 {
[INFO] [stdout] 56 | |                     tx.send(producer_id * 1000 + i).await.unwrap();
[INFO] [stdout] 57 | |                 }
[INFO] [stdout] 58 | |             });
[INFO] [stdout]    | |______________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 54 |             let _ = spawn_boxed(async move {
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]   --> nexus-async-rt/tests/channel.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 86 | /         spawn_boxed(async move {
[INFO] [stdout] 87 | |             for i in 0..1000 {
[INFO] [stdout] 88 | |                 tx.send(i).await.unwrap();
[INFO] [stdout] 89 | |             }
[INFO] [stdout] 90 | |         });
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 86 |         let _ = spawn_boxed(async move {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/channel.rs:111:9
[INFO] [stdout]     |
[INFO] [stdout] 111 | /         spawn_boxed(async move {
[INFO] [stdout] 112 | |             tx.send(1).await.unwrap();
[INFO] [stdout] 113 | |             tx.send(2).await.unwrap();
[INFO] [stdout] 114 | |             // sender dropped here
[INFO] [stdout] 115 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 111 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/channel.rs:136:9
[INFO] [stdout]     |
[INFO] [stdout] 136 | /         spawn_boxed(async move {
[INFO] [stdout] 137 | |             // Fill buffer.
[INFO] [stdout] 138 | |             tx.send(1).await.unwrap();
[INFO] [stdout] 139 | |             tx.send(2).await.unwrap();
[INFO] [stdout] ...   |
[INFO] [stdout] 145 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 136 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/channel.rs:167:9
[INFO] [stdout]     |
[INFO] [stdout] 167 | /         spawn_boxed(async move {
[INFO] [stdout] 168 | |             for i in 0..100_000u64 {
[INFO] [stdout] 169 | |                 tx.send(i).await.unwrap();
[INFO] [stdout] 170 | |             }
[INFO] [stdout] 171 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 167 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]   --> nexus-async-rt/tests/net_udp.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 | /         spawn_boxed(async move {
[INFO] [stdout] 35 | |             let mut s = recv_sock;
[INFO] [stdout] 36 | |             let mut buf = [0u8; 64];
[INFO] [stdout] 37 | |             let (n, from) = s.recv_from(&mut buf).await.unwrap();
[INFO] [stdout] ...  |
[INFO] [stdout] 40 | |             flag.set(true);
[INFO] [stdout] 41 | |         });
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 34 |         let _ = spawn_boxed(async move {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]   --> nexus-async-rt/tests/net_udp.rs:43:9
[INFO] [stdout]    |
[INFO] [stdout] 43 | /         spawn_boxed(async move {
[INFO] [stdout] 44 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stdout] 45 | |             let mut s =
[INFO] [stdout] 46 | |                 UdpSocket::bind("127.0.0.1:0".parse().unwrap(), nexus_async_rt::io()).unwrap();
[INFO] [stdout] 47 | |             s.send_to(b"hello udp", recv_addr).await.unwrap();
[INFO] [stdout] 48 | |         });
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 43 |         let _ = spawn_boxed(async move {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]   --> nexus-async-rt/tests/net_udp.rs:72:9
[INFO] [stdout]    |
[INFO] [stdout] 72 | /         spawn_boxed(async move {
[INFO] [stdout] 73 | |             let mut a = a_sock;
[INFO] [stdout] 74 | |             a.connect(b_addr).unwrap();
[INFO] [stdout] 75 | |             a.send(b"connected-msg").await.unwrap();
[INFO] [stdout] 76 | |         });
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 72 |         let _ = spawn_boxed(async move {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]   --> nexus-async-rt/tests/net_udp.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 | /         spawn_boxed(async move {
[INFO] [stdout] 79 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stdout] 80 | |             let mut b = b_sock;
[INFO] [stdout] 81 | |             b.connect(a_addr).unwrap();
[INFO] [stdout] ...  |
[INFO] [stdout] 85 | |             flag.set(true);
[INFO] [stdout] 86 | |         });
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 78 |         let _ = spawn_boxed(async move {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_udp.rs:109:9
[INFO] [stdout]     |
[INFO] [stdout] 109 | /         spawn_boxed(async move {
[INFO] [stdout] 110 | |             let mut s = server_sock;
[INFO] [stdout] 111 | |             let mut buf = [0u8; 64];
[INFO] [stdout] 112 | |             let (n, peer) = s.recv_from(&mut buf).await.unwrap();
[INFO] [stdout] 113 | |             s.send_to(&buf[..n], peer).await.unwrap();
[INFO] [stdout] 114 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 109 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_udp.rs:116:9
[INFO] [stdout]     |
[INFO] [stdout] 116 | /         spawn_boxed(async move {
[INFO] [stdout] 117 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stdout] 118 | |             let mut c =
[INFO] [stdout] 119 | |                 UdpSocket::bind("127.0.0.1:0".parse().unwrap(), nexus_async_rt::io()).unwrap();
[INFO] [stdout] ...   |
[INFO] [stdout] 124 | |             flag.set(true);
[INFO] [stdout] 125 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 116 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_udp.rs:148:9
[INFO] [stdout]     |
[INFO] [stdout] 148 | /         spawn_boxed(async move {
[INFO] [stdout] 149 | |             let mut s = recv_sock;
[INFO] [stdout] 150 | |             let mut buf = [0u8; 64];
[INFO] [stdout] 151 | |             for _ in 0..5 {
[INFO] [stdout] ...   |
[INFO] [stdout] 156 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 148 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_udp.rs:158:9
[INFO] [stdout]     |
[INFO] [stdout] 158 | /         spawn_boxed(async move {
[INFO] [stdout] 159 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stdout] 160 | |             let mut c =
[INFO] [stdout] 161 | |                 UdpSocket::bind("127.0.0.1:0".parse().unwrap(), nexus_async_rt::io()).unwrap();
[INFO] [stdout] ...   |
[INFO] [stdout] 166 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 158 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_udp.rs:228:9
[INFO] [stdout]     |
[INFO] [stdout] 228 | /         spawn_boxed(async move {
[INFO] [stdout] 229 | |             let a = a;
[INFO] [stdout] 230 | |             a.connect(b_addr).unwrap();
[INFO] [stdout] 231 | |             let n = a.try_send(b"try-data").unwrap();
[INFO] [stdout] 232 | |             assert_eq!(n, 8);
[INFO] [stdout] 233 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 228 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_udp.rs:235:9
[INFO] [stdout]     |
[INFO] [stdout] 235 | /         spawn_boxed(async move {
[INFO] [stdout] 236 | |             nexus_async_rt::sleep(Duration::from_millis(50)).await;
[INFO] [stdout] 237 | |             let b = b;
[INFO] [stdout] 238 | |             b.connect(a_addr).unwrap();
[INFO] [stdout] ...   |
[INFO] [stdout] 249 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 235 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_udp.rs:276:9
[INFO] [stdout]     |
[INFO] [stdout] 276 | /         spawn_boxed(async move {
[INFO] [stdout] 277 | |             let mut s = sock;
[INFO] [stdout] 278 | |             let mut buf = [0u8; 64];
[INFO] [stdout] 279 | |             let (n, _) = s.recv_from(&mut buf).await.unwrap();
[INFO] [stdout] 280 | |             assert_eq!(&buf[..n], b"from-std");
[INFO] [stdout] 281 | |             flag.set(true);
[INFO] [stdout] 282 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 276 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_udp.rs:284:9
[INFO] [stdout]     |
[INFO] [stdout] 284 | /         spawn_boxed(async move {
[INFO] [stdout] 285 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stdout] 286 | |             let mut s =
[INFO] [stdout] 287 | |                 UdpSocket::bind("127.0.0.1:0".parse().unwrap(), nexus_async_rt::io()).unwrap();
[INFO] [stdout] 288 | |             s.send_to(b"from-std", addr).await.unwrap();
[INFO] [stdout] 289 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 284 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_udp.rs:325:9
[INFO] [stdout]     |
[INFO] [stdout] 325 | /         spawn_boxed(async move {
[INFO] [stdout] 326 | |             let mut s = recv_sock;
[INFO] [stdout] 327 | |             let mut buf = [0u8; 64];
[INFO] [stdout] 328 | |             let (n, peer) = s.peek_from(&mut buf).await.unwrap();
[INFO] [stdout] ...   |
[INFO] [stdout] 333 | |             flag.set(true);
[INFO] [stdout] 334 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 325 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_udp.rs:336:9
[INFO] [stdout]     |
[INFO] [stdout] 336 | /         spawn_boxed(async move {
[INFO] [stdout] 337 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stdout] 338 | |             let mut s =
[INFO] [stdout] 339 | |                 UdpSocket::bind("127.0.0.1:0".parse().unwrap(), nexus_async_rt::io()).unwrap();
[INFO] [stdout] 340 | |             s.send_to(b"peek-data", recv_addr).await.unwrap();
[INFO] [stdout] 341 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 336 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_udp.rs:379:9
[INFO] [stdout]     |
[INFO] [stdout] 379 | /         spawn_boxed(async move {
[INFO] [stdout] 380 | |             let mut s = recv_sock;
[INFO] [stdout] 381 | |             let mut buf = [0u8; 64];
[INFO] [stdout] 382 | |             let (n, _) = s.recv_from(&mut buf).await.unwrap();
[INFO] [stdout] 383 | |             assert_eq!(&buf[..n], b"mcast");
[INFO] [stdout] 384 | |             flag.set(true);
[INFO] [stdout] 385 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 379 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/net_udp.rs:387:9
[INFO] [stdout]     |
[INFO] [stdout] 387 | /         spawn_boxed(async move {
[INFO] [stdout] 388 | |             nexus_async_rt::sleep(Duration::from_millis(50)).await;
[INFO] [stdout] 389 | |             let mut s =
[INFO] [stdout] 390 | |                 UdpSocket::bind("0.0.0.0:0".parse().unwrap(), nexus_async_rt::io()).unwrap();
[INFO] [stdout] 391 | |             let target: std::net::SocketAddr = format!("239.255.0.1:{recv_port}").parse().unwrap();
[INFO] [stdout] 392 | |             s.send_to(b"mcast", target).await.unwrap();
[INFO] [stdout] 393 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 387 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> nexus-async-rt/tests/shutdown_stats.rs:32:9
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let mut wb = WorldBuilder::new();
[INFO] [stdout]    |         ----^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> nexus-async-rt/tests/shutdown_stats.rs:52:9
[INFO] [stdout]    |
[INFO] [stdout] 52 |     let mut wb = WorldBuilder::new();
[INFO] [stdout]    |         ----^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> nexus-async-rt/tests/shutdown_stats.rs:92:18
[INFO] [stdout]    |
[INFO] [stdout] 92 |         let (tx, mut rx) = nexus_async_rt::channel::mpsc::channel::<u64>(64);
[INFO] [stdout]    |                  ----^^
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> nexus-async-rt/tests/shutdown_stats.rs:86:9
[INFO] [stdout]    |
[INFO] [stdout] 86 |     let mut wb = WorldBuilder::new();
[INFO] [stdout]    |         ----^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> nexus-async-rt/tests/shutdown_stats.rs:140:9
[INFO] [stdout]     |
[INFO] [stdout] 140 |     let mut wb = WorldBuilder::new();
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `t1`
[INFO] [stdout]    --> nexus-notify/src/local.rs:255:13
[INFO] [stdout]     |
[INFO] [stdout] 255 |         let t1 = notify.register();
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_t1`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]   --> nexus-async-rt/tests/channel_deadlock.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 | /         spawn_boxed(async move {
[INFO] [stdout] 35 | |             f.await;
[INFO] [stdout] 36 | |             flag.set(true);
[INFO] [stdout] 37 | |         });
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 34 |         let _ = spawn_boxed(async move {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]   --> nexus-async-rt/tests/channel_deadlock.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 | /         spawn_boxed(async move {
[INFO] [stdout] 63 | |             for i in 0..10_000 {
[INFO] [stdout] 64 | |                 tx.send(i).await.unwrap();
[INFO] [stdout] 65 | |             }
[INFO] [stdout] 66 | |         });
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 62 |         let _ = spawn_boxed(async move {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]   --> nexus-async-rt/tests/channel_deadlock.rs:85:9
[INFO] [stdout]    |
[INFO] [stdout] 85 | /         spawn_boxed(async move {
[INFO] [stdout] 86 | |             for i in 0..10_000 {
[INFO] [stdout] 87 | |                 tx.send(i).await.unwrap();
[INFO] [stdout] 88 | |             }
[INFO] [stdout] 89 | |         });
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 85 |         let _ = spawn_boxed(async move {
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/channel_deadlock.rs:106:13
[INFO] [stdout]     |
[INFO] [stdout] 106 | /             spawn_boxed(async move {
[INFO] [stdout] 107 | |                 for i in 0..1000 {
[INFO] [stdout] 108 | |                     tx.send(producer_id * 10_000 + i).await.unwrap();
[INFO] [stdout] 109 | |                 }
[INFO] [stdout] 110 | |             });
[INFO] [stdout]     | |______________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 106 |             let _ = spawn_boxed(async move {
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/channel_deadlock.rs:135:9
[INFO] [stdout]     |
[INFO] [stdout] 135 | /         spawn_boxed(async move {
[INFO] [stdout] 136 | |             for i in 0..10_000 {
[INFO] [stdout] 137 | |                 tx.send(i).await.unwrap();
[INFO] [stdout] 138 | |             }
[INFO] [stdout] 139 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 135 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/channel_deadlock.rs:159:9
[INFO] [stdout]     |
[INFO] [stdout] 159 | /         spawn_boxed(async move {
[INFO] [stdout] 160 | |             let data = [0xABu8; 32];
[INFO] [stdout] 161 | |             for _ in 0..10_000 {
[INFO] [stdout] 162 | |                 let mut claim = tx.claim(32).await.unwrap();
[INFO] [stdout] ...   |
[INFO] [stdout] 166 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 159 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/channel_deadlock.rs:183:9
[INFO] [stdout]     |
[INFO] [stdout] 183 | /         spawn_boxed(async move {
[INFO] [stdout] 184 | |             for i in 0u64..5_000 {
[INFO] [stdout] 185 | |                 let mut claim = tx.claim(8).await.unwrap();
[INFO] [stdout] 186 | |                 claim.copy_from_slice(&i.to_le_bytes());
[INFO] [stdout] ...   |
[INFO] [stdout] 189 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 183 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/channel_deadlock.rs:208:9
[INFO] [stdout]     |
[INFO] [stdout] 208 | /         spawn_boxed(async move {
[INFO] [stdout] 209 | |             let data = [0xCDu8; 32];
[INFO] [stdout] 210 | |             for _ in 0..10_000 {
[INFO] [stdout] 211 | |                 let mut claim = tx.claim(32).await.unwrap();
[INFO] [stdout] ...   |
[INFO] [stdout] 215 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 208 |         let _ = spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/tests/channel_deadlock.rs:232:13
[INFO] [stdout]     |
[INFO] [stdout] 232 | /             spawn_boxed(async move {
[INFO] [stdout] 233 | |                 for i in 0u32..500 {
[INFO] [stdout] 234 | |                     let val = producer_id * 10_000 + i;
[INFO] [stdout] 235 | |                     let mut claim = tx.claim(4).await.unwrap();
[INFO] [stdout] ...   |
[INFO] [stdout] 239 | |             });
[INFO] [stdout]     | |______________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 232 |             let _ = spawn_boxed(async move {
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling nexus-stats-control v1.0.2 (/opt/rustwide/workdir/nexus-stats-control)
[INFO] [stderr]    Compiling nexus-stats-smoothing v1.2.1 (/opt/rustwide/workdir/nexus-stats-smoothing)
[INFO] [stderr]    Compiling nexus-stats-regression v1.2.0 (/opt/rustwide/workdir/nexus-stats-regression)
[INFO] [stderr]    Compiling nexus-ascii v1.6.2 (/opt/rustwide/workdir/nexus-ascii)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> nexus-async-rt/src/runtime.rs:1355:13
[INFO] [stdout]      |
[INFO] [stdout] 1355 |         let mut wb = WorldBuilder::new();
[INFO] [stdout]      |             ----^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> nexus-async-rt/src/runtime.rs:1447:13
[INFO] [stdout]      |
[INFO] [stdout] 1447 |         let mut wb = WorldBuilder::new();
[INFO] [stdout]      |             ----^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> nexus-async-rt/src/runtime.rs:1468:13
[INFO] [stdout]      |
[INFO] [stdout] 1468 |         let mut wb = WorldBuilder::new();
[INFO] [stdout]      |             ----^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> nexus-async-rt/src/runtime.rs:1565:13
[INFO] [stdout]      |
[INFO] [stdout] 1565 |         let mut wb = WorldBuilder::new();
[INFO] [stdout]      |             ----^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> nexus-async-rt/src/runtime.rs:1578:13
[INFO] [stdout]      |
[INFO] [stdout] 1578 |         let mut wb = WorldBuilder::new();
[INFO] [stdout]      |             ----^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> nexus-async-rt/src/runtime.rs:1596:13
[INFO] [stdout]      |
[INFO] [stdout] 1596 |         let mut wb = WorldBuilder::new();
[INFO] [stdout]      |             ----^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> nexus-async-rt/src/runtime.rs:1609:13
[INFO] [stdout]      |
[INFO] [stdout] 1609 |         let mut wb = WorldBuilder::new();
[INFO] [stdout]      |             ----^^
[INFO] [stdout]      |             |
[INFO] [stdout]      |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::alloc::dealloc` is unsafe and requires unsafe block
[INFO] [stdout]     --> nexus-async-rt/src/task.rs:1326:13
[INFO] [stdout]      |
[INFO] [stdout] 1326 |             std::alloc::dealloc(ptr, layout);
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]     --> nexus-async-rt/src/task.rs:1324:9
[INFO] [stdout]      |
[INFO] [stdout] 1324 |         unsafe fn slab_free(ptr: *mut u8) {
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]      = note: requested on the command line with `-W unsafe-op-in-unsafe-fn`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `BackoffBuilder::build` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/backoff.rs:414:9
[INFO] [stdout]     |
[INFO] [stdout] 414 | /         Backoff::builder()
[INFO] [stdout] 415 | |             .initial(Duration::from_secs(60))
[INFO] [stdout] 416 | |             .max_delay(Duration::from_secs(5))
[INFO] [stdout] 417 | |             .build();
[INFO] [stdout]     | |____________________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 414 |         let _ = Backoff::builder()
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/net/tcp.rs:985:13
[INFO] [stdout]     |
[INFO] [stdout] 985 | /             spawn_boxed(async move {
[INFO] [stdout] 986 | |                 let mut listener = listener;
[INFO] [stdout] 987 | |                 let (mut stream, _peer) = listener.accept().await.unwrap();
[INFO] [stdout] 988 | |                 let mut buf = [0u8; 64];
[INFO] [stdout] 989 | |                 let n = stream.read(&mut buf).await.unwrap();
[INFO] [stdout] 990 | |                 stream.write_all(&buf[..n]).await.unwrap();
[INFO] [stdout] 991 | |             });
[INFO] [stdout]     | |______________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 985 |             let _ = spawn_boxed(async move {
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]     --> nexus-async-rt/src/net/tcp.rs:995:13
[INFO] [stdout]      |
[INFO] [stdout]  995 | /             spawn_boxed(async move {
[INFO] [stdout]  996 | |                 crate::context::sleep(std::time::Duration::from_millis(10)).await;
[INFO] [stdout]  997 | |                 let mut client = TcpStream::connect(addr, io).unwrap();
[INFO] [stdout]  998 | |                 client.write_all(b"hello").await.unwrap();
[INFO] [stdout] ...    |
[INFO] [stdout] 1002 | |                 flag.set(true);
[INFO] [stdout] 1003 | |             });
[INFO] [stdout]      | |______________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout]  995 |             let _ = spawn_boxed(async move {
[INFO] [stdout]      |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/net/udp.rs:443:13
[INFO] [stdout]     |
[INFO] [stdout] 443 | /             spawn_boxed(async move {
[INFO] [stdout] 444 | |                 let mut sock = recv_sock;
[INFO] [stdout] 445 | |                 let mut buf = [0u8; 64];
[INFO] [stdout] 446 | |                 let (n, _from) = sock.recv_from(&mut buf).await.unwrap();
[INFO] [stdout] 447 | |                 assert_eq!(&buf[..n], b"test");
[INFO] [stdout] 448 | |                 flag.set(true);
[INFO] [stdout] 449 | |             });
[INFO] [stdout]     | |______________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 443 |             let _ = spawn_boxed(async move {
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/net/udp.rs:452:13
[INFO] [stdout]     |
[INFO] [stdout] 452 | /             spawn_boxed(async move {
[INFO] [stdout] 453 | |                 crate::context::sleep(Duration::from_millis(10)).await;
[INFO] [stdout] 454 | |                 let mut sock =
[INFO] [stdout] 455 | |                     UdpSocket::bind("127.0.0.1:0".parse().unwrap(), crate::context::io()).unwrap();
[INFO] [stdout] 456 | |                 sock.send_to(b"test", recv_addr).await.unwrap();
[INFO] [stdout] 457 | |             });
[INFO] [stdout]     | |______________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 452 |             let _ = spawn_boxed(async move {
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/net/udp.rs:481:13
[INFO] [stdout]     |
[INFO] [stdout] 481 | /             spawn_boxed(async move {
[INFO] [stdout] 482 | |                 let mut server = server_sock;
[INFO] [stdout] 483 | |                 let mut buf = [0u8; 64];
[INFO] [stdout] 484 | |                 let (n, peer) = server.recv_from(&mut buf).await.unwrap();
[INFO] [stdout] 485 | |                 server.send_to(&buf[..n], peer).await.unwrap();
[INFO] [stdout] 486 | |             });
[INFO] [stdout]     | |______________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 481 |             let _ = spawn_boxed(async move {
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/net/udp.rs:490:13
[INFO] [stdout]     |
[INFO] [stdout] 490 | /             spawn_boxed(async move {
[INFO] [stdout] 491 | |                 crate::context::sleep(Duration::from_millis(10)).await;
[INFO] [stdout] 492 | |                 let client_addr: SocketAddr = "127.0.0.1:0".parse().unwrap();
[INFO] [stdout] 493 | |                 let mut client = UdpSocket::bind(client_addr, crate::context::io()).unwrap();
[INFO] [stdout] ...   |
[INFO] [stdout] 498 | |                 flag.set(true);
[INFO] [stdout] 499 | |             });
[INFO] [stdout]     | |______________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 490 |             let _ = spawn_boxed(async move {
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/net/udp.rs:524:13
[INFO] [stdout]     |
[INFO] [stdout] 524 | /             spawn_boxed(async move {
[INFO] [stdout] 525 | |                 let mut a = a_sock;
[INFO] [stdout] 526 | |                 a.connect(b_addr).unwrap();
[INFO] [stdout] 527 | |                 a.send(b"connected").await.unwrap();
[INFO] [stdout] 528 | |             });
[INFO] [stdout]     | |______________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 524 |             let _ = spawn_boxed(async move {
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/net/udp.rs:531:13
[INFO] [stdout]     |
[INFO] [stdout] 531 | /             spawn_boxed(async move {
[INFO] [stdout] 532 | |                 crate::context::sleep(Duration::from_millis(10)).await;
[INFO] [stdout] 533 | |                 let mut b = b_sock;
[INFO] [stdout] 534 | |                 b.connect(a_addr).unwrap();
[INFO] [stdout] ...   |
[INFO] [stdout] 538 | |                 flag.set(true);
[INFO] [stdout] 539 | |             });
[INFO] [stdout]     | |______________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 531 |             let _ = spawn_boxed(async move {
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]     --> nexus-async-rt/src/runtime.rs:1281:17
[INFO] [stdout]      |
[INFO] [stdout] 1281 | /                 spawn_boxed(async move {
[INFO] [stdout] 1282 | |                     crate::context::with_world(|world| {
[INFO] [stdout] 1283 | |                         world.resource_mut::<Out>().0 += i;
[INFO] [stdout] 1284 | |                     });
[INFO] [stdout] 1285 | |                 });
[INFO] [stdout]      | |__________________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1281 |                 let _ = spawn_boxed(async move {
[INFO] [stdout]      |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]     --> nexus-async-rt/src/runtime.rs:1314:13
[INFO] [stdout]      |
[INFO] [stdout] 1314 | /             spawn_boxed(async move {
[INFO] [stdout] 1315 | |                 crate::context::with_world(|world| {
[INFO] [stdout] 1316 | |                     world.resource_mut::<Out>().0 = 99;
[INFO] [stdout] 1317 | |                 });
[INFO] [stdout] 1318 | |             });
[INFO] [stdout]      | |______________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1314 |             let _ = spawn_boxed(async move {
[INFO] [stdout]      |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]     --> nexus-async-rt/src/runtime.rs:1344:9
[INFO] [stdout]      |
[INFO] [stdout] 1344 |         spawn_boxed(async {});
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1344 |         let _ = spawn_boxed(async {});
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]     --> nexus-async-rt/src/runtime.rs:1360:13
[INFO] [stdout]      |
[INFO] [stdout] 1360 |             spawn_slab(async {});
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1360 |             let _ = spawn_slab(async {});
[INFO] [stdout]      |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]     --> nexus-async-rt/src/runtime.rs:1375:13
[INFO] [stdout]      |
[INFO] [stdout] 1375 | /             spawn_slab(async move {
[INFO] [stdout] 1376 | |                 crate::context::with_world(|world| {
[INFO] [stdout] 1377 | |                     world.resource_mut::<Out>().0 = 77;
[INFO] [stdout] 1378 | |                 });
[INFO] [stdout] 1379 | |             });
[INFO] [stdout]      | |______________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1375 |             let _ = spawn_slab(async move {
[INFO] [stdout]      |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]     --> nexus-async-rt/src/runtime.rs:1399:13
[INFO] [stdout]      |
[INFO] [stdout] 1399 | /             spawn_boxed(async move {
[INFO] [stdout] 1400 | |                 crate::context::with_world(|world| {
[INFO] [stdout] 1401 | |                     world.resource_mut::<Out>().0 += 10;
[INFO] [stdout] 1402 | |                 });
[INFO] [stdout] 1403 | |             });
[INFO] [stdout]      | |______________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1399 |             let _ = spawn_boxed(async move {
[INFO] [stdout]      |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]     --> nexus-async-rt/src/runtime.rs:1405:13
[INFO] [stdout]      |
[INFO] [stdout] 1405 | /             spawn_slab(async move {
[INFO] [stdout] 1406 | |                 crate::context::with_world(|world| {
[INFO] [stdout] 1407 | |                     world.resource_mut::<Out>().0 += 20;
[INFO] [stdout] 1408 | |                 });
[INFO] [stdout] 1409 | |             });
[INFO] [stdout]      | |______________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1405 |             let _ = spawn_slab(async move {
[INFO] [stdout]      |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]     --> nexus-async-rt/src/runtime.rs:1433:13
[INFO] [stdout]      |
[INFO] [stdout] 1433 | /             claim.spawn(async move {
[INFO] [stdout] 1434 | |                 crate::context::with_world(|world| {
[INFO] [stdout] 1435 | |                     world.resource_mut::<Out>().0 = 55;
[INFO] [stdout] 1436 | |                 });
[INFO] [stdout] 1437 | |             });
[INFO] [stdout]      | |______________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1433 |             let _ = claim.spawn(async move {
[INFO] [stdout]      |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]     --> nexus-async-rt/src/runtime.rs:1460:13
[INFO] [stdout]      |
[INFO] [stdout] 1460 |             claim.spawn(async {});
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1460 |             let _ = claim.spawn(async {});
[INFO] [stdout]      |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]     --> nexus-async-rt/src/runtime.rs:1491:13
[INFO] [stdout]      |
[INFO] [stdout] 1491 | /             spawn_boxed(async move {
[INFO] [stdout] 1492 | |                 crate::context::with_world(|world| {
[INFO] [stdout] 1493 | |                     world.resource_mut::<Out>().0 += 10;
[INFO] [stdout] 1494 | |                 });
[INFO] [stdout] 1495 | |             });
[INFO] [stdout]      | |______________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1491 |             let _ = spawn_boxed(async move {
[INFO] [stdout]      |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]     --> nexus-async-rt/src/runtime.rs:1498:13
[INFO] [stdout]      |
[INFO] [stdout] 1498 | /             claim.spawn(async move {
[INFO] [stdout] 1499 | |                 crate::context::with_world(|world| {
[INFO] [stdout] 1500 | |                     world.resource_mut::<Out>().0 += 20;
[INFO] [stdout] 1501 | |                 });
[INFO] [stdout] 1502 | |             });
[INFO] [stdout]      | |______________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1498 |             let _ = claim.spawn(async move {
[INFO] [stdout]      |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]     --> nexus-async-rt/src/runtime.rs:1548:13
[INFO] [stdout]      |
[INFO] [stdout] 1548 | /             spawn_boxed(async move {
[INFO] [stdout] 1549 | |                 crate::context::sleep(Duration::from_millis(50)).await;
[INFO] [stdout] 1550 | |                 crate::context::with_world(|world| {
[INFO] [stdout] 1551 | |                     world.resource_mut::<Out>().0 = 42;
[INFO] [stdout] 1552 | |                 });
[INFO] [stdout] 1553 | |             });
[INFO] [stdout]      | |______________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1548 |             let _ = spawn_boxed(async move {
[INFO] [stdout]      |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]     --> nexus-async-rt/src/runtime.rs:1666:13
[INFO] [stdout]      |
[INFO] [stdout] 1666 | /             spawn_boxed(async move {
[INFO] [stdout] 1667 | |                 crate::context::with_world(|world| {
[INFO] [stdout] 1668 | |                     world.resource_mut::<Out>().0 = 99;
[INFO] [stdout] 1669 | |                 });
[INFO] [stdout] 1670 | |             });
[INFO] [stdout]      | |______________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1666 |             let _ = spawn_boxed(async move {
[INFO] [stdout]      |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/shutdown.rs:208:13
[INFO] [stdout]     |
[INFO] [stdout] 208 | /             spawn_boxed(async move {
[INFO] [stdout] 209 | |                 crate::context::sleep(std::time::Duration::from_millis(50)).await;
[INFO] [stdout] 210 | |                 sh.trigger();
[INFO] [stdout] 211 | |             });
[INFO] [stdout]     | |______________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 208 |             let _ = spawn_boxed(async move {
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/world_ctx.rs:131:9
[INFO] [stdout]     |
[INFO] [stdout] 131 | /         executor.spawn_boxed(async move {
[INFO] [stdout] 132 | |             ctx.with_world(|world| {
[INFO] [stdout] 133 | |                 let v = world.resource::<Val>().0;
[INFO] [stdout] 134 | |                 world.resource_mut::<Out>().0 = v + 10;
[INFO] [stdout] 135 | |             });
[INFO] [stdout] 136 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 131 |         let _ = executor.spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/world_ctx.rs:155:9
[INFO] [stdout]     |
[INFO] [stdout] 155 | /         executor.spawn_boxed(async move {
[INFO] [stdout] 156 | |             let v = ctx.with_world_ref(|world| world.resource::<Val>().0);
[INFO] [stdout] 157 | |             // SAFETY: test-only, single-threaded, Cell is alive.
[INFO] [stdout] 158 | |             unsafe { &*result_ptr }.set(v);
[INFO] [stdout] 159 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 155 |         let _ = executor.spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/world_ctx.rs:182:9
[INFO] [stdout]     |
[INFO] [stdout] 182 | /         executor.spawn_boxed(async move {
[INFO] [stdout] 183 | |             ctx.with_world(|world| handler.run(world, 10));
[INFO] [stdout] 184 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 182 |         let _ = executor.spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/world_ctx.rs:203:9
[INFO] [stdout]     |
[INFO] [stdout] 203 | /         executor.spawn_boxed(async move {
[INFO] [stdout] 204 | |             let v = ctx.with_world(|world| world.resource::<Val>().0 * 6);
[INFO] [stdout] 205 | |             // SAFETY: test-only, single-threaded, Cell is alive.
[INFO] [stdout] 206 | |             unsafe { &*result_ptr }.set(v);
[INFO] [stdout] 207 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 203 |         let _ = executor.spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/world_ctx.rs:226:13
[INFO] [stdout]     |
[INFO] [stdout] 226 | /             executor.spawn_boxed(async move {
[INFO] [stdout] 227 | |                 ctx.with_world(|world| {
[INFO] [stdout] 228 | |                     world.resource_mut::<Out>().0 += i;
[INFO] [stdout] 229 | |                 });
[INFO] [stdout] 230 | |             });
[INFO] [stdout]     | |______________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 226 |             let _ = executor.spawn_boxed(async move {
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/lib.rs:840:9
[INFO] [stdout]     |
[INFO] [stdout] 840 | /         exec.spawn_boxed(async move {
[INFO] [stdout] 841 | |             // SAFETY: single-threaded, flag lives on stack.
[INFO] [stdout] 842 | |             unsafe { *flag = true };
[INFO] [stdout] 843 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 840 |         let _ = exec.spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/lib.rs:857:13
[INFO] [stdout]     |
[INFO] [stdout] 857 |             exec.spawn_boxed(async {});
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 857 |             let _ = exec.spawn_boxed(async {});
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/lib.rs:875:9
[INFO] [stdout]     |
[INFO] [stdout] 875 |         exec.spawn_boxed(std::future::pending::<()>());
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 875 |         let _ = exec.spawn_boxed(std::future::pending::<()>());
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/lib.rs:890:9
[INFO] [stdout]     |
[INFO] [stdout] 890 | /         exec.spawn_boxed(async {
[INFO] [stdout] 891 | |             // Immediately ready.
[INFO] [stdout] 892 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 890 |         let _ = exec.spawn_boxed(async {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/lib.rs:913:9
[INFO] [stdout]     |
[INFO] [stdout] 913 | /         exec.spawn_boxed(async move {
[INFO] [stdout] 914 | |             struct SelfWake {
[INFO] [stdout] 915 | |                 counter: Rc<Cell<u32>>,
[INFO] [stdout] ...   |
[INFO] [stdout] 930 | |             SelfWake { counter: c }.await;
[INFO] [stdout] 931 | |         });
[INFO] [stdout]     | |__________^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 913 |         let _ = exec.spawn_boxed(async move {
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `task::JoinHandle::<T>::abort` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/lib.rs:964:9
[INFO] [stdout]     |
[INFO] [stdout] 964 |         handle.abort(); // consumes handle
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: returns whether the task was still running
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 964 |         let _ = handle.abort(); // consumes handle
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/lib.rs:969:9
[INFO] [stdout]     |
[INFO] [stdout] 969 |         exec.spawn_boxed(async {});
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 969 |         let _ = exec.spawn_boxed(async {});
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]    --> nexus-async-rt/src/lib.rs:985:13
[INFO] [stdout]     |
[INFO] [stdout] 985 |             exec.spawn_boxed(async {});
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 985 |             let _ = exec.spawn_boxed(async {});
[INFO] [stdout]     |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `task::JoinHandle::<T>::abort` that must be used
[INFO] [stdout]     --> nexus-async-rt/src/lib.rs:1037:9
[INFO] [stdout]      |
[INFO] [stdout] 1037 |         handle.abort();
[INFO] [stdout]      |         ^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: returns whether the task was still running
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1037 |         let _ = handle.abort();
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]     --> nexus-async-rt/src/lib.rs:1040:9
[INFO] [stdout]      |
[INFO] [stdout] 1040 | /         exec.spawn_boxed(async move {
[INFO] [stdout] 1041 | |             p.set(true);
[INFO] [stdout] 1042 | |         });
[INFO] [stdout]      | |__________^
[INFO] [stdout]      |
[INFO] [stdout]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1040 |         let _ = exec.spawn_boxed(async move {
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]     --> nexus-async-rt/src/lib.rs:1063:9
[INFO] [stdout]      |
[INFO] [stdout] 1063 |         exec.spawn_boxed(std::future::pending::<()>());
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1063 |         let _ = exec.spawn_boxed(std::future::pending::<()>());
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]     --> nexus-async-rt/src/lib.rs:1064:9
[INFO] [stdout]      |
[INFO] [stdout] 1064 |         exec.spawn_boxed(std::future::pending::<()>());
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1064 |         let _ = exec.spawn_boxed(std::future::pending::<()>());
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `task::JoinHandle` that must be used
[INFO] [stdout]     --> nexus-async-rt/src/lib.rs:1089:9
[INFO] [stdout]      |
[INFO] [stdout] 1089 |         exec.spawn_boxed(Noop);
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]      |
[INFO] [stdout] 1089 |         let _ = exec.spawn_boxed(Noop);
[INFO] [stdout]      |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling nexus-pool v1.0.4 (/opt/rustwide/workdir/nexus-pool)
[INFO] [stderr]    Compiling nexus-stats-core v1.2.1 (/opt/rustwide/workdir/nexus-stats-core)
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 4m 32s
[INFO] running `Command { std: "docker" "inspect" "3779d4f3b833f3d57ecf28c6eb6e4fc8f575172948d5526cc5acd065290ed0e2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3779d4f3b833f3d57ecf28c6eb6e4fc8f575172948d5526cc5acd065290ed0e2", kill_on_drop: false }`
[INFO] [stdout] 3779d4f3b833f3d57ecf28c6eb6e4fc8f575172948d5526cc5acd065290ed0e2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+33835004928d3bf65db4d4712e1330766263b0bd" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 18b00de6e0a48104e25c2adf6e24126d52d1ea739e4ebf4c32884565a1dc6a26
[INFO] running `Command { std: "docker" "start" "-a" "18b00de6e0a48104e25c2adf6e24126d52d1ea739e4ebf4c32884565a1dc6a26", kill_on_drop: false }`
[INFO] [stderr] warning: output filename collision at /opt/rustwide/target/debug/examples/asm_check
[INFO] [stderr]   |
[INFO] [stderr]   = note: the example target `asm_check` in package `nexus-slab v2.3.4 (/opt/rustwide/workdir/nexus-slab)` has the same output filename as the example target `asm_check` in package `nexus-queue v1.3.1 (/opt/rustwide/workdir/nexus-queue)`
[INFO] [stderr]   = note: this may become a hard error in the future; see <https://github.com/rust-lang/cargo/issues/6313>
[INFO] [stderr]   = help: consider changing their names to be unique or compiling them separately
[INFO] [stderr] warning: output filename collision at /opt/rustwide/target/debug/examples/asm_check.dwp
[INFO] [stderr]   |
[INFO] [stderr]   = note: the example target `asm_check` in package `nexus-slab v2.3.4 (/opt/rustwide/workdir/nexus-slab)` has the same output filename as the example target `asm_check` in package `nexus-queue v1.3.1 (/opt/rustwide/workdir/nexus-queue)`
[INFO] [stderr]   = note: this may become a hard error in the future; see <https://github.com/rust-lang/cargo/issues/6313>
[INFO] [stderr]   = help: consider changing their names to be unique or compiling them separately
[INFO] [stderr] warning: function `rdtsc` is never used
[INFO] [stderr]   --> nexus-async-rt/tests/vs_tokio_dispatch.rs:21:4
[INFO] [stderr]    |
[INFO] [stderr] 21 | fn rdtsc() -> u64 {
[INFO] [stderr]    |    ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/vs_tokio_dispatch.rs:111:9
[INFO] [stderr]     |
[INFO] [stderr] 111 | /         executor.spawn_boxed(BenchTask {
[INFO] [stderr] 112 | |             count: 0,
[INFO] [stderr] 113 | |             target: TOTAL_POLLS as u64,
[INFO] [stderr] 114 | |             timestamps: ts,
[INFO] [stderr] 115 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 111 |         let _ = executor.spawn_boxed(BenchTask {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]   --> nexus-async-rt/tests/channel.rs:26:9
[INFO] [stderr]    |
[INFO] [stderr] 26 | /         spawn_boxed(async move {
[INFO] [stderr] 27 | |             for i in 0..10 {
[INFO] [stderr] 28 | |                 tx.send(i).await.unwrap();
[INFO] [stderr] 29 | |             }
[INFO] [stderr] 30 | |         });
[INFO] [stderr]    | |__________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 26 |         let _ = spawn_boxed(async move {
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]   --> nexus-async-rt/tests/channel.rs:54:13
[INFO] [stderr]    |
[INFO] [stderr] 54 | /             spawn_boxed(async move {
[INFO] [stderr] 55 | |                 for i in 0..100 {
[INFO] [stderr] 56 | |                     tx.send(producer_id * 1000 + i).await.unwrap();
[INFO] [stderr] 57 | |                 }
[INFO] [stderr] 58 | |             });
[INFO] [stderr]    | |______________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 54 |             let _ = spawn_boxed(async move {
[INFO] [stderr]    |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]   --> nexus-async-rt/tests/channel.rs:86:9
[INFO] [stderr]    |
[INFO] [stderr] 86 | /         spawn_boxed(async move {
[INFO] [stderr] 87 | |             for i in 0..1000 {
[INFO] [stderr] 88 | |                 tx.send(i).await.unwrap();
[INFO] [stderr] 89 | |             }
[INFO] [stderr] 90 | |         });
[INFO] [stderr]    | |__________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 86 |         let _ = spawn_boxed(async move {
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/channel.rs:111:9
[INFO] [stderr]     |
[INFO] [stderr] 111 | /         spawn_boxed(async move {
[INFO] [stderr] 112 | |             tx.send(1).await.unwrap();
[INFO] [stderr] 113 | |             tx.send(2).await.unwrap();
[INFO] [stderr] 114 | |             // sender dropped here
[INFO] [stderr] 115 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 111 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/channel.rs:136:9
[INFO] [stderr]     |
[INFO] [stderr] 136 | /         spawn_boxed(async move {
[INFO] [stderr] 137 | |             // Fill buffer.
[INFO] [stderr] 138 | |             tx.send(1).await.unwrap();
[INFO] [stderr] 139 | |             tx.send(2).await.unwrap();
[INFO] [stderr] ...   |
[INFO] [stderr] 145 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 136 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/channel.rs:167:9
[INFO] [stderr]     |
[INFO] [stderr] 167 | /         spawn_boxed(async move {
[INFO] [stderr] 168 | |             for i in 0..100_000u64 {
[INFO] [stderr] 169 | |                 tx.send(i).await.unwrap();
[INFO] [stderr] 170 | |             }
[INFO] [stderr] 171 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 167 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> nexus-async-rt/tests/shutdown_quiesce.rs:16:9
[INFO] [stderr]    |
[INFO] [stderr] 16 |     let mut wb = WorldBuilder::new();
[INFO] [stderr]    |         ----^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> nexus-async-rt/tests/shutdown_quiesce.rs:28:9
[INFO] [stderr]    |
[INFO] [stderr] 28 |     let mut wb = WorldBuilder::new();
[INFO] [stderr]    |         ----^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> nexus-async-rt/tests/shutdown_quiesce.rs:64:9
[INFO] [stderr]    |
[INFO] [stderr] 64 |     let mut wb = WorldBuilder::new();
[INFO] [stderr]    |         ----^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> nexus-async-rt/tests/shutdown_quiesce.rs:85:9
[INFO] [stderr]    |
[INFO] [stderr] 85 |     let mut wb = WorldBuilder::new();
[INFO] [stderr]    |         ----^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> nexus-async-rt/tests/shutdown_quiesce.rs:115:9
[INFO] [stderr]     |
[INFO] [stderr] 115 |     let mut wb = WorldBuilder::new();
[INFO] [stderr]     |         ----^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> nexus-async-rt/tests/shutdown_quiesce.rs:131:9
[INFO] [stderr]     |
[INFO] [stderr] 131 |     let mut wb = WorldBuilder::new();
[INFO] [stderr]     |         ----^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> nexus-async-rt/tests/shutdown_quiesce.rs:193:9
[INFO] [stderr]     |
[INFO] [stderr] 193 |     let mut wb = WorldBuilder::new();
[INFO] [stderr]     |         ----^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: `nexus-async-rt` (test "vs_tokio_dispatch") generated 2 warnings
[INFO] [stderr] warning: `nexus-async-rt` (test "channel") generated 6 warnings
[INFO] [stderr] warning: `nexus-async-rt` (test "shutdown_quiesce") generated 7 warnings (run `cargo fix --test "shutdown_quiesce" -p nexus-async-rt` to apply 7 suggestions)
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]   --> nexus-async-rt/tests/channel_deadlock.rs:34:9
[INFO] [stderr]    |
[INFO] [stderr] 34 | /         spawn_boxed(async move {
[INFO] [stderr] 35 | |             f.await;
[INFO] [stderr] 36 | |             flag.set(true);
[INFO] [stderr] 37 | |         });
[INFO] [stderr]    | |__________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 34 |         let _ = spawn_boxed(async move {
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]   --> nexus-async-rt/tests/channel_deadlock.rs:62:9
[INFO] [stderr]    |
[INFO] [stderr] 62 | /         spawn_boxed(async move {
[INFO] [stderr] 63 | |             for i in 0..10_000 {
[INFO] [stderr] 64 | |                 tx.send(i).await.unwrap();
[INFO] [stderr] 65 | |             }
[INFO] [stderr] 66 | |         });
[INFO] [stderr]    | |__________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 62 |         let _ = spawn_boxed(async move {
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]   --> nexus-async-rt/tests/channel_deadlock.rs:85:9
[INFO] [stderr]    |
[INFO] [stderr] 85 | /         spawn_boxed(async move {
[INFO] [stderr] 86 | |             for i in 0..10_000 {
[INFO] [stderr] 87 | |                 tx.send(i).await.unwrap();
[INFO] [stderr] 88 | |             }
[INFO] [stderr] 89 | |         });
[INFO] [stderr]    | |__________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 85 |         let _ = spawn_boxed(async move {
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/channel_deadlock.rs:106:13
[INFO] [stderr]     |
[INFO] [stderr] 106 | /             spawn_boxed(async move {
[INFO] [stderr] 107 | |                 for i in 0..1000 {
[INFO] [stderr] 108 | |                     tx.send(producer_id * 10_000 + i).await.unwrap();
[INFO] [stderr] 109 | |                 }
[INFO] [stderr] 110 | |             });
[INFO] [stderr]     | |______________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 106 |             let _ = spawn_boxed(async move {
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/channel_deadlock.rs:135:9
[INFO] [stderr]     |
[INFO] [stderr] 135 | /         spawn_boxed(async move {
[INFO] [stderr] 136 | |             for i in 0..10_000 {
[INFO] [stderr] 137 | |                 tx.send(i).await.unwrap();
[INFO] [stderr] 138 | |             }
[INFO] [stderr] 139 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 135 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/channel_deadlock.rs:159:9
[INFO] [stderr]     |
[INFO] [stderr] 159 | /         spawn_boxed(async move {
[INFO] [stderr] 160 | |             let data = [0xABu8; 32];
[INFO] [stderr] 161 | |             for _ in 0..10_000 {
[INFO] [stderr] 162 | |                 let mut claim = tx.claim(32).await.unwrap();
[INFO] [stderr] ...   |
[INFO] [stderr] 166 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 159 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/channel_deadlock.rs:183:9
[INFO] [stderr]     |
[INFO] [stderr] 183 | /         spawn_boxed(async move {
[INFO] [stderr] 184 | |             for i in 0u64..5_000 {
[INFO] [stderr] 185 | |                 let mut claim = tx.claim(8).await.unwrap();
[INFO] [stderr] 186 | |                 claim.copy_from_slice(&i.to_le_bytes());
[INFO] [stderr] ...   |
[INFO] [stderr] 189 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 183 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/channel_deadlock.rs:208:9
[INFO] [stderr]     |
[INFO] [stderr] 208 | /         spawn_boxed(async move {
[INFO] [stderr] 209 | |             let data = [0xCDu8; 32];
[INFO] [stderr] 210 | |             for _ in 0..10_000 {
[INFO] [stderr] 211 | |                 let mut claim = tx.claim(32).await.unwrap();
[INFO] [stderr] ...   |
[INFO] [stderr] 215 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 208 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/channel_deadlock.rs:232:13
[INFO] [stderr]     |
[INFO] [stderr] 232 | /             spawn_boxed(async move {
[INFO] [stderr] 233 | |                 for i in 0u32..500 {
[INFO] [stderr] 234 | |                     let val = producer_id * 10_000 + i;
[INFO] [stderr] 235 | |                     let mut claim = tx.claim(4).await.unwrap();
[INFO] [stderr] ...   |
[INFO] [stderr] 239 | |             });
[INFO] [stderr]     | |______________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 232 |             let _ = spawn_boxed(async move {
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: function `rdtsc` is never used
[INFO] [stderr]   --> nexus-async-rt/tests/dispatch_histo.rs:20:4
[INFO] [stderr]    |
[INFO] [stderr] 20 | fn rdtsc() -> u64 {
[INFO] [stderr]    |    ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]   --> nexus-async-rt/tests/dispatch_histo.rs:69:5
[INFO] [stderr]    |
[INFO] [stderr] 69 | /     executor.spawn_boxed(InstrumentedTask {
[INFO] [stderr] 70 | |         count: 0,
[INFO] [stderr] 71 | |         target: total,
[INFO] [stderr] 72 | |         entries: e,
[INFO] [stderr] 73 | |     });
[INFO] [stderr]    | |______^
[INFO] [stderr]    |
[INFO] [stderr]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 69 |     let _ = executor.spawn_boxed(InstrumentedTask {
[INFO] [stderr]    |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]   --> nexus-async-rt/tests/net_udp.rs:34:9
[INFO] [stderr]    |
[INFO] [stderr] 34 | /         spawn_boxed(async move {
[INFO] [stderr] 35 | |             let mut s = recv_sock;
[INFO] [stderr] 36 | |             let mut buf = [0u8; 64];
[INFO] [stderr] 37 | |             let (n, from) = s.recv_from(&mut buf).await.unwrap();
[INFO] [stderr] ...  |
[INFO] [stderr] 40 | |             flag.set(true);
[INFO] [stderr] 41 | |         });
[INFO] [stderr]    | |__________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 34 |         let _ = spawn_boxed(async move {
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]   --> nexus-async-rt/tests/net_udp.rs:43:9
[INFO] [stderr]    |
[INFO] [stderr] 43 | /         spawn_boxed(async move {
[INFO] [stderr] 44 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stderr] 45 | |             let mut s =
[INFO] [stderr] 46 | |                 UdpSocket::bind("127.0.0.1:0".parse().unwrap(), nexus_async_rt::io()).unwrap();
[INFO] [stderr] 47 | |             s.send_to(b"hello udp", recv_addr).await.unwrap();
[INFO] [stderr] 48 | |         });
[INFO] [stderr]    | |__________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 43 |         let _ = spawn_boxed(async move {
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]   --> nexus-async-rt/tests/net_udp.rs:72:9
[INFO] [stderr]    |
[INFO] [stderr] 72 | /         spawn_boxed(async move {
[INFO] [stderr] 73 | |             let mut a = a_sock;
[INFO] [stderr] 74 | |             a.connect(b_addr).unwrap();
[INFO] [stderr] 75 | |             a.send(b"connected-msg").await.unwrap();
[INFO] [stderr] 76 | |         });
[INFO] [stderr]    | |__________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 72 |         let _ = spawn_boxed(async move {
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]   --> nexus-async-rt/tests/net_udp.rs:78:9
[INFO] [stderr]    |
[INFO] [stderr] 78 | /         spawn_boxed(async move {
[INFO] [stderr] 79 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stderr] 80 | |             let mut b = b_sock;
[INFO] [stderr] 81 | |             b.connect(a_addr).unwrap();
[INFO] [stderr] ...  |
[INFO] [stderr] 85 | |             flag.set(true);
[INFO] [stderr] 86 | |         });
[INFO] [stderr]    | |__________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 78 |         let _ = spawn_boxed(async move {
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_udp.rs:109:9
[INFO] [stderr]     |
[INFO] [stderr] 109 | /         spawn_boxed(async move {
[INFO] [stderr] 110 | |             let mut s = server_sock;
[INFO] [stderr] 111 | |             let mut buf = [0u8; 64];
[INFO] [stderr] 112 | |             let (n, peer) = s.recv_from(&mut buf).await.unwrap();
[INFO] [stderr] 113 | |             s.send_to(&buf[..n], peer).await.unwrap();
[INFO] [stderr] 114 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 109 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_udp.rs:116:9
[INFO] [stderr]     |
[INFO] [stderr] 116 | /         spawn_boxed(async move {
[INFO] [stderr] 117 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stderr] 118 | |             let mut c =
[INFO] [stderr] 119 | |                 UdpSocket::bind("127.0.0.1:0".parse().unwrap(), nexus_async_rt::io()).unwrap();
[INFO] [stderr] ...   |
[INFO] [stderr] 124 | |             flag.set(true);
[INFO] [stderr] 125 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 116 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_udp.rs:148:9
[INFO] [stderr]     |
[INFO] [stderr] 148 | /         spawn_boxed(async move {
[INFO] [stderr] 149 | |             let mut s = recv_sock;
[INFO] [stderr] 150 | |             let mut buf = [0u8; 64];
[INFO] [stderr] 151 | |             for _ in 0..5 {
[INFO] [stderr] ...   |
[INFO] [stderr] 156 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 148 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_udp.rs:158:9
[INFO] [stderr]     |
[INFO] [stderr] 158 | /         spawn_boxed(async move {
[INFO] [stderr] 159 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stderr] 160 | |             let mut c =
[INFO] [stderr] 161 | |                 UdpSocket::bind("127.0.0.1:0".parse().unwrap(), nexus_async_rt::io()).unwrap();
[INFO] [stderr] ...   |
[INFO] [stderr] 166 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 158 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_udp.rs:228:9
[INFO] [stderr]     |
[INFO] [stderr] 228 | /         spawn_boxed(async move {
[INFO] [stderr] 229 | |             let a = a;
[INFO] [stderr] 230 | |             a.connect(b_addr).unwrap();
[INFO] [stderr] 231 | |             let n = a.try_send(b"try-data").unwrap();
[INFO] [stderr] 232 | |             assert_eq!(n, 8);
[INFO] [stderr] 233 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 228 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_udp.rs:235:9
[INFO] [stderr]     |
[INFO] [stderr] 235 | /         spawn_boxed(async move {
[INFO] [stderr] 236 | |             nexus_async_rt::sleep(Duration::from_millis(50)).await;
[INFO] [stderr] 237 | |             let b = b;
[INFO] [stderr] 238 | |             b.connect(a_addr).unwrap();
[INFO] [stderr] ...   |
[INFO] [stderr] 249 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 235 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_udp.rs:276:9
[INFO] [stderr]     |
[INFO] [stderr] 276 | /         spawn_boxed(async move {
[INFO] [stderr] 277 | |             let mut s = sock;
[INFO] [stderr] 278 | |             let mut buf = [0u8; 64];
[INFO] [stderr] 279 | |             let (n, _) = s.recv_from(&mut buf).await.unwrap();
[INFO] [stderr] 280 | |             assert_eq!(&buf[..n], b"from-std");
[INFO] [stderr] 281 | |             flag.set(true);
[INFO] [stderr] 282 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 276 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_udp.rs:284:9
[INFO] [stderr]     |
[INFO] [stderr] 284 | /         spawn_boxed(async move {
[INFO] [stderr] 285 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stderr] 286 | |             let mut s =
[INFO] [stderr] 287 | |                 UdpSocket::bind("127.0.0.1:0".parse().unwrap(), nexus_async_rt::io()).unwrap();
[INFO] [stderr] 288 | |             s.send_to(b"from-std", addr).await.unwrap();
[INFO] [stderr] 289 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 284 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_udp.rs:325:9
[INFO] [stderr]     |
[INFO] [stderr] 325 | /         spawn_boxed(async move {
[INFO] [stderr] 326 | |             let mut s = recv_sock;
[INFO] [stderr] 327 | |             let mut buf = [0u8; 64];
[INFO] [stderr] 328 | |             let (n, peer) = s.peek_from(&mut buf).await.unwrap();
[INFO] [stderr] ...   |
[INFO] [stderr] 333 | |             flag.set(true);
[INFO] [stderr] 334 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 325 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_udp.rs:336:9
[INFO] [stderr]     |
[INFO] [stderr] 336 | /         spawn_boxed(async move {
[INFO] [stderr] 337 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stderr] 338 | |             let mut s =
[INFO] [stderr] 339 | |                 UdpSocket::bind("127.0.0.1:0".parse().unwrap(), nexus_async_rt::io()).unwrap();
[INFO] [stderr] 340 | |             s.send_to(b"peek-data", recv_addr).await.unwrap();
[INFO] [stderr] 341 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 336 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_udp.rs:379:9
[INFO] [stderr]     |
[INFO] [stderr] 379 | /         spawn_boxed(async move {
[INFO] [stderr] 380 | |             let mut s = recv_sock;
[INFO] [stderr] 381 | |             let mut buf = [0u8; 64];
[INFO] [stderr] 382 | |             let (n, _) = s.recv_from(&mut buf).await.unwrap();
[INFO] [stderr] 383 | |             assert_eq!(&buf[..n], b"mcast");
[INFO] [stderr] 384 | |             flag.set(true);
[INFO] [stderr] 385 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 379 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_udp.rs:387:9
[INFO] [stderr]     |
[INFO] [stderr] 387 | /         spawn_boxed(async move {
[INFO] [stderr] 388 | |             nexus_async_rt::sleep(Duration::from_millis(50)).await;
[INFO] [stderr] 389 | |             let mut s =
[INFO] [stderr] 390 | |                 UdpSocket::bind("0.0.0.0:0".parse().unwrap(), nexus_async_rt::io()).unwrap();
[INFO] [stderr] 391 | |             let target: std::net::SocketAddr = format!("239.255.0.1:{recv_port}").parse().unwrap();
[INFO] [stderr] 392 | |             s.send_to(b"mcast", target).await.unwrap();
[INFO] [stderr] 393 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 387 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `nexus-async-rt` (test "channel_deadlock") generated 9 warnings
[INFO] [stderr] warning: `nexus-async-rt` (test "dispatch_histo") generated 2 warnings
[INFO] [stderr] warning: `nexus-async-rt` (test "net_udp") generated 16 warnings
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]   --> nexus-async-rt/tests/net_tcp.rs:30:9
[INFO] [stderr]    |
[INFO] [stderr] 30 | /         spawn_boxed(async move {
[INFO] [stderr] 31 | |             let (mut s, _) = listener.accept().await.unwrap();
[INFO] [stderr] 32 | |             let mut buf = [0u8; 128];
[INFO] [stderr] 33 | |             let n = s.read(&mut buf).await.unwrap();
[INFO] [stderr] 34 | |             s.write_all(&buf[..n]).await.unwrap();
[INFO] [stderr] 35 | |         });
[INFO] [stderr]    | |__________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 30 |         let _ = spawn_boxed(async move {
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]   --> nexus-async-rt/tests/net_tcp.rs:37:9
[INFO] [stderr]    |
[INFO] [stderr] 37 | /         spawn_boxed(async move {
[INFO] [stderr] 38 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stderr] 39 | |             let mut c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stderr] 40 | |             c.write_all(b"hello world").await.unwrap();
[INFO] [stderr] ...  |
[INFO] [stderr] 44 | |             flag.set(true);
[INFO] [stderr] 45 | |         });
[INFO] [stderr]    | |__________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 37 |         let _ = spawn_boxed(async move {
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]   --> nexus-async-rt/tests/net_tcp.rs:66:9
[INFO] [stderr]    |
[INFO] [stderr] 66 | /         spawn_boxed(async move {
[INFO] [stderr] 67 | |             for _ in 0..3 {
[INFO] [stderr] 68 | |                 let (mut s, _) = listener.accept().await.unwrap();
[INFO] [stderr] 69 | |                 let mut buf = [0u8; 64];
[INFO] [stderr] ...  |
[INFO] [stderr] 74 | |         });
[INFO] [stderr]    | |__________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 66 |         let _ = spawn_boxed(async move {
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]   --> nexus-async-rt/tests/net_tcp.rs:76:9
[INFO] [stderr]    |
[INFO] [stderr] 76 | /         spawn_boxed(async move {
[INFO] [stderr] 77 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stderr] 78 | |             for i in 0..3u8 {
[INFO] [stderr] 79 | |                 let mut c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stderr] ...  |
[INFO] [stderr] 86 | |         });
[INFO] [stderr]    | |__________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 76 |         let _ = spawn_boxed(async move {
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_tcp.rs:113:9
[INFO] [stderr]     |
[INFO] [stderr] 113 | /         spawn_boxed(async move {
[INFO] [stderr] 114 | |             let (mut s, _) = listener.accept().await.unwrap();
[INFO] [stderr] 115 | |             let mut received = Vec::new();
[INFO] [stderr] 116 | |             let mut buf = [0u8; 8192];
[INFO] [stderr] ...   |
[INFO] [stderr] 126 | |             flag.set(true);
[INFO] [stderr] 127 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 113 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_tcp.rs:129:9
[INFO] [stderr]     |
[INFO] [stderr] 129 | /         spawn_boxed(async move {
[INFO] [stderr] 130 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stderr] 131 | |             let mut c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stderr] 132 | |             c.write_all(&data).await.unwrap();
[INFO] [stderr] 133 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 129 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_tcp.rs:158:9
[INFO] [stderr]     |
[INFO] [stderr] 158 | /         spawn_boxed(async move {
[INFO] [stderr] 159 | |             let (mut s, _) = listener.accept().await.unwrap();
[INFO] [stderr] 160 | |             let (mut rd, mut wr) = s.split();
[INFO] [stderr] 161 | |             let mut buf = [0u8; 64];
[INFO] [stderr] ...   |
[INFO] [stderr] 168 | |                 .unwrap();
[INFO] [stderr] 169 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 158 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_tcp.rs:171:9
[INFO] [stderr]     |
[INFO] [stderr] 171 | /         spawn_boxed(async move {
[INFO] [stderr] 172 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stderr] 173 | |             let mut c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stderr] 174 | |             c.write_all(b"split").await.unwrap();
[INFO] [stderr] ...   |
[INFO] [stderr] 178 | |             flag.set(true);
[INFO] [stderr] 179 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 171 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_tcp.rs:198:9
[INFO] [stderr]     |
[INFO] [stderr] 198 | /         spawn_boxed(async move {
[INFO] [stderr] 199 | |             let (s, _) = listener.accept().await.unwrap();
[INFO] [stderr] 200 | |             let (read_half, write_half) = s.into_split();
[INFO] [stderr] 201 | |             let _stream = read_half.reunite(write_half).unwrap();
[INFO] [stderr] 202 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 198 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_tcp.rs:204:9
[INFO] [stderr]     |
[INFO] [stderr] 204 | /         spawn_boxed(async move {
[INFO] [stderr] 205 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stderr] 206 | |             let _c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stderr] 207 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 204 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_tcp.rs:230:9
[INFO] [stderr]     |
[INFO] [stderr] 230 | /         spawn_boxed(async move {
[INFO] [stderr] 231 | |             let (s, _) = listener.accept().await.unwrap();
[INFO] [stderr] 232 | |             s.set_nodelay(true).unwrap();
[INFO] [stderr] 233 | |             assert!(s.nodelay().unwrap());
[INFO] [stderr] ...   |
[INFO] [stderr] 243 | |             flag.set(true);
[INFO] [stderr] 244 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 230 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_tcp.rs:246:9
[INFO] [stderr]     |
[INFO] [stderr] 246 | /         spawn_boxed(async move {
[INFO] [stderr] 247 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stderr] 248 | |             let _c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stderr] 249 | |             nexus_async_rt::sleep(Duration::from_millis(100)).await;
[INFO] [stderr] 250 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 246 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_tcp.rs:278:9
[INFO] [stderr]     |
[INFO] [stderr] 278 | /         spawn_boxed(async move {
[INFO] [stderr] 279 | |             let (mut s, _) = listener.accept().await.unwrap();
[INFO] [stderr] 280 | |             let mut buf = [0u8; 16];
[INFO] [stderr] 281 | |             let n = s.read(&mut buf).await.unwrap();
[INFO] [stderr] 282 | |             assert_eq!(&buf[..n], b"via-socket");
[INFO] [stderr] 283 | |             flag.set(true);
[INFO] [stderr] 284 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 278 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_tcp.rs:286:9
[INFO] [stderr]     |
[INFO] [stderr] 286 | /         spawn_boxed(async move {
[INFO] [stderr] 287 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stderr] 288 | |             let mut c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stderr] 289 | |             c.write_all(b"via-socket").await.unwrap();
[INFO] [stderr] 290 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 286 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_tcp.rs:315:9
[INFO] [stderr]     |
[INFO] [stderr] 315 | /         spawn_boxed(async move {
[INFO] [stderr] 316 | |             let (s, _) = listener.accept().await.unwrap();
[INFO] [stderr] 317 | |             match s.try_write(b"data") {
[INFO] [stderr] 318 | |                 Ok(n) => assert!(n > 0),
[INFO] [stderr] ...   |
[INFO] [stderr] 322 | |             flag.set(true);
[INFO] [stderr] 323 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 315 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_tcp.rs:325:9
[INFO] [stderr]     |
[INFO] [stderr] 325 | /         spawn_boxed(async move {
[INFO] [stderr] 326 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stderr] 327 | |             let _c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stderr] 328 | |             nexus_async_rt::sleep(Duration::from_millis(100)).await;
[INFO] [stderr] 329 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 325 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_tcp.rs:356:9
[INFO] [stderr]     |
[INFO] [stderr] 356 | /         spawn_boxed(async move {
[INFO] [stderr] 357 | |             let (mut s, _) = listener.accept().await.unwrap();
[INFO] [stderr] 358 | |             let mut buf = [0u8; 16];
[INFO] [stderr] 359 | |             let n = s.read(&mut buf).await.unwrap();
[INFO] [stderr] 360 | |             assert_eq!(&buf[..n], b"from_std");
[INFO] [stderr] 361 | |             flag.set(true);
[INFO] [stderr] 362 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 356 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_tcp.rs:364:9
[INFO] [stderr]     |
[INFO] [stderr] 364 | /         spawn_boxed(async move {
[INFO] [stderr] 365 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stderr] 366 | |             let mut c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stderr] 367 | |             c.write_all(b"from_std").await.unwrap();
[INFO] [stderr] 368 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 364 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_tcp.rs:389:9
[INFO] [stderr]     |
[INFO] [stderr] 389 | /         spawn_boxed(async move {
[INFO] [stderr] 390 | |             let (s, _) = listener.accept().await.unwrap();
[INFO] [stderr] 391 | |             let std_stream = s.into_std().unwrap();
[INFO] [stderr] 392 | |             assert!(std_stream.peer_addr().is_ok());
[INFO] [stderr] 393 | |             flag.set(true);
[INFO] [stderr] 394 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 389 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_tcp.rs:396:9
[INFO] [stderr]     |
[INFO] [stderr] 396 | /         spawn_boxed(async move {
[INFO] [stderr] 397 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stderr] 398 | |             let _c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stderr] 399 | |             nexus_async_rt::sleep(Duration::from_millis(100)).await;
[INFO] [stderr] 400 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 396 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_tcp.rs:425:9
[INFO] [stderr]     |
[INFO] [stderr] 425 | /         spawn_boxed(async move {
[INFO] [stderr] 426 | |             match TcpStream::connect(closed_addr, nexus_async_rt::io()) {
[INFO] [stderr] 427 | |                 Err(_) => flag.set(true),
[INFO] [stderr] 428 | |                 Ok(mut c) => {
[INFO] [stderr] ...   |
[INFO] [stderr] 435 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 425 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_tcp.rs:456:9
[INFO] [stderr]     |
[INFO] [stderr] 456 | /         spawn_boxed(async move {
[INFO] [stderr] 457 | |             let (_s, _) = listener.accept().await.unwrap();
[INFO] [stderr] 458 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 456 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/net_tcp.rs:460:9
[INFO] [stderr]     |
[INFO] [stderr] 460 | /         spawn_boxed(async move {
[INFO] [stderr] 461 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stderr] 462 | |             let mut c = TcpStream::connect(addr, nexus_async_rt::io()).unwrap();
[INFO] [stderr] 463 | |             nexus_async_rt::sleep(Duration::from_millis(50)).await;
[INFO] [stderr] ...   |
[INFO] [stderr] 467 | |             flag.set(true);
[INFO] [stderr] 468 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 460 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> nexus-async-rt/tests/shutdown_stats.rs:32:9
[INFO] [stderr]    |
[INFO] [stderr] 32 |     let mut wb = WorldBuilder::new();
[INFO] [stderr]    |         ----^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> nexus-async-rt/tests/shutdown_stats.rs:52:9
[INFO] [stderr]    |
[INFO] [stderr] 52 |     let mut wb = WorldBuilder::new();
[INFO] [stderr]    |         ----^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> nexus-async-rt/tests/shutdown_stats.rs:92:18
[INFO] [stderr]    |
[INFO] [stderr] 92 |         let (tx, mut rx) = nexus_async_rt::channel::mpsc::channel::<u64>(64);
[INFO] [stderr]    |                  ----^^
[INFO] [stderr]    |                  |
[INFO] [stderr]    |                  help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> nexus-async-rt/tests/shutdown_stats.rs:86:9
[INFO] [stderr]    |
[INFO] [stderr] 86 |     let mut wb = WorldBuilder::new();
[INFO] [stderr]    |         ----^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> nexus-async-rt/tests/shutdown_stats.rs:140:9
[INFO] [stderr]     |
[INFO] [stderr] 140 |     let mut wb = WorldBuilder::new();
[INFO] [stderr]     |         ----^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `nexus_async_rt::JoinHandle::<T>::abort` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/miri_channel.rs:453:9
[INFO] [stderr]     |
[INFO] [stderr] 453 |         jh.abort();
[INFO] [stderr]     |         ^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: returns whether the task was still running
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 453 |         let _ = jh.abort();
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `nexus_async_rt::JoinHandle::<T>::abort` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/miri_channel.rs:477:9
[INFO] [stderr]     |
[INFO] [stderr] 477 |         jh.abort();
[INFO] [stderr]     |         ^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: returns whether the task was still running
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 477 |         let _ = jh.abort();
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `nexus_async_rt::JoinHandle::<T>::abort` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/miri_channel.rs:502:9
[INFO] [stderr]     |
[INFO] [stderr] 502 |         jh.abort();
[INFO] [stderr]     |         ^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: returns whether the task was still running
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 502 |         let _ = jh.abort();
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `nexus-async-rt` (test "net_tcp") generated 23 warnings
[INFO] [stderr] warning: `nexus-async-rt` (test "shutdown_stats") generated 5 warnings (run `cargo fix --test "shutdown_stats" -p nexus-async-rt` to apply 5 suggestions)
[INFO] [stderr] warning: `nexus-async-rt` (test "miri_channel") generated 3 warnings
[INFO] [stderr] warning: unused import: `AsyncReadExt`
[INFO] [stderr]    --> nexus-async-rt/tests/vs_tokio.rs:128:21
[INFO] [stderr]     |
[INFO] [stderr] 128 |     use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stderr]     |                     ^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]   --> nexus-async-rt/tests/vs_tokio.rs:68:9
[INFO] [stderr]    |
[INFO] [stderr] 68 | /         spawn_boxed(async move {
[INFO] [stderr] 69 | |             let mut listener = listener;
[INFO] [stderr] 70 | |             let (mut s, _) = listener.accept().await.unwrap();
[INFO] [stderr] 71 | |             s.set_nodelay(true).unwrap();
[INFO] [stderr] ...  |
[INFO] [stderr] 80 | |         });
[INFO] [stderr]    | |__________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 68 |         let _ = spawn_boxed(async move {
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/vs_tokio.rs:84:9
[INFO] [stderr]     |
[INFO] [stderr]  84 | /         spawn_boxed(async move {
[INFO] [stderr]  85 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stderr]  86 | |             let mut c = TcpStream::connect(addr, io).unwrap();
[INFO] [stderr]  87 | |             c.set_nodelay(true).unwrap();
[INFO] [stderr] ...   |
[INFO] [stderr] 105 | |             writer.set(samples);
[INFO] [stderr] 106 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr]  84 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/vs_tokio.rs:217:9
[INFO] [stderr]     |
[INFO] [stderr] 217 | /         spawn_boxed(async move {
[INFO] [stderr] 218 | |             let mut b = b;
[INFO] [stderr] 219 | |             b.connect(a_addr).unwrap();
[INFO] [stderr] 220 | |             let mut buf = [0u8; MSG_SIZE];
[INFO] [stderr] ...   |
[INFO] [stderr] 228 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 217 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/vs_tokio.rs:231:9
[INFO] [stderr]     |
[INFO] [stderr] 231 | /         spawn_boxed(async move {
[INFO] [stderr] 232 | |             nexus_async_rt::sleep(Duration::from_millis(10)).await;
[INFO] [stderr] 233 | |             let mut a = a;
[INFO] [stderr] 234 | |             a.connect(b_addr).unwrap();
[INFO] [stderr] ...   |
[INFO] [stderr] 252 | |             writer.set(samples);
[INFO] [stderr] 253 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 231 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/channel_latency.rs:141:9
[INFO] [stderr]     |
[INFO] [stderr] 141 | /         spawn_boxed(async move {
[INFO] [stderr] 142 | |             for i in 0..(WARMUP + ITERS) {
[INFO] [stderr] 143 | |                 tx.send(i).await.unwrap();
[INFO] [stderr] 144 | |             }
[INFO] [stderr] 145 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 141 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/channel_latency.rs:180:9
[INFO] [stderr]     |
[INFO] [stderr] 180 | /         spawn_boxed(async move {
[INFO] [stderr] 181 | |             for i in 0..(WARMUP + ITERS) {
[INFO] [stderr] 182 | |                 tx.send(i).await.unwrap();
[INFO] [stderr] 183 | |             }
[INFO] [stderr] 184 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 180 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `nexus_async_rt::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/tests/channel_latency.rs:406:9
[INFO] [stderr]     |
[INFO] [stderr] 406 | /         spawn_boxed(async move {
[INFO] [stderr] 407 | |             for i in 0..(WARMUP + ITERS) {
[INFO] [stderr] 408 | |                 tx.send(i).await.unwrap();
[INFO] [stderr] 409 | |             }
[INFO] [stderr] 410 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 406 |         let _ = spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> nexus-async-rt/src/runtime.rs:1355:13
[INFO] [stderr]      |
[INFO] [stderr] 1355 |         let mut wb = WorldBuilder::new();
[INFO] [stderr]      |             ----^^
[INFO] [stderr]      |             |
[INFO] [stderr]      |             help: remove this `mut`
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> nexus-async-rt/src/runtime.rs:1447:13
[INFO] [stderr]      |
[INFO] [stderr] 1447 |         let mut wb = WorldBuilder::new();
[INFO] [stderr]      |             ----^^
[INFO] [stderr]      |             |
[INFO] [stderr]      |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> nexus-async-rt/src/runtime.rs:1468:13
[INFO] [stderr]      |
[INFO] [stderr] 1468 |         let mut wb = WorldBuilder::new();
[INFO] [stderr]      |             ----^^
[INFO] [stderr]      |             |
[INFO] [stderr]      |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> nexus-async-rt/src/runtime.rs:1565:13
[INFO] [stderr]      |
[INFO] [stderr] 1565 |         let mut wb = WorldBuilder::new();
[INFO] [stderr]      |             ----^^
[INFO] [stderr]      |             |
[INFO] [stderr]      |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> nexus-async-rt/src/runtime.rs:1578:13
[INFO] [stderr]      |
[INFO] [stderr] 1578 |         let mut wb = WorldBuilder::new();
[INFO] [stderr]      |             ----^^
[INFO] [stderr]      |             |
[INFO] [stderr]      |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> nexus-async-rt/src/runtime.rs:1596:13
[INFO] [stderr]      |
[INFO] [stderr] 1596 |         let mut wb = WorldBuilder::new();
[INFO] [stderr]      |             ----^^
[INFO] [stderr]      |             |
[INFO] [stderr]      |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> nexus-async-rt/src/runtime.rs:1609:13
[INFO] [stderr]      |
[INFO] [stderr] 1609 |         let mut wb = WorldBuilder::new();
[INFO] [stderr]      |             ----^^
[INFO] [stderr]      |             |
[INFO] [stderr]      |             help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::alloc::dealloc` is unsafe and requires unsafe block
[INFO] [stderr]     --> nexus-async-rt/src/task.rs:1326:13
[INFO] [stderr]      |
[INFO] [stderr] 1326 |             std::alloc::dealloc(ptr, layout);
[INFO] [stderr]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]      |
[INFO] [stderr]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stderr]     --> nexus-async-rt/src/task.rs:1324:9
[INFO] [stderr]      |
[INFO] [stderr] 1324 |         unsafe fn slab_free(ptr: *mut u8) {
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]      = note: requested on the command line with `-W unsafe-op-in-unsafe-fn`
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `BackoffBuilder::build` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/backoff.rs:414:9
[INFO] [stderr]     |
[INFO] [stderr] 414 | /         Backoff::builder()
[INFO] [stderr] 415 | |             .initial(Duration::from_secs(60))
[INFO] [stderr] 416 | |             .max_delay(Duration::from_secs(5))
[INFO] [stderr] 417 | |             .build();
[INFO] [stderr]     | |____________________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 414 |         let _ = Backoff::builder()
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/net/tcp.rs:985:13
[INFO] [stderr]     |
[INFO] [stderr] 985 | /             spawn_boxed(async move {
[INFO] [stderr] 986 | |                 let mut listener = listener;
[INFO] [stderr] 987 | |                 let (mut stream, _peer) = listener.accept().await.unwrap();
[INFO] [stderr] 988 | |                 let mut buf = [0u8; 64];
[INFO] [stderr] 989 | |                 let n = stream.read(&mut buf).await.unwrap();
[INFO] [stderr] 990 | |                 stream.write_all(&buf[..n]).await.unwrap();
[INFO] [stderr] 991 | |             });
[INFO] [stderr]     | |______________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 985 |             let _ = spawn_boxed(async move {
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]     --> nexus-async-rt/src/net/tcp.rs:995:13
[INFO] [stderr]      |
[INFO] [stderr]  995 | /             spawn_boxed(async move {
[INFO] [stderr]  996 | |                 crate::context::sleep(std::time::Duration::from_millis(10)).await;
[INFO] [stderr]  997 | |                 let mut client = TcpStream::connect(addr, io).unwrap();
[INFO] [stderr]  998 | |                 client.write_all(b"hello").await.unwrap();
[INFO] [stderr] ...    |
[INFO] [stderr] 1002 | |                 flag.set(true);
[INFO] [stderr] 1003 | |             });
[INFO] [stderr]      | |______________^
[INFO] [stderr]      |
[INFO] [stderr]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr]  995 |             let _ = spawn_boxed(async move {
[INFO] [stderr]      |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/net/udp.rs:443:13
[INFO] [stderr]     |
[INFO] [stderr] 443 | /             spawn_boxed(async move {
[INFO] [stderr] 444 | |                 let mut sock = recv_sock;
[INFO] [stderr] 445 | |                 let mut buf = [0u8; 64];
[INFO] [stderr] 446 | |                 let (n, _from) = sock.recv_from(&mut buf).await.unwrap();
[INFO] [stderr] 447 | |                 assert_eq!(&buf[..n], b"test");
[INFO] [stderr] 448 | |                 flag.set(true);
[INFO] [stderr] 449 | |             });
[INFO] [stderr]     | |______________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 443 |             let _ = spawn_boxed(async move {
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/net/udp.rs:452:13
[INFO] [stderr]     |
[INFO] [stderr] 452 | /             spawn_boxed(async move {
[INFO] [stderr] 453 | |                 crate::context::sleep(Duration::from_millis(10)).await;
[INFO] [stderr] 454 | |                 let mut sock =
[INFO] [stderr] 455 | |                     UdpSocket::bind("127.0.0.1:0".parse().unwrap(), crate::context::io()).unwrap();
[INFO] [stderr] 456 | |                 sock.send_to(b"test", recv_addr).await.unwrap();
[INFO] [stderr] 457 | |             });
[INFO] [stderr]     | |______________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 452 |             let _ = spawn_boxed(async move {
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/net/udp.rs:481:13
[INFO] [stderr]     |
[INFO] [stderr] 481 | /             spawn_boxed(async move {
[INFO] [stderr] 482 | |                 let mut server = server_sock;
[INFO] [stderr] 483 | |                 let mut buf = [0u8; 64];
[INFO] [stderr] 484 | |                 let (n, peer) = server.recv_from(&mut buf).await.unwrap();
[INFO] [stderr] 485 | |                 server.send_to(&buf[..n], peer).await.unwrap();
[INFO] [stderr] 486 | |             });
[INFO] [stderr]     | |______________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 481 |             let _ = spawn_boxed(async move {
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/net/udp.rs:490:13
[INFO] [stderr]     |
[INFO] [stderr] 490 | /             spawn_boxed(async move {
[INFO] [stderr] 491 | |                 crate::context::sleep(Duration::from_millis(10)).await;
[INFO] [stderr] 492 | |                 let client_addr: SocketAddr = "127.0.0.1:0".parse().unwrap();
[INFO] [stderr] 493 | |                 let mut client = UdpSocket::bind(client_addr, crate::context::io()).unwrap();
[INFO] [stderr] ...   |
[INFO] [stderr] 498 | |                 flag.set(true);
[INFO] [stderr] 499 | |             });
[INFO] [stderr]     | |______________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 490 |             let _ = spawn_boxed(async move {
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/net/udp.rs:524:13
[INFO] [stderr]     |
[INFO] [stderr] 524 | /             spawn_boxed(async move {
[INFO] [stderr] 525 | |                 let mut a = a_sock;
[INFO] [stderr] 526 | |                 a.connect(b_addr).unwrap();
[INFO] [stderr] 527 | |                 a.send(b"connected").await.unwrap();
[INFO] [stderr] 528 | |             });
[INFO] [stderr]     | |______________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 524 |             let _ = spawn_boxed(async move {
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/net/udp.rs:531:13
[INFO] [stderr]     |
[INFO] [stderr] 531 | /             spawn_boxed(async move {
[INFO] [stderr] 532 | |                 crate::context::sleep(Duration::from_millis(10)).await;
[INFO] [stderr] 533 | |                 let mut b = b_sock;
[INFO] [stderr] 534 | |                 b.connect(a_addr).unwrap();
[INFO] [stderr] ...   |
[INFO] [stderr] 538 | |                 flag.set(true);
[INFO] [stderr] 539 | |             });
[INFO] [stderr]     | |______________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 531 |             let _ = spawn_boxed(async move {
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]     --> nexus-async-rt/src/runtime.rs:1281:17
[INFO] [stderr]      |
[INFO] [stderr] 1281 | /                 spawn_boxed(async move {
[INFO] [stderr] 1282 | |                     crate::context::with_world(|world| {
[INFO] [stderr] 1283 | |                         world.resource_mut::<Out>().0 += i;
[INFO] [stderr] 1284 | |                     });
[INFO] [stderr] 1285 | |                 });
[INFO] [stderr]      | |__________________^
[INFO] [stderr]      |
[INFO] [stderr]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1281 |                 let _ = spawn_boxed(async move {
[INFO] [stderr]      |                 +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]     --> nexus-async-rt/src/runtime.rs:1314:13
[INFO] [stderr]      |
[INFO] [stderr] 1314 | /             spawn_boxed(async move {
[INFO] [stderr] 1315 | |                 crate::context::with_world(|world| {
[INFO] [stderr] 1316 | |                     world.resource_mut::<Out>().0 = 99;
[INFO] [stderr] 1317 | |                 });
[INFO] [stderr] 1318 | |             });
[INFO] [stderr]      | |______________^
[INFO] [stderr]      |
[INFO] [stderr]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1314 |             let _ = spawn_boxed(async move {
[INFO] [stderr]      |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]     --> nexus-async-rt/src/runtime.rs:1344:9
[INFO] [stderr]      |
[INFO] [stderr] 1344 |         spawn_boxed(async {});
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1344 |         let _ = spawn_boxed(async {});
[INFO] [stderr]      |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]     --> nexus-async-rt/src/runtime.rs:1360:13
[INFO] [stderr]      |
[INFO] [stderr] 1360 |             spawn_slab(async {});
[INFO] [stderr]      |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1360 |             let _ = spawn_slab(async {});
[INFO] [stderr]      |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]     --> nexus-async-rt/src/runtime.rs:1375:13
[INFO] [stderr]      |
[INFO] [stderr] 1375 | /             spawn_slab(async move {
[INFO] [stderr] 1376 | |                 crate::context::with_world(|world| {
[INFO] [stderr] 1377 | |                     world.resource_mut::<Out>().0 = 77;
[INFO] [stderr] 1378 | |                 });
[INFO] [stderr] 1379 | |             });
[INFO] [stderr]      | |______________^
[INFO] [stderr]      |
[INFO] [stderr]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1375 |             let _ = spawn_slab(async move {
[INFO] [stderr]      |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]     --> nexus-async-rt/src/runtime.rs:1399:13
[INFO] [stderr]      |
[INFO] [stderr] 1399 | /             spawn_boxed(async move {
[INFO] [stderr] 1400 | |                 crate::context::with_world(|world| {
[INFO] [stderr] 1401 | |                     world.resource_mut::<Out>().0 += 10;
[INFO] [stderr] 1402 | |                 });
[INFO] [stderr] 1403 | |             });
[INFO] [stderr]      | |______________^
[INFO] [stderr]      |
[INFO] [stderr]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1399 |             let _ = spawn_boxed(async move {
[INFO] [stderr]      |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]     --> nexus-async-rt/src/runtime.rs:1405:13
[INFO] [stderr]      |
[INFO] [stderr] 1405 | /             spawn_slab(async move {
[INFO] [stderr] 1406 | |                 crate::context::with_world(|world| {
[INFO] [stderr] 1407 | |                     world.resource_mut::<Out>().0 += 20;
[INFO] [stderr] 1408 | |                 });
[INFO] [stderr] 1409 | |             });
[INFO] [stderr]      | |______________^
[INFO] [stderr]      |
[INFO] [stderr]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1405 |             let _ = spawn_slab(async move {
[INFO] [stderr]      |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]     --> nexus-async-rt/src/runtime.rs:1433:13
[INFO] [stderr]      |
[INFO] [stderr] 1433 | /             claim.spawn(async move {
[INFO] [stderr] 1434 | |                 crate::context::with_world(|world| {
[INFO] [stderr] 1435 | |                     world.resource_mut::<Out>().0 = 55;
[INFO] [stderr] 1436 | |                 });
[INFO] [stderr] 1437 | |             });
[INFO] [stderr]      | |______________^
[INFO] [stderr]      |
[INFO] [stderr]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1433 |             let _ = claim.spawn(async move {
[INFO] [stderr]      |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]     --> nexus-async-rt/src/runtime.rs:1460:13
[INFO] [stderr]      |
[INFO] [stderr] 1460 |             claim.spawn(async {});
[INFO] [stderr]      |             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1460 |             let _ = claim.spawn(async {});
[INFO] [stderr]      |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]     --> nexus-async-rt/src/runtime.rs:1491:13
[INFO] [stderr]      |
[INFO] [stderr] 1491 | /             spawn_boxed(async move {
[INFO] [stderr] 1492 | |                 crate::context::with_world(|world| {
[INFO] [stderr] 1493 | |                     world.resource_mut::<Out>().0 += 10;
[INFO] [stderr] 1494 | |                 });
[INFO] [stderr] 1495 | |             });
[INFO] [stderr]      | |______________^
[INFO] [stderr]      |
[INFO] [stderr]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1491 |             let _ = spawn_boxed(async move {
[INFO] [stderr]      |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]     --> nexus-async-rt/src/runtime.rs:1498:13
[INFO] [stderr]      |
[INFO] [stderr] 1498 | /             claim.spawn(async move {
[INFO] [stderr] 1499 | |                 crate::context::with_world(|world| {
[INFO] [stderr] 1500 | |                     world.resource_mut::<Out>().0 += 20;
[INFO] [stderr] 1501 | |                 });
[INFO] [stderr] 1502 | |             });
[INFO] [stderr]      | |______________^
[INFO] [stderr]      |
[INFO] [stderr]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1498 |             let _ = claim.spawn(async move {
[INFO] [stderr]      |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]     --> nexus-async-rt/src/runtime.rs:1548:13
[INFO] [stderr]      |
[INFO] [stderr] 1548 | /             spawn_boxed(async move {
[INFO] [stderr] 1549 | |                 crate::context::sleep(Duration::from_millis(50)).await;
[INFO] [stderr] 1550 | |                 crate::context::with_world(|world| {
[INFO] [stderr] 1551 | |                     world.resource_mut::<Out>().0 = 42;
[INFO] [stderr] 1552 | |                 });
[INFO] [stderr] 1553 | |             });
[INFO] [stderr]      | |______________^
[INFO] [stderr]      |
[INFO] [stderr]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1548 |             let _ = spawn_boxed(async move {
[INFO] [stderr]      |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]     --> nexus-async-rt/src/runtime.rs:1666:13
[INFO] [stderr]      |
[INFO] [stderr] 1666 | /             spawn_boxed(async move {
[INFO] [stderr] 1667 | |                 crate::context::with_world(|world| {
[INFO] [stderr] 1668 | |                     world.resource_mut::<Out>().0 = 99;
[INFO] [stderr] 1669 | |                 });
[INFO] [stderr] 1670 | |             });
[INFO] [stderr]      | |______________^
[INFO] [stderr]      |
[INFO] [stderr]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1666 |             let _ = spawn_boxed(async move {
[INFO] [stderr]      |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/shutdown.rs:208:13
[INFO] [stderr]     |
[INFO] [stderr] 208 | /             spawn_boxed(async move {
[INFO] [stderr] 209 | |                 crate::context::sleep(std::time::Duration::from_millis(50)).await;
[INFO] [stderr] 210 | |                 sh.trigger();
[INFO] [stderr] 211 | |             });
[INFO] [stderr]     | |______________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 208 |             let _ = spawn_boxed(async move {
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/world_ctx.rs:131:9
[INFO] [stderr]     |
[INFO] [stderr] 131 | /         executor.spawn_boxed(async move {
[INFO] [stderr] 132 | |             ctx.with_world(|world| {
[INFO] [stderr] 133 | |                 let v = world.resource::<Val>().0;
[INFO] [stderr] 134 | |                 world.resource_mut::<Out>().0 = v + 10;
[INFO] [stderr] 135 | |             });
[INFO] [stderr] 136 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 131 |         let _ = executor.spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/world_ctx.rs:155:9
[INFO] [stderr]     |
[INFO] [stderr] 155 | /         executor.spawn_boxed(async move {
[INFO] [stderr] 156 | |             let v = ctx.with_world_ref(|world| world.resource::<Val>().0);
[INFO] [stderr] 157 | |             // SAFETY: test-only, single-threaded, Cell is alive.
[INFO] [stderr] 158 | |             unsafe { &*result_ptr }.set(v);
[INFO] [stderr] 159 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 155 |         let _ = executor.spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/world_ctx.rs:182:9
[INFO] [stderr]     |
[INFO] [stderr] 182 | /         executor.spawn_boxed(async move {
[INFO] [stderr] 183 | |             ctx.with_world(|world| handler.run(world, 10));
[INFO] [stderr] 184 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 182 |         let _ = executor.spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/world_ctx.rs:203:9
[INFO] [stderr]     |
[INFO] [stderr] 203 | /         executor.spawn_boxed(async move {
[INFO] [stderr] 204 | |             let v = ctx.with_world(|world| world.resource::<Val>().0 * 6);
[INFO] [stderr] 205 | |             // SAFETY: test-only, single-threaded, Cell is alive.
[INFO] [stderr] 206 | |             unsafe { &*result_ptr }.set(v);
[INFO] [stderr] 207 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 203 |         let _ = executor.spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/world_ctx.rs:226:13
[INFO] [stderr]     |
[INFO] [stderr] 226 | /             executor.spawn_boxed(async move {
[INFO] [stderr] 227 | |                 ctx.with_world(|world| {
[INFO] [stderr] 228 | |                     world.resource_mut::<Out>().0 += i;
[INFO] [stderr] 229 | |                 });
[INFO] [stderr] 230 | |             });
[INFO] [stderr]     | |______________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 226 |             let _ = executor.spawn_boxed(async move {
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/lib.rs:840:9
[INFO] [stderr]     |
[INFO] [stderr] 840 | /         exec.spawn_boxed(async move {
[INFO] [stderr] 841 | |             // SAFETY: single-threaded, flag lives on stack.
[INFO] [stderr] 842 | |             unsafe { *flag = true };
[INFO] [stderr] 843 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 840 |         let _ = exec.spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/lib.rs:857:13
[INFO] [stderr]     |
[INFO] [stderr] 857 |             exec.spawn_boxed(async {});
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 857 |             let _ = exec.spawn_boxed(async {});
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/lib.rs:875:9
[INFO] [stderr]     |
[INFO] [stderr] 875 |         exec.spawn_boxed(std::future::pending::<()>());
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 875 |         let _ = exec.spawn_boxed(std::future::pending::<()>());
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/lib.rs:890:9
[INFO] [stderr]     |
[INFO] [stderr] 890 | /         exec.spawn_boxed(async {
[INFO] [stderr] 891 | |             // Immediately ready.
[INFO] [stderr] 892 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 890 |         let _ = exec.spawn_boxed(async {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/lib.rs:913:9
[INFO] [stderr]     |
[INFO] [stderr] 913 | /         exec.spawn_boxed(async move {
[INFO] [stderr] 914 | |             struct SelfWake {
[INFO] [stderr] 915 | |                 counter: Rc<Cell<u32>>,
[INFO] [stderr] ...   |
[INFO] [stderr] 930 | |             SelfWake { counter: c }.await;
[INFO] [stderr] 931 | |         });
[INFO] [stderr]     | |__________^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 913 |         let _ = exec.spawn_boxed(async move {
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `task::JoinHandle::<T>::abort` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/lib.rs:964:9
[INFO] [stderr]     |
[INFO] [stderr] 964 |         handle.abort(); // consumes handle
[INFO] [stderr]     |         ^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: returns whether the task was still running
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 964 |         let _ = handle.abort(); // consumes handle
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/lib.rs:969:9
[INFO] [stderr]     |
[INFO] [stderr] 969 |         exec.spawn_boxed(async {});
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 969 |         let _ = exec.spawn_boxed(async {});
[INFO] [stderr]     |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]    --> nexus-async-rt/src/lib.rs:985:13
[INFO] [stderr]     |
[INFO] [stderr] 985 |             exec.spawn_boxed(async {});
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 985 |             let _ = exec.spawn_boxed(async {});
[INFO] [stderr]     |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused return value of `task::JoinHandle::<T>::abort` that must be used
[INFO] [stderr]     --> nexus-async-rt/src/lib.rs:1037:9
[INFO] [stderr]      |
[INFO] [stderr] 1037 |         handle.abort();
[INFO] [stderr]      |         ^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: returns whether the task was still running
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1037 |         let _ = handle.abort();
[INFO] [stderr]      |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]     --> nexus-async-rt/src/lib.rs:1040:9
[INFO] [stderr]      |
[INFO] [stderr] 1040 | /         exec.spawn_boxed(async move {
[INFO] [stderr] 1041 | |             p.set(true);
[INFO] [stderr] 1042 | |         });
[INFO] [stderr]      | |__________^
[INFO] [stderr]      |
[INFO] [stderr]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1040 |         let _ = exec.spawn_boxed(async move {
[INFO] [stderr]      |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]     --> nexus-async-rt/src/lib.rs:1063:9
[INFO] [stderr]      |
[INFO] [stderr] 1063 |         exec.spawn_boxed(std::future::pending::<()>());
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1063 |         let _ = exec.spawn_boxed(std::future::pending::<()>());
[INFO] [stderr]      |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]     --> nexus-async-rt/src/lib.rs:1064:9
[INFO] [stderr]      |
[INFO] [stderr] 1064 |         exec.spawn_boxed(std::future::pending::<()>());
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1064 |         let _ = exec.spawn_boxed(std::future::pending::<()>());
[INFO] [stderr]      |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `task::JoinHandle` that must be used
[INFO] [stderr]     --> nexus-async-rt/src/lib.rs:1089:9
[INFO] [stderr]      |
[INFO] [stderr] 1089 |         exec.spawn_boxed(Noop);
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: dropping a JoinHandle detaches the task — await it or call .abort()
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]      |
[INFO] [stderr] 1089 |         let _ = exec.spawn_boxed(Noop);
[INFO] [stderr]      |         +++++++
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0133`.
[INFO] [stderr] warning: `nexus-async-rt` (test "vs_tokio") generated 5 warnings
[INFO] [stderr] warning: `nexus-async-rt` (test "channel_latency") generated 3 warnings
[INFO] [stderr] warning: `nexus-async-rt` (lib test) generated 49 warnings (run `cargo fix --lib -p nexus-async-rt --tests` to apply 8 suggestions)
[INFO] [stderr] warning: unused import: `World`
[INFO] [stderr]   --> nexus-rt/tests/miri_tests.rs:11:26
[INFO] [stderr]    |
[INFO] [stderr] 11 | use nexus_rt::{Resource, World, WorldBuilder};
[INFO] [stderr]    |                          ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: struct `DropTracker` is never constructed
[INFO] [stderr]   --> nexus-rt/tests/miri_tests.rs:28:8
[INFO] [stderr]    |
[INFO] [stderr] 28 | struct DropTracker(#[allow(dead_code)] u64);
[INFO] [stderr]    |        ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]    --> nexus-rt/tests/miri_tests.rs:182:11
[INFO] [stderr]     |
[INFO] [stderr] 182 | struct R1(u64);
[INFO] [stderr]     |        -- ^^^
[INFO] [stderr]     |        |
[INFO] [stderr]     |        field in this struct
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider removing this field
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]    --> nexus-rt/tests/miri_tests.rs:184:11
[INFO] [stderr]     |
[INFO] [stderr] 184 | struct R2(u64);
[INFO] [stderr]     |        -- ^^^
[INFO] [stderr]     |        |
[INFO] [stderr]     |        field in this struct
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider removing this field
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]    --> nexus-rt/tests/miri_tests.rs:188:11
[INFO] [stderr]     |
[INFO] [stderr] 188 | struct R4(u64);
[INFO] [stderr]     |        -- ^^^
[INFO] [stderr]     |        |
[INFO] [stderr]     |        field in this struct
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider removing this field
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]    --> nexus-rt/tests/miri_tests.rs:190:11
[INFO] [stderr]     |
[INFO] [stderr] 190 | struct R5(u64);
[INFO] [stderr]     |        -- ^^^
[INFO] [stderr]     |        |
[INFO] [stderr]     |        field in this struct
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider removing this field
[INFO] [stderr] 
[INFO] [stderr] warning: field `0` is never read
[INFO] [stderr]    --> nexus-rt/tests/miri_tests.rs:192:11
[INFO] [stderr]     |
[INFO] [stderr] 192 | struct R6(u64);
[INFO] [stderr]     |        -- ^^^
[INFO] [stderr]     |        |
[INFO] [stderr]     |        field in this struct
[INFO] [stderr]     |
[INFO] [stderr]     = help: consider removing this field
[INFO] [stderr] 
[INFO] [stderr] warning: `nexus-rt` (test "miri_tests") generated 7 warnings (run `cargo fix --test "miri_tests" -p nexus-rt` to apply 1 suggestion)
[INFO] [stderr] warning: unused variable: `t1`
[INFO] [stderr]    --> nexus-notify/src/local.rs:255:13
[INFO] [stderr]     |
[INFO] [stderr] 255 |         let t1 = notify.register();
[INFO] [stderr]     |             ^^ help: if this is intentional, prefix it with an underscore: `_t1`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `nexus-notify` (lib test) generated 1 warning (run `cargo fix --lib -p nexus-notify --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.70s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/nexus_ascii-e3548edb49513aa5)
[INFO] [stdout] 
[INFO] [stdout] running 683 tests
[INFO] [stdout] test builder::tests::test_build ... ok
[INFO] [stdout] test builder::tests::test_build_empty ... ok
[INFO] [stdout] test builder::tests::test_build_hash_correct ... ok
[INFO] [stdout] test builder::tests::test_capacity_exhausted ... ok
[INFO] [stdout] test builder::tests::test_clear ... ok
[INFO] [stdout] test builder::tests::test_clone ... ok
[INFO] [stdout] test builder::tests::test_debug ... ok
[INFO] [stdout] test builder::tests::test_default ... ok
[INFO] [stdout] test builder::tests::test_display ... ok
[INFO] [stdout] test builder::tests::test_push_ascii_str ... ok
[INFO] [stdout] test builder::tests::test_push_byte_invalid ... ok
[INFO] [stdout] test builder::tests::test_push_bytes ... ok
[INFO] [stdout] test builder::tests::test_push_bytes_unchecked ... ok
[INFO] [stdout] test builder::tests::test_push_ascii_string ... ok
[INFO] [stdout] test builder::tests::test_push_byte ... ok
[INFO] [stdout] test builder::tests::test_push_char ... ok
[INFO] [stdout] test builder::tests::test_push_str_too_long ... ok
[INFO] [stdout] test builder::tests::test_push_str ... ok
[INFO] [stdout] test builder::tests::test_push_raw_full_buffer ... ok
[INFO] [stdout] test builder::tests::test_push_raw_unchecked ... ok
[INFO] [stdout] test builder::tests::test_from_ascii_string ... ok
[INFO] [stdout] test builder::tests::test_truncate ... ok
[INFO] [stdout] test builder::tests::test_truncate_noop ... ok
[INFO] [stdout] test char::tests::control_char_constants ... ok
[INFO] [stdout] test char::tests::as_char_roundtrip ... ok
[INFO] [stdout] test char::tests::as_u8_roundtrip ... ok
[INFO] [stdout] test char::tests::debug_control ... ok
[INFO] [stdout] test char::tests::debug_printable ... ok
[INFO] [stdout] test char::tests::default_is_null ... ok
[INFO] [stdout] test char::tests::digit_constants ... ok
[INFO] [stdout] test char::tests::display ... ok
[INFO] [stdout] test char::tests::eq_ignore_case ... ok
[INFO] [stdout] test char::tests::error_display_byte ... ok
[INFO] [stdout] test char::tests::error_display_unicode ... ok
[INFO] [stdout] test char::tests::from_char_invalid ... ok
[INFO] [stdout] test char::tests::from_char_valid ... ok
[INFO] [stdout] test char::tests::from_traits ... ok
[INFO] [stdout] test char::tests::hash_works ... ok
[INFO] [stdout] test char::tests::is_alphabetic ... ok
[INFO] [stdout] test char::tests::is_digit ... ok
[INFO] [stdout] test char::tests::is_hex_digit ... ok
[INFO] [stdout] test char::tests::is_lowercase ... ok
[INFO] [stdout] test char::tests::is_printable ... ok
[INFO] [stdout] test char::tests::is_uppercase ... ok
[INFO] [stdout] test char::tests::is_whitespace ... ok
[INFO] [stdout] test char::tests::letter_constants ... ok
[INFO] [stdout] test char::tests::new_unchecked_valid ... ok
[INFO] [stdout] test char::tests::ordering ... ok
[INFO] [stdout] test char::tests::printable_constants ... ok
[INFO] [stdout] test char::tests::to_lowercase ... ok
[INFO] [stdout] test char::tests::to_uppercase ... ok
[INFO] [stdout] test char::tests::try_from_traits ... ok
[INFO] [stdout] test char::tests::try_new_invalid ... ok
[INFO] [stdout] test char::tests::try_new_valid ... ok
[INFO] [stdout] test flat_string::tests::as_raw_mut_write ... ok
[INFO] [stdout] test flat_string::tests::capacity ... ok
[INFO] [stdout] test flat_string::tests::classification ... ok
[INFO] [stdout] test flat_string::tests::contains_empty_pattern ... ok
[INFO] [stdout] test flat_string::tests::debug ... ok
[INFO] [stdout] test flat_string::tests::default_is_empty ... ok
[INFO] [stdout] test flat_string::tests::deref_to_ascii_str ... ok
[INFO] [stdout] test flat_string::tests::display ... ok
[INFO] [stdout] test flat_string::tests::empty_string ... ok
[INFO] [stdout] test flat_string::tests::eq_ignore_ascii_case ... ok
[INFO] [stdout] test flat_string::tests::find_and_contains ... ok
[INFO] [stdout] test flat_string::tests::flat_string_cap12_full_fill ... ok
[INFO] [stdout] test flat_string::tests::flat_string_cap1_empty ... ok
[INFO] [stdout] test flat_string::tests::flat_string_cap1_eq_and_cmp ... ok
[INFO] [stdout] test flat_string::tests::flat_string_cap1_from_static ... ok
[INFO] [stdout] test flat_string::tests::flat_string_cap1_full_fill ... ok
[INFO] [stdout] test flat_string::tests::flat_string_cap1_too_long ... ok
[INFO] [stdout] test flat_string::tests::flat_string_cap3_full_fill ... ok
[INFO] [stdout] test flat_string::tests::flat_string_cap3_partial_fill ... ok
[INFO] [stdout] test flat_string::tests::flat_string_cap4_as_raw_mut ... ok
[INFO] [stdout] test builder::tests::test_new_empty ... ok
[INFO] [stdout] test flat_string::tests::flat_string_cap4_display ... ok
[INFO] [stdout] test flat_string::tests::flat_string_cap4_empty ... ok
[INFO] [stdout] test flat_string::tests::flat_string_cap4_hashmap ... ok
[INFO] [stdout] test flat_string::tests::flat_string_cap4_partial_fill ... ok
[INFO] [stdout] test flat_string::tests::flat_string_cap4_too_long ... ok
[INFO] [stdout] test flat_string::tests::flat_string_cap4_eq_and_cmp ... ok
[INFO] [stdout] test flat_string::tests::flat_string_cap4_widen_to_8 ... ok
[INFO] [stdout] test flat_string::tests::flat_string_cap4_from_static ... ok
[INFO] [stdout] test flat_string::tests::flat_string_cap8_tighten_to_4 ... ok
[INFO] [stdout] test flat_string::tests::flat_string_cap8_tighten_to_4_too_long ... ok
[INFO] [stdout] test flat_string::tests::flat_string_tighten_cap12_full_to_cap4 ... ok
[INFO] [stdout] test flat_string::tests::flat_string_tighten_cap12_too_long_to_cap4 ... ok
[INFO] [stdout] test flat_string::tests::flat_string_tighten_cap7_to_cap3 ... ok
[INFO] [stdout] test flat_string::tests::flat_string_widen_cap4_full_to_cap12 ... ok
[INFO] [stdout] test flat_string::tests::flat_string_tighten_cap12_to_cap4 ... ok
[INFO] [stdout] test flat_string::tests::flat_string_widen_cap3_to_cap7 ... ok
[INFO] [stdout] test flat_string::tests::from_bytes ... ok
[INFO] [stdout] test flat_string::tests::from_static_bytes_const ... ok
[INFO] [stdout] test flat_string::tests::from_static_const ... ok
[INFO] [stdout] test flat_string::tests::flat_string_widen_cap4_to_cap12 ... ok
[INFO] [stdout] test flat_string::tests::from_str ... ok
[INFO] [stdout] test flat_string::tests::from_str_invalid ... ok
[INFO] [stdout] test flat_string::tests::from_str_parse ... ok
[INFO] [stdout] test flat_string::tests::full_buffer_no_null ... ok
[INFO] [stdout] test flat_string::tests::get_first_last ... ok
[INFO] [stdout] test flat_string::tests::index_range ... ok
[INFO] [stdout] test flat_string::tests::invalid_ascii ... ok
[INFO] [stdout] test flat_string::tests::replace_first_byte ... ok
[INFO] [stdout] test flat_string::tests::replace_first ... ok
[INFO] [stdout] test flat_string::tests::replace_first_char ... ok
[INFO] [stdout] test flat_string::tests::index_usize ... ok
[INFO] [stdout] test flat_string::tests::null_termination ... ok
[INFO] [stdout] test char::tests::is_alphanumeric ... ok
[INFO] [stdout] test char::tests::is_control ... ok
[INFO] [stdout] test flat_string::tests::replaced_empty_from_is_noop ... ok
[INFO] [stdout] test flat_string::tests::split ... ok
[INFO] [stdout] test flat_string::tests::split_once ... ok
[INFO] [stdout] test flat_string::tests::strip_prefix_suffix ... ok
[INFO] [stdout] test flat_string::tests::tighten ... ok
[INFO] [stdout] test flat_string::tests::tighten_too_long ... ok
[INFO] [stdout] test flat_string::tests::to_ascii_string_promotion ... ok
[INFO] [stdout] test flat_string::tests::too_long ... ok
[INFO] [stdout] test flat_string::tests::trimmed ... ok
[INFO] [stdout] test flat_string::tests::truncated ... ok
[INFO] [stdout] test flat_string::tests::replace_first_only_first ... ok
[INFO] [stdout] test flat_string::tests::try_from_null_terminated ... ok
[INFO] [stdout] test flat_string::tests::replaced_byte ... ok
[INFO] [stdout] test flat_string::tests::replaced_char ... ok
[INFO] [stdout] test flat_string::tests::try_from_bytes_rejects_embedded_null ... ok
[INFO] [stdout] test flat_string::tests::try_from_null_terminated_too_long ... ok
[INFO] [stdout] test flat_string::tests::try_from_raw ... ok
[INFO] [stdout] test flat_string::tests::replaced ... ok
[INFO] [stdout] test flat_string::tests::try_from_bytes_rejects_leading_null ... ok
[INFO] [stdout] test flat_string::tests::try_from_null_terminated_full_buffer ... ok
[INFO] [stdout] test flat_string::tests::try_from_raw_ref ... ok
[INFO] [stdout] test flat_string::tests::try_from_raw_invalid ... ok
[INFO] [stdout] test flat_string::tests::try_from_raw_rejects_non_ascii_before_null ... ok
[INFO] [stdout] test flat_string::tests::try_from_raw_zero_fills_after_null ... ok
[INFO] [stdout] test flat_string::tests::uppercase_lowercase ... ok
[INFO] [stdout] test flat_string::tests::try_from_right_padded ... ok
[INFO] [stdout] test flat_string::tests::widen ... ok
[INFO] [stdout] test flat_text::tests::classification_via_deref ... ok
[INFO] [stdout] test flat_text::tests::debug ... ok
[INFO] [stdout] test flat_text::tests::default_is_empty ... ok
[INFO] [stdout] test flat_text::tests::deref_to_flat_ascii_string ... ok
[INFO] [stdout] test flat_text::tests::empty_text ... ok
[INFO] [stdout] test flat_text::tests::display ... ok
[INFO] [stdout] test flat_text::tests::flat_text_cap4_from_static ... ok
[INFO] [stdout] test flat_text::tests::flat_text_cap4_empty ... ok
[INFO] [stdout] test flat_text::tests::from_static_bytes_const ... ok
[INFO] [stdout] test flat_text::tests::from_static_const ... ok
[INFO] [stdout] test flat_text::tests::from_str_non_printable ... ok
[INFO] [stdout] test flat_text::tests::flat_text_cap4_try_from_partial ... ok
[INFO] [stdout] test flat_text::tests::from_str_parse ... ok
[INFO] [stdout] test flat_text::tests::from_str_printable ... ok
[INFO] [stdout] test flat_text::tests::index_range_returns_text_str ... ok
[INFO] [stdout] test flat_text::tests::into_flat_ascii_string ... ok
[INFO] [stdout] test flat_text::tests::rejects_control_chars ... ok
[INFO] [stdout] test flat_text::tests::replace_first_char_checked ... ok
[INFO] [stdout] test flat_text::tests::replaced_char_unchecked ... ok
[INFO] [stdout] test flat_text::tests::split_once_text ... ok
[INFO] [stdout] test flat_text::tests::replace_first_char_rejects_non_printable ... ok
[INFO] [stdout] test flat_text::tests::replaced_char_rejects_non_printable ... ok
[INFO] [stdout] test flat_text::tests::rejects_null_in_content ... ok
[INFO] [stdout] test flat_text::tests::replaced_char_checked ... ok
[INFO] [stdout] test flat_text::tests::to_ascii_text_promotion ... ok
[INFO] [stdout] test flat_text::tests::try_from_flat_ascii_string_trait ... ok
[INFO] [stdout] test flat_text::tests::try_from_flat_ascii_string ... ok
[INFO] [stdout] test flat_text::tests::try_from_flat_ascii_string_with_control ... ok
[INFO] [stdout] test flat_text::tests::try_from_null_terminated_full_buffer ... ok
[INFO] [stdout] test flat_text::tests::try_from_null_terminated_printable ... ok
[INFO] [stdout] test flat_text::tests::try_from_null_terminated_rejects_control ... ok
[INFO] [stdout] test flat_text::tests::try_from_raw_buffer ... ok
[INFO] [stdout] test hash::tests::hash_with_seed_works ... ok
[INFO] [stdout] test hash::tests::truncate_roundtrip ... ok
[INFO] [stdout] test hash::tests::truncate_upper_captures_high_bits ... ok
[INFO] [stdout] test hash::tests::hash_matches_scalar ... ok
[INFO] [stdout] test flat_text::tests::try_from_right_padded ... ok
[INFO] [stdout] test hash::xxh3::tests::bounded_matches_unbounded_cap_16 ... ok
[INFO] [stdout] test hash::tests::hash_const_usable_in_const_context ... ok
[INFO] [stdout] test hash::tests::hash_deterministic ... ok
[INFO] [stdout] test hash::tests::hash_different_inputs ... ok
[INFO] [stdout] test hash::tests::hash_const_matches_runtime_dispatch ... ok
[INFO] [stdout] test hash::xxh3::tests::bounded_matches_unbounded_cap_240 ... ok
[INFO] [stdout] test hash::xxh3::tests::bounded_matches_unbounded_cap_128 ... ok
[INFO] [stdout] test hash::xxh3::tests::const_can_be_used_in_const_context ... ok
[INFO] [stdout] test hash::xxh3::tests::const_hash_no_seed_helper ... ok
[INFO] [stdout] test hash::xxh3::tests::bounded_matches_unbounded_cap_32 ... ok
[INFO] [stdout] test hash::xxh3::tests::bounded_matches_unbounded_cap_8 ... ok
[INFO] [stdout] test hash::xxh3::tests::bounded_matches_unbounded_cap_large ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_1to3_bytes ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_17to32_bytes ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_4to8_bytes ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_97to128_bytes ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_33to64_bytes ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_65to96_bytes ... ok
[INFO] [stdout] test hash::xxh3::tests::bounded_with_seed ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_boundary_lengths ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_edge_cases ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_empty ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_exhaustive_1_byte ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_bit_patterns ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_exhaustive_3_bytes_sampled ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_all_lengths_0_to_128 ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_one_byte_difference ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_incrementing_patterns ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_content_diversity ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_9to16_bytes ... ok
[INFO] [stdout] test builder::tests::test_push_raw ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_realistic_strings ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_with_various_seeds ... ok
[INFO] [stdout] test hash::xxh3::tests::deterministic ... ok
[INFO] [stdout] test hash::xxh3::tests::different_inputs_different_hashes ... ok
[INFO] [stdout] test hash::xxh3::tests::empty ... ok
[INFO] [stdout] test hash::xxh3::tests::seed_affects_hash ... ok
[INFO] [stdout] test hash::xxh3::tests::various_lengths ... ok
[INFO] [stdout] test hash::xxh3_sse2::tests::deterministic ... ok
[INFO] [stdout] test hash::xxh3_sse2::tests::large_input ... ok
[INFO] [stdout] test hash::xxh3_sse2::tests::matches_scalar_large ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_exhaustive_2_bytes ... ok
[INFO] [stdout] test simd::scalar::tests::test_case_conversion_all_ascii ... ok
[INFO] [stdout] test simd::scalar::tests::test_contains_control_chars_boundary_bytes ... ok
[INFO] [stdout] test hash::xxh3_sse2::tests::matches_scalar_small ... ok
[INFO] [stdout] test simd::scalar::tests::test_contains_control_chars_exhaustive_positions ... ok
[INFO] [stdout] test simd::scalar::tests::test_contains_control_chars_found ... ok
[INFO] [stdout] test simd::scalar::tests::test_contains_control_chars_long ... ok
[INFO] [stdout] test simd::scalar::tests::test_contains_control_chars_exhaustive_single_byte ... ok
[INFO] [stdout] test simd::scalar::tests::test_contains_control_chars_none ... ok
[INFO] [stdout] test simd::scalar::tests::test_eq_ignore_ascii_case_boundary_letters ... ok
[INFO] [stdout] test simd::scalar::tests::test_eq_ignore_ascii_case_different ... ok
[INFO] [stdout] test simd::scalar::tests::test_eq_ignore_ascii_case_different_case ... ok
[INFO] [stdout] test simd::scalar::tests::test_eq_ignore_ascii_case_equal ... ok
[INFO] [stdout] test simd::scalar::tests::test_eq_ignore_ascii_case_exhaustive_lengths ... ok
[INFO] [stdout] test simd::scalar::tests::test_eq_ignore_ascii_case_exhaustive_single_byte ... ok
[INFO] [stdout] test simd::scalar::tests::test_eq_ignore_ascii_case_long_strings ... ok
[INFO] [stdout] test simd::scalar::tests::test_eq_ignore_ascii_case_non_letter_0x20_diff ... ok
[INFO] [stdout] test simd::scalar::tests::test_eq_ignore_ascii_case_with_symbols ... ok
[INFO] [stdout] test simd::scalar::tests::test_has_control_chars_word ... ok
[INFO] [stdout] test simd::scalar::tests::test_has_non_printable_boundaries ... ok
[INFO] [stdout] test simd::scalar::tests::test_is_all_alphanumeric_boundaries ... ok
[INFO] [stdout] test simd::scalar::tests::test_eq_ignore_ascii_case_non_letter_differs_by_0x20 ... ok
[INFO] [stdout] test simd::scalar::tests::test_is_all_alphanumeric_exhaustive_lengths ... ok
[INFO] [stdout] test simd::scalar::tests::test_is_all_alphanumeric_invalid ... ok
[INFO] [stdout] test simd::scalar::tests::test_is_all_alphanumeric_valid ... ok
[INFO] [stdout] test simd::scalar::tests::test_is_all_alphanumeric_with_invalid_at_positions ... ok
[INFO] [stdout] test simd::scalar::tests::test_is_all_alphanumeric_exhaustive_single_byte ... ok
[INFO] [stdout] test simd::scalar::tests::test_is_all_numeric_boundaries ... ok
[INFO] [stdout] test simd::scalar::tests::test_is_all_numeric_exhaustive_lengths ... ok
[INFO] [stdout] test simd::scalar::tests::test_is_all_numeric_exhaustive_single_byte ... ok
[INFO] [stdout] test simd::scalar::tests::test_is_all_numeric_invalid ... ok
[INFO] [stdout] test simd::scalar::tests::test_is_all_numeric_valid ... ok
[INFO] [stdout] test simd::scalar::tests::test_is_all_numeric_with_invalid_at_positions ... ok
[INFO] [stdout] test simd::scalar::tests::test_is_all_printable_boundary_bytes ... ok
[INFO] [stdout] test simd::scalar::tests::test_is_all_printable_exhaustive_single_byte ... ok
[INFO] [stdout] test simd::scalar::tests::test_is_all_printable_false ... ok
[INFO] [stdout] test simd::scalar::tests::test_is_all_printable_long ... ok
[INFO] [stdout] test simd::scalar::tests::test_is_all_printable_true ... ok
[INFO] [stdout] test simd::scalar::tests::test_make_lowercase ... ok
[INFO] [stdout] test simd::scalar::tests::test_make_uppercase ... ok
[INFO] [stdout] test simd::scalar::tests::test_to_lowercase_branchless ... ok
[INFO] [stdout] test simd::scalar::tests::test_to_uppercase_branchless ... ok
[INFO] [stdout] test simd::scalar::tests::test_validate_ascii_invalid ... ok
[INFO] [stdout] test simd::scalar::tests::test_validate_ascii_null_rejected ... ok
[INFO] [stdout] test simd::scalar::tests::test_validate_ascii_valid ... ok
[INFO] [stdout] test simd::scalar::tests::test_validate_printable_invalid ... ok
[INFO] [stdout] test simd::scalar::tests::test_validate_printable_valid ... ok
[INFO] [stdout] test simd::sse2::tests::test_ascii_matches_scalar ... ok
[INFO] [stdout] test simd::scalar::tests::test_is_all_printable_exhaustive_positions ... ok
[INFO] [stdout] test simd::sse2::tests::test_eq_ignore_case_exhaustive_single_byte ... ok
[INFO] [stdout] test simd::sse2::tests::test_eq_ignore_case_matches_scalar ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_random_9_to_16_bytes ... ok
[INFO] [stdout] test simd::sse2::tests::test_make_lowercase_matches_scalar ... ok
[INFO] [stdout] test simd::sse2::tests::test_make_lowercase_all_bytes ... ok
[INFO] [stdout] test simd::sse2::tests::test_make_uppercase_matches_scalar ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_random_with_seeds ... ok
[INFO] [stdout] test simd::sse2::tests::test_eq_ignore_case_not_equal ... ok
[INFO] [stdout] test simd::sse2::tests::test_validate_ascii_all_positions ... ok
[INFO] [stdout] test simd::sse2::tests::test_printable_matches_scalar ... ok
[INFO] [stdout] test simd::sse2::tests::test_validate_ascii_empty ... ok
[INFO] [stdout] test simd::sse2::tests::test_validate_ascii_exact_16 ... ok
[INFO] [stdout] test simd::sse2::tests::test_validate_ascii_invalid_in_first_16 ... ok
[INFO] [stdout] test simd::sse2::tests::test_make_uppercase_all_bytes ... ok
[INFO] [stdout] test simd::sse2::tests::test_validate_ascii_null_rejected ... ok
[INFO] [stdout] test simd::sse2::tests::test_validate_ascii_over_16 ... ok
[INFO] [stdout] test simd::sse2::tests::test_validate_ascii_short ... ok
[INFO] [stdout] test simd::sse2::tests::test_validate_printable_all_printable_chars ... ok
[INFO] [stdout] test simd::sse2::tests::test_validate_printable_boundary_values ... ok
[INFO] [stdout] test simd::sse2::tests::test_validate_ascii_invalid_in_remainder ... ok
[INFO] [stdout] test simd::sse2::tests::test_validate_printable_control_rejected ... ok
[INFO] [stdout] test simd::sse2::tests::test_validate_printable_del_rejected ... ok
[INFO] [stdout] test simd::sse2::tests::test_validate_printable_empty ... ok
[INFO] [stdout] test simd::sse2::tests::test_validate_printable_exact_16 ... ok
[INFO] [stdout] test simd::sse2::tests::test_validate_printable_high_ascii_rejected ... ok
[INFO] [stdout] test simd::sse2::tests::test_validate_ascii_null_at_various_positions ... ok
[INFO] [stdout] test simd::sse2::tests::test_validate_printable_invalid_in_remainder ... ok
[INFO] [stdout] test simd::sse2::tests::test_validate_printable_invalid_in_simd_chunk ... ok
[INFO] [stdout] test simd::sse2::tests::test_validate_printable_short ... ok
[INFO] [stdout] test simd::tests::validate_ascii_all_valid ... ok
[INFO] [stdout] test simd::tests::validate_ascii_bounded_large_cap ... ok
[INFO] [stdout] test simd::tests::validate_ascii_bounded_medium_cap ... ok
[INFO] [stdout] test simd::tests::validate_ascii_bounded_matches_unbounded ... ok
[INFO] [stdout] test simd::tests::validate_ascii_bounded_small_cap ... ok
[INFO] [stdout] test simd::tests::validate_ascii_empty ... ok
[INFO] [stdout] test simd::tests::validate_ascii_matches_scalar ... ok
[INFO] [stdout] test simd::tests::validate_ascii_invalid_at_various_positions ... ok
[INFO] [stdout] test simd::tests::validate_ascii_null_at_various_positions ... ok
[INFO] [stdout] test simd::tests::validate_ascii_null_rejected ... ok
[INFO] [stdout] test simd::tests::validate_ascii_short_strings ... ok
[INFO] [stdout] test simd::tests::validate_ascii_single_invalid ... ok
[INFO] [stdout] test simd::tests::validate_ascii_single_valid ... ok
[INFO] [stdout] test simd::tests::validate_printable_all_printable ... ok
[INFO] [stdout] test simd::tests::validate_printable_boundary_chars ... ok
[INFO] [stdout] test simd::tests::validate_printable_boundary_lengths ... ok
[INFO] [stdout] test simd::tests::validate_printable_bounded_matches_unbounded ... ok
[INFO] [stdout] test simd::tests::validate_printable_bounded_small_cap ... ok
[INFO] [stdout] test simd::tests::validate_printable_control_chars_rejected ... ok
[INFO] [stdout] test simd::tests::validate_printable_empty ... ok
[INFO] [stdout] test simd::tests::validate_printable_del_rejected ... ok
[INFO] [stdout] test simd::tests::validate_printable_high_ascii_rejected ... ok
[INFO] [stdout] test simd::tests::validate_printable_matches_scalar ... ok
[INFO] [stdout] test simd::tests::validate_printable_invalid_at_various_positions ... ok
[INFO] [stdout] test str_ref::tests::as_ref_str ... ok
[INFO] [stdout] test str_ref::tests::bytes_iterator ... ok
[INFO] [stdout] test str_ref::tests::chars_iterator ... ok
[INFO] [stdout] test str_ref::tests::contains ... ok
[INFO] [stdout] test str_ref::tests::cross_type_equality_bytes ... ok
[INFO] [stdout] test str_ref::tests::cross_type_equality_str ... ok
[INFO] [stdout] test str_ref::tests::debug ... ok
[INFO] [stdout] test str_ref::tests::display ... ok
[INFO] [stdout] test str_ref::tests::empty ... ok
[INFO] [stdout] test str_ref::tests::ends_with ... ok
[INFO] [stdout] test str_ref::tests::eq_ignore_ascii_case ... ok
[INFO] [stdout] test str_ref::tests::equality ... ok
[INFO] [stdout] test str_ref::tests::first_and_last ... ok
[INFO] [stdout] test str_ref::tests::from_bytes_unchecked ... ok
[INFO] [stdout] test str_ref::tests::as_ref_bytes ... ok
[INFO] [stdout] test str_ref::tests::get_out_of_bounds ... ok
[INFO] [stdout] test str_ref::tests::get_unchecked_valid ... ok
[INFO] [stdout] test str_ref::tests::get_valid ... ok
[INFO] [stdout] test str_ref::tests::hash_works ... ok
[INFO] [stdout] test str_ref::tests::index ... ok
[INFO] [stdout] test simd::sse2::tests::test_printable_invalid_matches_scalar ... ok
[INFO] [stdout] test str_ref::tests::from_str_unchecked ... ok
[INFO] [stdout] test str_ref::tests::ordering ... ok
[INFO] [stdout] test str_ref::tests::starts_with ... ok
[INFO] [stdout] test str_ref::tests::try_from_bytes_invalid ... ok
[INFO] [stdout] test str_ref::tests::try_from_bytes_valid ... ok
[INFO] [stdout] test str_ref::tests::try_from_str_valid ... ok
[INFO] [stdout] test str_ref::tests::try_from_str_invalid ... ok
[INFO] [stdout] test string::tests::as_raw_empty ... ok
[INFO] [stdout] test string::tests::as_raw_full_capacity ... ok
[INFO] [stdout] test string::tests::as_raw_returns_full_buffer ... ok
[INFO] [stdout] test string::tests::as_ref_array ... ok
[INFO] [stdout] test string::tests::as_ref_bytes ... ok
[INFO] [stdout] test string::tests::as_ref_str ... ok
[INFO] [stdout] test string::tests::bytes_empty ... ok
[INFO] [stdout] test string::tests::bytes_iterator ... ok
[INFO] [stdout] test string::tests::bytes_matches_as_bytes ... ok
[INFO] [stdout] test string::tests::capacity ... ok
[INFO] [stdout] test string::tests::case_roundtrip ... ok
[INFO] [stdout] test string::tests::chars_count_alphabetic ... ok
[INFO] [stdout] test string::tests::as_ascii_str ... ok
[INFO] [stdout] test string::tests::chars_iterate_and_transform ... ok
[INFO] [stdout] test string::tests::chars_iterator ... ok
[INFO] [stdout] test string::tests::chars_with_digits ... ok
[INFO] [stdout] test string::tests::contains_at_end ... ok
[INFO] [stdout] test string::tests::contains_at_start ... ok
[INFO] [stdout] test string::tests::contains_bytes ... ok
[INFO] [stdout] test string::tests::contains_empty ... ok
[INFO] [stdout] test string::tests::contains_empty_string ... ok
[INFO] [stdout] test string::tests::contains_full_string ... ok
[INFO] [stdout] test string::tests::contains_in_middle ... ok
[INFO] [stdout] test string::tests::contains_longer_needle ... ok
[INFO] [stdout] test string::tests::contains_single_char ... ok
[INFO] [stdout] test string::tests::contains_str ... ok
[INFO] [stdout] test string::tests::control_characters_allowed ... ok
[INFO] [stdout] test string::tests::copy_semantics ... ok
[INFO] [stdout] test string::tests::cross_type_equality_ascii_str ... ok
[INFO] [stdout] test string::tests::debug ... ok
[INFO] [stdout] test string::tests::default_is_empty ... ok
[INFO] [stdout] test string::tests::deref_method_access ... ok
[INFO] [stdout] test string::tests::chars_empty ... ok
[INFO] [stdout] test simd::tests::validate_ascii_boundary_lengths ... ok
[INFO] [stdout] test string::tests::deref_to_ascii_str ... ok
[INFO] [stdout] test string::tests::display ... ok
[INFO] [stdout] test string::tests::empty_string ... ok
[INFO] [stdout] test string::tests::ends_with_empty_string ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_random_4_to_8_bytes ... ok
[INFO] [stdout] test string::tests::ends_with_full_string ... ok
[INFO] [stdout] test string::tests::ends_with_longer_suffix ... ok
[INFO] [stdout] test string::tests::ends_with_str ... ok
[INFO] [stdout] test string::tests::eq_ignore_case_different_case ... ok
[INFO] [stdout] test string::tests::eq_ignore_case_different_lengths ... ok
[INFO] [stdout] test string::tests::eq_ignore_case_different_strings ... ok
[INFO] [stdout] test string::tests::eq_ignore_case_empty ... ok
[INFO] [stdout] test string::tests::eq_ignore_case_with_digits ... ok
[INFO] [stdout] test string::tests::eq_ignore_case_with_symbols ... ok
[INFO] [stdout] test string::tests::equality_different ... ok
[INFO] [stdout] test string::tests::equality_different_length ... ok
[INFO] [stdout] test string::tests::equality_same ... ok
[INFO] [stdout] test string::tests::find_null_byte_unit_tests ... ok
[INFO] [stdout] test string::tests::first_empty ... ok
[INFO] [stdout] test string::tests::eq_ignore_case_same_case ... ok
[INFO] [stdout] test string::tests::first_last_same_for_single ... ok
[INFO] [stdout] test string::tests::first_non_empty ... ok
[INFO] [stdout] test string::tests::format_then_parse_roundtrip ... ok
[INFO] [stdout] test string::tests::format_then_parse_roundtrip_negative ... ok
[INFO] [stdout] test string::tests::first_single_char ... ok
[INFO] [stdout] test string::tests::from_bytes ... ok
[INFO] [stdout] test string::tests::from_i64_min ... ok
[INFO] [stdout] test string::tests::from_i8_negative ... ok
[INFO] [stdout] test string::tests::from_int_too_small_capacity ... ok
[INFO] [stdout] test string::tests::from_raw_unchecked_basic ... ok
[INFO] [stdout] test string::tests::from_raw_unchecked_empty ... ok
[INFO] [stdout] test string::tests::from_raw_unchecked_matches_checked ... ok
[INFO] [stdout] test string::tests::from_raw_unchecked_no_null ... ok
[INFO] [stdout] test string::tests::from_static_basic ... ok
[INFO] [stdout] test string::tests::from_static_bytes_all_ascii_values ... ok
[INFO] [stdout] test string::tests::from_static_bytes_basic ... ok
[INFO] [stdout] test string::tests::from_static_bytes_empty ... ok
[INFO] [stdout] test string::tests::from_static_bytes_fix_delimiter ... ok
[INFO] [stdout] test string::tests::from_static_bytes_matches_from_static_str ... ok
[INFO] [stdout] test string::tests::from_static_bytes_in_hashmap ... ok
[INFO] [stdout] test string::tests::from_static_bytes_matches_runtime ... ok
[INFO] [stdout] test string::tests::from_static_bytes_various_lengths ... ok
[INFO] [stdout] test string::tests::from_static_bytes_with_control_chars ... ok
[INFO] [stdout] test string::tests::from_static_empty ... ok
[INFO] [stdout] test string::tests::from_static_equality_with_runtime ... ok
[INFO] [stdout] test string::tests::from_static_full_capacity ... ok
[INFO] [stdout] test string::tests::from_static_hash_matches_runtime ... ok
[INFO] [stdout] test string::tests::from_static_in_hashmap ... ok
[INFO] [stdout] test string::tests::from_static_matches_runtime ... ok
[INFO] [stdout] test string::tests::from_static_realistic_identifiers ... ok
[INFO] [stdout] test string::tests::from_static_various_lengths ... ok
[INFO] [stdout] test string::tests::from_static_with_digits ... ok
[INFO] [stdout] test string::tests::from_static_with_symbols ... ok
[INFO] [stdout] test string::tests::from_str ... ok
[INFO] [stdout] test string::tests::from_str_invalid ... ok
[INFO] [stdout] test string::tests::from_str_parse ... ok
[INFO] [stdout] test string::tests::from_str_too_long ... ok
[INFO] [stdout] test string::tests::from_str_unchecked_basic ... ok
[INFO] [stdout] test string::tests::ends_with_bytes ... ok
[INFO] [stdout] test string::tests::ends_with_empty ... ok
[INFO] [stdout] test string::tests::from_str_unchecked_empty ... ok
[INFO] [stdout] test string::tests::from_str_unchecked_matches_checked ... ok
[INFO] [stdout] test string::tests::from_u64_large ... ok
[INFO] [stdout] test string::tests::from_u8_zero ... ok
[INFO] [stdout] test string::tests::full_capacity ... ok
[INFO] [stdout] test string::tests::get_empty_string ... ok
[INFO] [stdout] test string::tests::get_out_of_bounds ... ok
[INFO] [stdout] test string::tests::get_unchecked_valid ... ok
[INFO] [stdout] test string::tests::get_valid_index ... ok
[INFO] [stdout] test string::tests::hash_consistency ... ok
[INFO] [stdout] test string::tests::hash_in_hashmap ... ok
[INFO] [stdout] test string::tests::index_matches_get ... ok
[INFO] [stdout] test str_ref::tests::index_out_of_bounds - should panic ... ok
[INFO] [stdout] test string::tests::index_valid ... ok
[INFO] [stdout] test string::tests::from_u8_basic ... ok
[INFO] [stdout] test string::tests::function_accepting_ascii_str ... ok
[INFO] [stdout] test string::tests::into_raw_basic ... ok
[INFO] [stdout] test string::tests::index_empty_string - should panic ... ok
[INFO] [stdout] test string::tests::index_out_of_bounds - should panic ... ok
[INFO] [stdout] test string::tests::into_raw_empty ... ok
[INFO] [stdout] test string::tests::into_raw_full_capacity ... ok
[INFO] [stdout] test string::tests::into_raw_roundtrip ... ok
[INFO] [stdout] test string::tests::invalid_ascii ... ok
[INFO] [stdout] test string::tests::is_alphanumeric_empty ... ok
[INFO] [stdout] test string::tests::is_alphanumeric_false ... ok
[INFO] [stdout] test string::tests::is_alphanumeric_true ... ok
[INFO] [stdout] test string::tests::is_numeric_false ... ok
[INFO] [stdout] test string::tests::is_numeric_empty ... ok
[INFO] [stdout] test string::tests::last_empty ... ok
[INFO] [stdout] test string::tests::last_single_char ... ok
[INFO] [stdout] test string::tests::last_non_empty ... ok
[INFO] [stdout] test string::tests::ord_digits_before_letters ... ok
[INFO] [stdout] test string::tests::ord_equal_strings ... ok
[INFO] [stdout] test string::tests::ord_greater_than ... ok
[INFO] [stdout] test string::tests::ord_less_than ... ok
[INFO] [stdout] test string::tests::ord_case_sensitive ... ok
[INFO] [stdout] test string::tests::ord_prefix_is_less ... ok
[INFO] [stdout] test string::tests::parse_invalid_format ... ok
[INFO] [stdout] test string::tests::parse_u64_valid ... ok
[INFO] [stdout] test string::tests::parse_u8_overflow ... ok
[INFO] [stdout] test string::tests::parse_u8_valid ... ok
[INFO] [stdout] test string::tests::partial_ord_consistent ... ok
[INFO] [stdout] test string::tests::split_once_at_end ... ok
[INFO] [stdout] test string::tests::ord_sortable ... ok
[INFO] [stdout] test string::tests::is_numeric_true ... ok
[INFO] [stdout] test string::tests::parse_i64_negative ... ok
[INFO] [stdout] test string::tests::split_once_at_start ... ok
[INFO] [stdout] test string::tests::split_once_found ... ok
[INFO] [stdout] test string::tests::parse_i8_negative ... ok
[INFO] [stdout] test string::tests::split_once_not_found ... ok
[INFO] [stdout] test string::tests::starts_with_bytes ... ok
[INFO] [stdout] test string::tests::starts_with_empty ... ok
[INFO] [stdout] test string::tests::starts_with_full_string ... ok
[INFO] [stdout] test string::tests::starts_with_longer_prefix ... ok
[INFO] [stdout] test string::tests::starts_with_empty_string ... ok
[INFO] [stdout] test string::tests::strip_prefix_entire_string ... ok
[INFO] [stdout] test string::tests::strip_suffix_entire_string ... ok
[INFO] [stdout] test string::tests::strip_suffix_found ... ok
[INFO] [stdout] test string::tests::starts_with_str ... ok
[INFO] [stdout] test string::tests::strip_prefix_found ... ok
[INFO] [stdout] test string::tests::tighten_basic ... ok
[INFO] [stdout] test string::tests::strip_suffix_not_found ... ok
[INFO] [stdout] test string::tests::tighten_empty ... ok
[INFO] [stdout] test string::tests::tighten_exact_fit ... ok
[INFO] [stdout] test string::tests::tighten_preserves_hash ... ok
[INFO] [stdout] test string::tests::tighten_same_size ... ok
[INFO] [stdout] test string::tests::tighten_too_long ... ok
[INFO] [stdout] test string::tests::to_ascii_lowercase_already_lower ... ok
[INFO] [stdout] test string::tests::to_ascii_lowercase_basic ... ok
[INFO] [stdout] test string::tests::to_ascii_lowercase_empty ... ok
[INFO] [stdout] test string::tests::to_ascii_lowercase_hash_changes ... ok
[INFO] [stdout] test string::tests::split_once_multiple_delimiters ... ok
[INFO] [stdout] test string::tests::strip_prefix_not_found ... ok
[INFO] [stdout] test string::tests::to_ascii_uppercase_all_lower ... ok
[INFO] [stdout] test string::tests::to_ascii_uppercase_already_upper ... ok
[INFO] [stdout] test string::tests::to_ascii_lowercase_with_symbols ... ok
[INFO] [stdout] test string::tests::to_ascii_uppercase_hash_changes ... ok
[INFO] [stdout] test string::tests::to_ascii_uppercase_mixed ... ok
[INFO] [stdout] test string::tests::to_ascii_uppercase_with_numbers ... ok
[INFO] [stdout] test string::tests::too_long ... ok
[INFO] [stdout] test string::tests::to_ascii_uppercase_basic ... ok
[INFO] [stdout] test string::tests::to_ascii_uppercase_empty ... ok
[INFO] [stdout] test string::tests::transformations_preserve_capacity ... ok
[INFO] [stdout] test string::tests::truncated_basic ... ok
[INFO] [stdout] test string::tests::truncated_hash_changes ... ok
[INFO] [stdout] test string::tests::truncated_hash_matches_direct ... ok
[INFO] [stdout] test string::tests::truncated_to_same_length ... ok
[INFO] [stdout] test string::tests::truncated_to_zero ... ok
[INFO] [stdout] test string::tests::try_from_null_terminated_basic ... ok
[INFO] [stdout] test string::tests::try_from_null_terminated_empty ... ok
[INFO] [stdout] test string::tests::truncated_panics_on_longer - should panic ... ok
[INFO] [stdout] test string::tests::try_from_null_terminated_no_null ... ok
[INFO] [stdout] test string::tests::try_from_null_terminated_slice ... ok
[INFO] [stdout] test string::tests::try_from_null_terminated_invalid_ascii ... ok
[INFO] [stdout] test string::tests::try_from_null_terminated_roundtrip ... ok
[INFO] [stdout] test string::tests::try_from_null_terminated_too_long ... ok
[INFO] [stdout] test string::tests::try_from_raw_32_bytes ... ok
[INFO] [stdout] test string::tests::try_from_raw_immediate_null ... ok
[INFO] [stdout] test string::tests::try_from_raw_invalid_ascii_after_null_ok ... ok
[INFO] [stdout] test string::tests::try_from_raw_invalid_ascii_before_null ... ok
[INFO] [stdout] test string::tests::try_from_raw_matches_try_from_bytes ... ok
[INFO] [stdout] test string::tests::try_from_raw_null_in_middle ... ok
[INFO] [stdout] test string::tests::try_from_raw_no_null ... ok
[INFO] [stdout] test string::tests::try_from_raw_hashmap_lookup ... ok
[INFO] [stdout] test string::tests::try_from_raw_null_terminated ... ok
[INFO] [stdout] test string::tests::try_from_raw_ref_empty ... ok
[INFO] [stdout] test string::tests::try_from_raw_ref_basic ... ok
[INFO] [stdout] test string::tests::try_from_raw_ref_invalid_ascii ... ok
[INFO] [stdout] test string::tests::try_from_raw_ref_matches_try_from_null_terminated ... ok
[INFO] [stdout] test string::tests::try_from_raw_ref_no_null ... ok
[INFO] [stdout] test string::tests::try_from_raw_various_positions ... ok
[INFO] [stdout] test string::tests::try_from_raw_ref_roundtrip ... ok
[INFO] [stdout] test string::tests::try_from_right_padded_all_padding ... ok
[INFO] [stdout] test string::tests::try_from_right_padded_custom_pad ... ok
[INFO] [stdout] test string::tests::try_from_right_padded_internal_padding_preserved ... ok
[INFO] [stdout] test string::tests::try_from_right_padded_invalid_ascii ... ok
[INFO] [stdout] test string::tests::try_from_right_padded_no_padding ... ok
[INFO] [stdout] test string::tests::try_from_right_padded_null ... ok
[INFO] [stdout] test string::tests::try_from_right_padded_matches_try_from_bytes ... ok
[INFO] [stdout] test string::tests::try_from_right_padded_space ... ok
[INFO] [stdout] test string::tests::try_truncated_exact_length ... ok
[INFO] [stdout] test string::tests::try_truncated_basic ... ok
[INFO] [stdout] test string::tests::try_truncated_to_zero ... ok
[INFO] [stdout] test string::tests::try_truncated_too_long ... ok
[INFO] [stdout] test string::tests::widen_basic ... ok
[INFO] [stdout] test string::tests::widen_empty ... ok
[INFO] [stdout] test string::tests::widen_tighten_roundtrip ... ok
[INFO] [stdout] test string::tests::widen_preserves_hash ... ok
[INFO] [stdout] test string::tests::widen_same_size ... ok
[INFO] [stdout] test text::tests::format_then_parse_roundtrip ... ok
[INFO] [stdout] test text::tests::as_ref_array ... ok
[INFO] [stdout] test text::tests::from_bytes_unchecked_basic ... ok
[INFO] [stdout] test text::tests::from_i64_min ... ok
[INFO] [stdout] test text::tests::from_bytes_unchecked_matches_checked ... ok
[INFO] [stdout] test text::tests::from_static_bytes_basic ... ok
[INFO] [stdout] test text::tests::from_raw_unchecked_basic ... ok
[INFO] [stdout] test text::tests::from_str_parse ... ok
[INFO] [stdout] test text::tests::from_str_unchecked_basic ... ok
[INFO] [stdout] test text::tests::from_str_unchecked_matches_checked ... ok
[INFO] [stdout] test text::tests::as_raw_returns_full_buffer ... ok
[INFO] [stdout] test text::tests::from_u64_large ... ok
[INFO] [stdout] test text::tests::into_raw_basic ... ok
[INFO] [stdout] test text::tests::from_u8_basic ... ok
[INFO] [stdout] test text::tests::is_alphanumeric_false ... ok
[INFO] [stdout] test text::tests::into_raw_roundtrip ... ok
[INFO] [stdout] test text::tests::is_alphanumeric_true ... ok
[INFO] [stdout] test text::tests::is_numeric_false ... ok
[INFO] [stdout] test text::tests::is_numeric_true ... ok
[INFO] [stdout] test text::tests::parse_u64_valid ... ok
[INFO] [stdout] test text::tests::parse_u8_valid ... ok
[INFO] [stdout] test text::tests::split_once_found ... ok
[INFO] [stdout] test text::tests::split_once_multiple_delimiters ... ok
[INFO] [stdout] test text::tests::split_once_not_found ... ok
[INFO] [stdout] test text::tests::strip_prefix_found ... ok
[INFO] [stdout] test string::tests::to_ascii_lowercase_all_upper ... ok
[INFO] [stdout] test text::tests::strip_prefix_not_found ... ok
[INFO] [stdout] test text::tests::strip_suffix_found ... ok
[INFO] [stdout] test text::tests::strip_suffix_not_found ... ok
[INFO] [stdout] test text::tests::test_all_printable_chars ... ok
[INFO] [stdout] test text::tests::parse_i64_negative ... ok
[INFO] [stdout] test text::tests::test_as_ascii_string ... ok
[INFO] [stdout] test text::tests::test_as_ref_ascii_string ... ok
[INFO] [stdout] test text::tests::test_as_ref_str ... ok
[INFO] [stdout] test text::tests::from_str_non_printable ... ok
[INFO] [stdout] test text::tests::into_raw_empty ... ok
[INFO] [stdout] test text::tests::test_clone ... ok
[INFO] [stdout] test text::tests::test_as_ref_ascii_str ... ok
[INFO] [stdout] test text::tests::test_copy ... ok
[INFO] [stdout] test text::tests::test_debug ... ok
[INFO] [stdout] test text::tests::test_default ... ok
[INFO] [stdout] test text::tests::test_as_ref_bytes ... ok
[INFO] [stdout] test text::tests::test_deref ... ok
[INFO] [stdout] test text::tests::test_empty ... ok
[INFO] [stdout] test text::tests::test_equality ... ok
[INFO] [stdout] test text::tests::test_display ... ok
[INFO] [stdout] test text::tests::test_equality_with_ascii_string ... ok
[INFO] [stdout] test text::tests::test_equality_with_bytes ... ok
[INFO] [stdout] test text::tests::test_from_static ... ok
[INFO] [stdout] test text::tests::test_from_static_empty ... ok
[INFO] [stdout] test text::tests::test_from_static_with_space ... ok
[INFO] [stdout] test text::tests::test_hash ... ok
[INFO] [stdout] test text::tests::test_into_ascii_string ... ok
[INFO] [stdout] test text::tests::test_printable_boundary_high ... ok
[INFO] [stdout] test text::tests::test_ordering ... ok
[INFO] [stdout] test text::tests::test_equality_with_str ... ok
[INFO] [stdout] test text::tests::test_try_from_ascii_string ... ok
[INFO] [stdout] test text::tests::test_printable_boundary_low ... ok
[INFO] [stdout] test text::tests::test_from_ascii_string_unchecked ... ok
[INFO] [stdout] test text::tests::test_try_from_bytes_control_in_middle ... ok
[INFO] [stdout] test text::tests::test_try_from_bytes_control_rejected ... ok
[INFO] [stdout] test text::tests::test_try_from_bytes_del_rejected ... ok
[INFO] [stdout] test text::tests::test_try_from_bytes_high_ascii_rejected ... ok
[INFO] [stdout] test text::tests::test_try_from_bytes_too_long ... ok
[INFO] [stdout] test text::tests::test_try_from_bytes_null_rejected ... ok
[INFO] [stdout] test text::tests::test_try_from_bytes_with_space ... ok
[INFO] [stdout] test text::tests::test_try_from_ascii_string_with_control ... ok
[INFO] [stdout] test text::tests::test_try_from_bytes_with_tilde ... ok
[INFO] [stdout] test text::tests::test_try_from_trait_ascii_string ... ok
[INFO] [stdout] test text::tests::test_try_from_str ... ok
[INFO] [stdout] test text::tests::test_try_from_bytes_valid ... ok
[INFO] [stdout] test text::tests::test_try_from_trait_bytes ... ok
[INFO] [stdout] test text::tests::test_try_from_trait_string ... ok
[INFO] [stdout] test text::tests::tighten_empty ... ok
[INFO] [stdout] test text::tests::tighten_basic ... ok
[INFO] [stdout] test text::tests::tighten_preserves_hash ... ok
[INFO] [stdout] test text::tests::tighten_too_long ... ok
[INFO] [stdout] test text::tests::try_from_null_terminated_basic ... ok
[INFO] [stdout] test text::tests::try_from_null_terminated_empty ... ok
[INFO] [stdout] test text::tests::try_from_null_terminated_no_null ... ok
[INFO] [stdout] test text::tests::try_from_null_terminated_slice ... ok
[INFO] [stdout] test text::tests::try_from_raw_basic ... ok
[INFO] [stdout] test text::tests::try_from_raw_full_buffer ... ok
[INFO] [stdout] test text::tests::try_from_raw_ref_basic ... ok
[INFO] [stdout] test text::tests::try_from_raw_ref_empty ... ok
[INFO] [stdout] test text::tests::try_from_raw_ref_matches_try_from_null_terminated ... ok
[INFO] [stdout] test text::tests::try_from_raw_ref_no_null ... ok
[INFO] [stdout] test text::tests::try_from_null_terminated_non_printable ... ok
[INFO] [stdout] test text::tests::try_from_null_terminated_roundtrip ... ok
[INFO] [stdout] test text::tests::try_from_raw_ref_roundtrip ... ok
[INFO] [stdout] test text::tests::try_from_null_terminated_too_long ... ok
[INFO] [stdout] test text::tests::try_from_right_padded_all_padding ... ok
[INFO] [stdout] test text::tests::try_from_right_padded_non_printable ... ok
[INFO] [stdout] test text::tests::try_from_right_padded_null ... ok
[INFO] [stdout] test text::tests::try_from_raw_ref_non_printable ... ok
[INFO] [stdout] test text::tests::try_from_right_padded_space ... ok
[INFO] [stdout] test text::tests::widen_basic ... ok
[INFO] [stdout] test text::tests::widen_preserves_hash ... ok
[INFO] [stdout] test text::tests::widen_empty ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_random_33_to_64_bytes ... ok
[INFO] [stdout] test text::tests::widen_tighten_roundtrip ... ok
[INFO] [stdout] test text_ref::tests::as_ascii_str ... ok
[INFO] [stdout] test text::tests::try_from_raw_rejects_non_printable ... ok
[INFO] [stdout] test text::tests::try_from_right_padded_full ... ok
[INFO] [stdout] test text_ref::tests::empty ... ok
[INFO] [stdout] test text_ref::tests::from_bytes_unchecked ... ok
[INFO] [stdout] test text_ref::tests::equality ... ok
[INFO] [stdout] test text_ref::tests::trim ... ok
[INFO] [stdout] test text_ref::tests::try_from_bytes_control_char ... ok
[INFO] [stdout] test text_ref::tests::try_from_bytes_non_printable ... ok
[INFO] [stdout] test text_ref::tests::try_from_bytes_valid ... ok
[INFO] [stdout] test text_ref::tests::cross_type_equality ... ok
[INFO] [stdout] test text_ref::tests::try_from_str_valid ... ok
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_random_17_to_32_bytes ... ok
[INFO] [stdout] test text::tests::test_try_from_trait_str ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/nexus_async_net-d386d84c56cfc137)
[INFO] [stdout] test hash::xxh3::tests::const_matches_runtime_random_65_to_128_bytes ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 683 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.20s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 43 tests
[INFO] [stdout] test rest::tokio::atomic_pool::tests::atomic_builder_validates_zero_connections ... ok
[INFO] [stdout] test rest::tokio::atomic_pool::tests::atomic_builder_validates_empty_url ... ok
[INFO] [stdout] test rest::tokio::atomic_pool::tests::atomic_conn_and_reader_error_when_no_conn ... ok
[INFO] [stdout] test rest::tokio::atomic_pool::tests::atomic_try_acquire_returns_some_after_release ... ok
[INFO] [stdout] test rest::tokio::atomic_pool::tests::atomic_slot_needs_reconnect ... ok
[INFO] [stdout] test rest::tokio::atomic_pool::tests::atomic_pool_acquire_release ... ok
[INFO] [stdout] test rest::tokio::atomic_pool::tests::atomic_try_acquire_none_when_exhausted ... ok
[INFO] [stdout] test rest::tokio::atomic_pool::tests::atomic_try_acquire_none_when_all_in_use ... ok
[INFO] [stdout] test rest::tokio::atomic_pool::tests::atomic_pool_loopback ... ok
[INFO] [stdout] test rest::tokio::connection::tests::async_post_with_body ... ok
[INFO] [stdout] test rest::tokio::connection::tests::async_connection_poisoned ... ok
[INFO] [stdout] test rest::tokio::connection::tests::async_chunked_decoded ... ok
[INFO] [stdout] test rest::tokio::connection::tests::async_get_request ... ok
[INFO] [stdout] test rest::tokio::connection::tests::async_response_headers ... ok
[INFO] [stdout] test rest::tokio::pool::tests::pool_acquire_release_cycle ... ok
[INFO] [stdout] test rest::tokio::pool::tests::builder_validates_empty_url ... ok
[INFO] [stdout] test rest::tokio::atomic_pool::tests::atomic_pool_four_connections ... ok
[INFO] [stdout] test rest::tokio::pool::tests::builder_validates_zero_connections ... ok
[INFO] [stdout] test rest::tokio::pool::tests::pool_multiple_slots ... ok
[INFO] [stdout] test rest::tokio::pool::tests::pool_acquire_returns_available ... ok
[INFO] [stdout] test rest::tokio::pool::tests::pool_reset_clears_dead_conn ... ok
[INFO] [stdout] test rest::tokio::pool::tests::slot_needs_reconnect_when_no_conn ... ok
[INFO] [stdout] test rest::tokio::pool::tests::try_acquire_returns_none_when_exhausted ... ok
[INFO] [stdout] test rest::tokio::pool::tests::try_acquire_returns_some_after_slot_released ... ok
[INFO] [stdout] test wire::tests::tokio_adapter_max_zero_returns_invalid_input ... ok
[INFO] [stdout] test rest::tokio::pool::tests::pool_loopback_send ... ok
[INFO] [stdout] test rest::tokio::pool::tests::pool_keep_alive_multiple_requests ... ok
[INFO] [stdout] test ws::tokio::stream::tests::eof_returns_none ... ok
[INFO] [stdout] test rest::tokio::pool::tests::try_acquire_returns_none_when_all_in_use ... ok
[INFO] [stdout] test ws::tokio::stream::tests::recv_binary ... ok
[INFO] [stdout] test wire::tests::tokio_adapter_empty_spare_returns_invalid_input ... ok
[INFO] [stdout] test ws::tokio::stream::tests::fifo_three_messages ... ok
[INFO] [stdout] test rest::tokio::pool::tests::pool_four_connections_all_succeed ... ok
[INFO] [stdout] test ws::tokio::stream::tests::recv_ping ... ok
[INFO] [stdout] test ws::tokio::stream::tests::recv_fragment_with_control ... ok
[INFO] [stdout] test ws::tokio::stream::tests::recv_text ... ok
[INFO] [stdout] test ws::tokio::stream::tests::recv_close ... ok
[INFO] [stdout] test ws::tokio::stream::tests::recv_fragmented_text ... ok
[INFO] [stdout] test ws::tokio::stream::tests::stream_yields_owned_messages ... ok
[INFO] [stdout] test ws::tokio::stream::tests::accept_server_side ... ok
[INFO] [stdout] test ws::tokio::stream::tests::send_on_broken_stream_returns_error ... ok
[INFO] [stdout] test rest::tokio::pool::tests::stale_connection_timeout_not_hang ... ok
[INFO] [stdout] test rest::tokio::pool::tests::dead_connection_heals_via_reconnect_task ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 43 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/httpbin.rs (/opt/rustwide/target/debug/deps/httpbin-507a9dfa05236e46)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test async_httpbin_get ... ignored, requires network access to httpbin.org
[INFO] [stdout] test async_httpbin_get_with_query ... ignored, requires network access to httpbin.org
[INFO] [stdout] test async_httpbin_keep_alive ... ignored, requires network access to httpbin.org
[INFO] [stdout] test async_httpbin_large_response ... ignored, requires network access to httpbin.org
[INFO] [stdout] test async_httpbin_post_json ... ignored, requires network access to httpbin.org
[INFO] [stdout] test async_httpbin_response_headers ... ignored, requires network access to httpbin.org
[INFO] [stdout] test async_httpbin_status_codes ... ignored, requires network access to httpbin.org
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 7 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/ws_nexus_integration.rs (/opt/rustwide/target/debug/deps/ws_nexus_integration-f163af263d4559eb)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/ws_nexus_tls_loopback.rs (/opt/rustwide/target/debug/deps/ws_nexus_tls_loopback-6d7472badee014b3)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/nexus_async_rt-506bf9291acda5b8)
[INFO] [stdout] 
[INFO] [stdout] running 211 tests
[INFO] [stdout] test backoff::tests::advance_does_not_overflow_large_delay ... ok
[INFO] [stdout] test backoff::tests::deadline_exhausts ... ok
[INFO] [stdout] test backoff::tests::caps_at_max ... ok
[INFO] [stdout] test backoff::tests::deadline_remaining ... ok
[INFO] [stdout] test backoff::tests::default_values ... ok
[INFO] [stdout] test backoff::tests::different_instances_different_jitter ... ok
[INFO] [stdout] test backoff::tests::jitter_stays_in_range ... ok
[INFO] [stdout] test backoff::tests::reset_does_not_clear_deadline ... ok
[INFO] [stdout] test backoff::tests::reset_restores_initial ... ok
[INFO] [stdout] test cancel::tests::cancel_is_idempotent ... ok
[INFO] [stdout] test backoff::tests::doubles_each_step ... ok
[INFO] [stdout] test backoff::tests::unlimited_retries ... ok
[INFO] [stdout] test backoff::tests::exhausted_after_max_retries ... ok
[INFO] [stdout] test backoff::tests::effective_delay_capped_by_deadline ... ok
[INFO] [stdout] test cancel::tests::cancelled_future_pending_then_ready ... ok
[INFO] [stdout] test cancel::tests::cancelled_future_ready_when_cancelled ... ok
[INFO] [stdout] test cancel::tests::child_cancelled_future_from_parent ... ok
[INFO] [stdout] test cancel::tests::child_sees_parent_cancel ... ok
[INFO] [stdout] test cancel::tests::child_created_after_parent_cancelled ... ok
[INFO] [stdout] test cancel::tests::clone_shares_state ... ok
[INFO] [stdout] test cancel::tests::drop_guard_cancels_on_drop ... ok
[INFO] [stdout] test cancel::tests::drop_guard_disarm ... ok
[INFO] [stdout] test cancel::tests::drop_without_cancel_cleans_up ... ok
[INFO] [stdout] test cancel::tests::grandchild_sees_ancestor_cancel ... ok
[INFO] [stdout] test cancel::tests::many_children ... ok
[INFO] [stdout] test cancel::tests::multiple_waiters ... ok
[INFO] [stdout] test cancel::tests::not_cancelled_by_default ... ok
[INFO] [stdout] test cancel::tests::poll_after_cancel_drained_uses_in_list_false_path ... ok
[INFO] [stdout] test cancel::tests::send_sync ... ok
[INFO] [stdout] test channel::local::tests::capacity_one ... ok
[INFO] [stdout] test channel::local::tests::clone_sender_increments_count ... ok
[INFO] [stdout] test channel::local::tests::drop_values_on_channel_close ... ok
[INFO] [stdout] test channel::local::tests::fifo_ordering ... ok
[INFO] [stdout] test channel::local::tests::last_sender_drop_wakes_receiver ... ok
[INFO] [stdout] test cancel::tests::cancel_sets_flag ... ok
[INFO] [stdout] test cancel::tests::cross_thread_cancel ... ok
[INFO] [stdout] test backoff::tests::jitter_out_of_range_panics - should panic ... ok
[INFO] [stdout] test backoff::tests::initial_exceeds_max_delay_panics - should panic ... ok
[INFO] [stdout] test channel::local::tests::multiple_senders ... ok
[INFO] [stdout] test channel::local::tests::multiple_senders_blocked_then_unblocked ... ok
[INFO] [stdout] test channel::local::tests::receiver_drop_signals_closed ... ok
[INFO] [stdout] test cancel::tests::drop_guard_on_panic ... ok
[INFO] [stdout] test channel::local::tests::receiver_drop_wakes_blocked_senders ... ok
[INFO] [stdout] test channel::local::tests::recv_drains_buffer_after_all_senders_drop ... ok
[INFO] [stdout] test channel::local::tests::recv_pending_then_ready ... ok
[INFO] [stdout] test channel::local::tests::ring_buffer_drop_remaining ... ok
[INFO] [stdout] test cancel::tests::child_cancel_does_not_affect_parent ... ok
[INFO] [stdout] test channel::local::tests::ring_buffer_full ... ok
[INFO] [stdout] test channel::local::tests::ring_buffer_push_pop ... ok
[INFO] [stdout] test channel::local::tests::ring_buffer_rounds_up_to_power_of_two ... ok
[INFO] [stdout] test channel::local::tests::send_pending_then_ready ... ok
[INFO] [stdout] test channel::local::tests::ring_buffer_wrap_around ... ok
[INFO] [stdout] test channel::local::tests::send_recv_single ... ok
[INFO] [stdout] test channel::local::tests::sender_drop_signals_closed ... ok
[INFO] [stdout] test channel::local::tests::send_after_receiver_drop_returns_closed ... ok
[INFO] [stdout] test channel::local::tests::send_cancelled_on_drop ... ok
[INFO] [stdout] test channel::local::tests::try_recv_empty ... ok
[INFO] [stdout] test channel::local::tests::try_send_full ... ok
[INFO] [stdout] test channel::local::tests::stress_interleaved_small_buffer ... ok
[INFO] [stdout] test channel::local::tests::ring_buffer_zero_capacity_panics - should panic ... ok
[INFO] [stdout] test channel::mpsc::tests::fifo_ordering ... ok
[INFO] [stdout] test channel::local::tests::stress_sequential_send_recv ... ok
[INFO] [stdout] test channel::local::tests::stress_fill_drain_cycles ... ok
[INFO] [stdout] test channel::local::tests::non_power_of_two_rounds_up ... ok
[INFO] [stdout] test channel::mpsc::tests::cross_thread_multiple_producers ... ok
[INFO] [stdout] test channel::mpsc::tests::cross_thread_try_send ... ok
[INFO] [stdout] test channel::mpsc::tests::sender_drop_signals_closed ... ok
[INFO] [stdout] test channel::mpsc::tests::sender_drop_while_queued_in_waiter_list ... ok
[INFO] [stdout] test channel::mpsc::tests::cross_thread_sender_drop ... ok
[INFO] [stdout] test channel::mpsc::tests::multiple_senders ... ok
[INFO] [stdout] test channel::mpsc::tests::sender_is_send_sync ... ok
[INFO] [stdout] test channel::mpsc::tests::multiple_senders_dropped_then_receiver_dropped ... ok
[INFO] [stdout] test channel::mpsc::tests::receiver_drop_signals_closed ... ok
[INFO] [stdout] test channel::mpsc::tests::send_recv_single ... ok
[INFO] [stdout] test channel::mpsc::tests::try_send_full ... ok
[INFO] [stdout] test channel::mpsc::uaf_tests::register_during_wake_does_not_leak_ref ... ok
[INFO] [stdout] test channel::mpsc_bytes::tests::claim_commit_recv ... ok
[INFO] [stdout] test channel::mpsc_bytes::tests::claim_without_commit_aborts ... ok
[INFO] [stdout] test channel::mpsc::uaf_tests::slot_drop_releases_ref_when_still_registered ... ok
[INFO] [stdout] test channel::mpsc::uaf_tests::waker_slot_uaf_when_task_freed_mid_dispatch ... ok
[INFO] [stdout] test channel::mpsc::tests::receiver_is_send ... ok
[INFO] [stdout] test channel::mpsc_bytes::tests::multiple_senders ... ok
[INFO] [stdout] test channel::mpsc_bytes::tests::sender_drop_signals_closed ... ok
[INFO] [stdout] test channel::mpsc_bytes::tests::fifo_ordering ... ok
[INFO] [stdout] test channel::mpsc_bytes::tests::receiver_drop_signals_sender ... ok
[INFO] [stdout] test channel::mpsc_bytes::tests::cross_thread_claim_send ... ok
[INFO] [stdout] test channel::mpsc_bytes::tests::sender_drop_while_queued ... ok
[INFO] [stdout] test channel::mpsc_bytes::uaf_tests::register_during_wake_does_not_leak_ref ... ok
[INFO] [stdout] test channel::mpsc_bytes::tests::variable_length_messages ... ok
[INFO] [stdout] test channel::mpsc_bytes::uaf_tests::slot_drop_releases_ref_when_still_registered ... ok
[INFO] [stdout] test channel::mpsc_bytes::uaf_tests::waker_slot_uaf_when_task_freed_mid_dispatch ... ok
[INFO] [stdout] test channel::spsc::tests::fifo_ordering ... ok
[INFO] [stdout] test channel::spsc::tests::receiver_drop_signals_closed ... ok
[INFO] [stdout] test channel::spsc::tests::receiver_is_send ... ok
[INFO] [stdout] test channel::spsc::tests::send_recv_single ... ok
[INFO] [stdout] test channel::spsc::tests::sender_drop_while_receiver_alive ... ok
[INFO] [stdout] test channel::spsc::tests::sender_is_send ... ok
[INFO] [stdout] test channel::spsc::tests::sender_drop_signals_closed ... ok
[INFO] [stdout] test channel::spsc::tests::try_recv_empty ... ok
[INFO] [stdout] test channel::spsc::tests::try_send_full ... ok
[INFO] [stdout] test channel::spsc::uaf_tests::slot_drop_releases_ref_when_still_registered ... ok
[INFO] [stdout] test channel::spsc::uaf_tests::register_during_wake_does_not_leak_ref ... ok
[INFO] [stdout] test channel::spsc::uaf_tests::waker_slot_uaf_when_task_freed_mid_dispatch ... ok
[INFO] [stdout] test channel::spsc_bytes::tests::claim_commit_recv ... ok
[INFO] [stdout] test channel::spsc_bytes::tests::claim_without_commit_aborts ... ok
[INFO] [stdout] test channel::spsc_bytes::tests::fifo_ordering ... ok
[INFO] [stdout] test channel::spsc_bytes::tests::cross_thread_claim_send ... ok
[INFO] [stdout] test channel::spsc_bytes::tests::receiver_drop_signals_sender ... ok
[INFO] [stdout] test channel::spsc_bytes::tests::sender_drop_signals_closed ... ok
[INFO] [stdout] test channel::spsc_bytes::tests::variable_length_messages ... ok
[INFO] [stdout] test channel::spsc_bytes::uaf_tests::register_during_wake_does_not_leak_ref ... ok
[INFO] [stdout] test channel::spsc_bytes::uaf_tests::slot_drop_releases_ref_when_still_registered ... ok
[INFO] [stdout] test channel::spsc_bytes::uaf_tests::waker_slot_uaf_when_task_freed_mid_dispatch ... ok
[INFO] [stdout] test cross_wake::tests::dispose_terminal_null_ctx_no_tls_leaks ... ok
[INFO] [stdout] test cross_wake::tests::dispose_terminal_off_thread_queues ... ok
[INFO] [stdout] test cross_wake::tests::dispose_terminal_on_executor_defers_when_tls_set ... ok
[INFO] [stdout] test cross_wake::tests::dispose_terminal_on_executor_leaks_when_tls_null ... ok
[INFO] [stdout] test cross_wake::tests::executor_drop_handles_terminal_in_cross_queue ... ok
[INFO] [stdout] test channel::mpsc_bytes::tests::stress_sequential ... ok
[INFO] [stdout] test cross_wake::tests::queue_interleaved_push_pop ... ok
[INFO] [stdout] test cross_wake::tests::queue_push_pop_multiple ... ok
[INFO] [stdout] test cross_wake::tests::queue_empty ... ok
[INFO] [stdout] test cross_wake::tests::queue_push_pop_single ... ok
[INFO] [stdout] test cross_wake::tests::queue_reuse_after_drain ... ok
[INFO] [stdout] test net::tcp::tests::tcp_socket_builder ... ok
[INFO] [stdout] test channel::mpsc::tests::try_recv_empty ... ok
[INFO] [stdout] test channel::spsc::tests::cross_thread_try_send ... ok
[INFO] [stdout] test channel::spsc_bytes::tests::stress_sequential ... ok
[INFO] [stdout] test runtime::tests::block_on_busy_returns_value ... ok
[INFO] [stdout] test runtime::tests::block_on_busy_with_spawned_tasks ... ok
[INFO] [stdout] test runtime::tests::block_on_returns_value ... ok
[INFO] [stdout] test runtime::tests::block_on_with_pre_resolved_handler ... ok
[INFO] [stdout] test runtime::tests::block_on_with_world_access ... ok
[INFO] [stdout] test runtime::tests::claim_slab_drop_returns_slot ... ok
[INFO] [stdout] test runtime::tests::claim_slab_spawn_executes ... ok
[INFO] [stdout] test runtime::tests::event_time_is_set ... ok
[INFO] [stdout] test channel::mpsc::tests::stress_sequential ... ok
[INFO] [stdout] test runtime::tests::join_handle_abort_completed_returns_false ... ok
[INFO] [stdout] test channel::spsc::tests::stress_sequential ... ok
[INFO] [stdout] test runtime::tests::join_handle_abort_returns_true ... ok
[INFO] [stdout] test runtime::tests::join_handle_await_gets_value ... ok
[INFO] [stdout] test runtime::tests::interval_ticks ... ok
[INFO] [stdout] test runtime::tests::join_handle_await_string ... ok
[INFO] [stdout] test runtime::tests::join_handle_detach ... ok
[INFO] [stdout] test runtime::tests::join_handle_drop_after_completion_drops_output ... ok
[INFO] [stdout] test runtime::tests::join_handle_multiple_concurrent ... ok
[INFO] [stdout] test runtime::tests::join_handle_is_finished ... ok
[INFO] [stdout] test runtime::tests::join_handle_output_larger_than_future ... ok
[INFO] [stdout] test runtime::tests::mixed_spawn_and_spawn_slab ... ok
[INFO] [stdout] test runtime::tests::mixed_spawn_boxed_and_claim_slab ... ok
[INFO] [stdout] test runtime::tests::sleep_past_deadline_ready_immediately ... ok
[INFO] [stdout] test runtime::tests::sleep_zero_duration_ready_immediately ... ok
[INFO] [stdout] test runtime::tests::spawn_from_root_future ... ok
[INFO] [stdout] test runtime::tests::spawn_outside_runtime_panics - should panic ... ok
[INFO] [stdout] test runtime::tests::spawn_slab_with_slab ... ok
[INFO] [stdout] test runtime::tests::spawn_slab_without_slab_panics - should panic ... ok
[INFO] [stdout] test runtime::tests::timeout_completes_before_deadline ... ok
[INFO] [stdout] test runtime::tests::timeout_expires ... ok
[INFO] [stdout] test runtime::tests::try_claim_slab_returns_none_when_full ... ok
[INFO] [stdout] test runtime::tests::yield_now_lets_other_tasks_run ... ok
[INFO] [stdout] test shutdown::tests::shutdown_handle_trigger ... ok
[INFO] [stdout] test shutdown::tests::shutdown_signal_already_triggered ... ok
[INFO] [stdout] test runtime::tests::sleep_completes ... ok
[INFO] [stdout] test shutdown::tests::shutdown_signal_waker_updates_on_repoll ... ok
[INFO] [stdout] test task::tests::drop_fn_transitions_correctly_on_normal_completion ... ok
[INFO] [stdout] test task::tests::packed_state_cross_thread_waker_scenario ... ok
[INFO] [stdout] test task::tests::packed_state_fire_and_forget ... ok
[INFO] [stdout] test task::tests::packed_state_fire_and_forget_terminal ... ok
[INFO] [stdout] test task::tests::packed_state_joinable ... ok
[INFO] [stdout] test task::tests::packed_state_joinable_completion_before_handle_drop ... ok
[INFO] [stdout] test task::tests::packed_state_joinable_completion_first_then_handle ... ok
[INFO] [stdout] test task::tests::packed_state_joinable_handle_drops_first ... ok
[INFO] [stdout] test task::tests::packed_state_leaked_flag_prevents_terminal ... ok
[INFO] [stdout] test task::tests::packed_state_many_refs_converge ... ok
[INFO] [stdout] test task::tests::packed_state_slab_flag_terminal ... ok
[INFO] [stdout] test task::tests::packed_state_waker_clone_lifecycle ... ok
[INFO] [stdout] test task::tests::poll_join_panic_in_drop_prevents_double_drop ... ok
[INFO] [stdout] test task::tests::task_header_size ... ok
[INFO] [stdout] test task::tests::task_layout_offsets ... ok
[INFO] [stdout] test task::tests::task_size_with_future ... ok
[INFO] [stdout] test task::tests::taskref_acquire_drop_balances_refcount ... ok
[INFO] [stdout] test task::tests::taskref_drop_non_terminal_no_dispose ... ok
[INFO] [stdout] test task::tests::taskref_from_owned_drop_balances_refcount ... ok
[INFO] [stdout] test tests::abort_frees_slot_for_reuse ... ok
[INFO] [stdout] test tests::abort_task ... ok
[INFO] [stdout] test tests::cancel_with_stale_ready_entry ... ok
[INFO] [stdout] test tests::dispatch_latency ... ignored
[INFO] [stdout] test tests::executor_drop_cleans_up_queued_tasks ... ok
[INFO] [stdout] test tests::immediate_task_completes ... ok
[INFO] [stdout] test tests::pending_task_not_completed ... ok
[INFO] [stdout] test tests::poll_limit_respected ... ok
[INFO] [stdout] test tests::refcount_starts_at_one ... ok
[INFO] [stdout] test tests::self_waking_task_polled_again ... ok
[INFO] [stdout] test tests::spawn_and_poll_single_task ... ok
[INFO] [stdout] test tests::spawn_multiple_tasks ... ok
[INFO] [stdout] test timer::tests::timer_driver_fire_expired ... ok
[INFO] [stdout] test timer::tests::timer_driver_next_deadline ... ok
[INFO] [stdout] test waker::tests::task_ptr_from_foreign_waker_returns_none ... ok
[INFO] [stdout] test waker::tests::task_ptr_from_local_waker_roundtrip ... ok
[INFO] [stdout] test world_ctx::tests::multiple_tasks_share_ctx ... ok
[INFO] [stdout] test world_ctx::tests::with_world_pre_resolved_handler ... ok
[INFO] [stdout] test world_ctx::tests::with_world_raw_access ... ok
[INFO] [stdout] test world_ctx::tests::with_world_ref_read_only ... ok
[INFO] [stdout] test world_ctx::tests::with_world_returns_value ... ok
[INFO] [stdout] test shutdown::tests::shutdown_signal_resolves_after_trigger ... ok
[INFO] [stdout] test runtime::tests::sleep_in_spawned_task ... ok
[INFO] [stdout] test cancel::tests::cancel_drain_race_regression ... ok
[INFO] [stdout] test net::tcp::tests::tcp_echo ... ok
[INFO] [stdout] test net::udp::tests::udp_connected ... ok
[INFO] [stdout] test net::udp::tests::udp_send_recv ... ok
[INFO] [stdout] test net::udp::tests::udp_echo ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 210 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.56s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/cancel_alloc_count.rs (/opt/rustwide/target/debug/deps/cancel_alloc_count-9cca8245dfdab959)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test no_allocation_on_repoll_across_wakers ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stderr]      Running tests/cancel_fuzz.rs (/opt/rustwide/target/debug/deps/cancel_fuzz-9f52f0cb3be9ebe5)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 11 tests
[INFO] [stdout] test cancelled_future_cross_thread_race ... ignored
[INFO] [stdout] test concurrent_cancel_and_register ... ignored
[INFO] [stdout] test concurrent_child_creation_and_cancel ... ignored
[INFO] [stdout] test deep_hierarchy_cancel ... ignored
[INFO] [stdout] test drop_guard_nested ... ok
[INFO] [stdout] test drop_guard_disarm_prevents_cancel ... ok
[INFO] [stdout] test drop_guard_normal_scope_exit ... ok
[INFO] [stdout] test drop_guard_with_children ... ok
[INFO] [stdout] test stress_many_tokens_concurrent ... ignored
[INFO] [stdout] test drop_guard_cross_thread ... ok
[INFO] [stdout] test drop_guard_on_panic_cancels ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 5 ignored; 0 measured; 0 filtered out; finished in 0.07s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/channel.rs (/opt/rustwide/target/debug/deps/channel-6f71399307a22d80)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test multiple_producers ... ok
[INFO] [stdout] test receiver_drop_signals_senders ... ok
[INFO] [stdout] test single_producer_consumer ... ok
[INFO] [stdout] test backpressure_with_small_buffer ... ok
[INFO] [stdout] test sender_drop_closes_receiver ... ok
[INFO] [stdout] test stress_high_throughput ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/channel_deadlock.rs (/opt/rustwide/target/debug/deps/channel_deadlock-58cf217edbe71826)
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test mpsc_bytes_multiple_senders ... ok
[INFO] [stdout] test spsc_bytes_alternating_small_buffer ... ok
[INFO] [stdout] test mpsc_backpressure_multiple_senders ... ok
[INFO] [stdout] test spsc_bytes_backpressure ... ok
[INFO] [stdout] test mpsc_bytes_backpressure ... ok
[INFO] [stdout] test mpsc_backpressure_single_sender ... ok
[INFO] [stdout] test local_backpressure_ping_pong ... ok
[INFO] [stderr]      Running tests/channel_fuzz.rs (/opt/rustwide/target/debug/deps/channel_fuzz-b2731c2b1476b99b)
[INFO] [stdout] test spsc_backpressure_ping_pong ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.15s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test mpsc_bytes_concurrent_random_sizes ... ignored
[INFO] [stdout] test mpsc_concurrent_senders_random_drop ... ignored
[INFO] [stdout] test mpsc_rapid_clone_drop ... ignored
[INFO] [stdout] test mpsc_receiver_drop_mid_stream ... ignored
[INFO] [stdout] test spsc_bytes_random_sizes ... ignored
[INFO] [stdout] test spsc_fast_producer_slow_consumer ... ignored
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 6 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/channel_latency.rs (/opt/rustwide/target/debug/deps/channel_latency-433e8e495902372a)
[INFO] [stdout] 
[INFO] [stdout] running 10 tests
[INFO] [stdout] test local_async_send_recv_latency ... ignored
[INFO] [stdout] test local_try_send_recv_latency ... ignored
[INFO] [stdout] test mpsc_async_send_recv_latency ... ignored
[INFO] [stdout] test mpsc_channel_try_send_recv_latency ... ignored
[INFO] [stdout] test mpsc_cross_thread_latency ... ignored
[INFO] [stdout] test mpsc_try_send_recv_latency ... ignored
[INFO] [stdout] test spsc_async_send_recv_latency ... ignored
[INFO] [stdout] test spsc_channel_try_send_recv_latency ... ignored
[INFO] [stdout] test spsc_cross_thread_latency ... ignored
[INFO] [stdout] test spsc_try_send_recv_latency ... ignored
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 10 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/dispatch_histo.rs (/opt/rustwide/target/debug/deps/dispatch_histo-434e23c38291e354)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test dispatch_per_poll_histogram ... ignored
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/intrusive_mpsc_spike.rs (/opt/rustwide/target/debug/deps/intrusive_mpsc_spike-bababf6b2bfda19c)
[INFO] [stdout] 
[INFO] [stderr]      Running tests/join_handle_stress.rs (/opt/rustwide/target/debug/deps/join_handle_stress-1773f9fe7e6e6e18)
[INFO] [stdout] running 4 tests
[INFO] [stdout] test spike_intrusive_mpsc_push_pop ... ignored
[INFO] [stdout] test spike_pingpong_intrusive ... ignored
[INFO] [stdout] test spike_pingpong_vec ... ignored
[INFO] [stdout] test spike_vec_push_pop ... ignored
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 4 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test drop_future_on_abort ... ok
[INFO] [stdout] test various_output_sizes ... ok
[INFO] [stdout] test interleaved_lifecycle_operations ... ok
[INFO] [stdout] test drop_once_detach_before_completion ... ok
[INFO] [stdout] test drop_once_normal_path ... ok
[INFO] [stdout] test rapid_spawn_drain ... ok
[INFO] [stdout] test drop_once_detach_after_completion ... ok
[INFO] [stderr]      Running tests/miri_alloc.rs (/opt/rustwide/target/debug/deps/miri_alloc-92fc323d4b4d19af)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test slab_bounded_reuse_after_free ... ok
[INFO] [stdout] test slab_claim_and_spawn ... ok
[INFO] [stdout] test slab_spawn_and_free ... ok
[INFO] [stdout] test slab_spawn_with_drop_tracker ... ok
[INFO] [stderr]      Running tests/miri_cancel.rs (/opt/rustwide/target/debug/deps/miri_cancel-404846144f384cff)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 15 tests
[INFO] [stdout] test cancel_basic ... ok
[INFO] [stdout] test cancel_before_poll ... ok
[INFO] [stdout] test cancel_child_drop_before_parent ... ok
[INFO] [stdout] test cancel_drop_without_cancel ... ok
[INFO] [stdout] test cancel_child_propagation ... ok
[INFO] [stdout] test cancel_many_waker_changes ... ok
[INFO] [stdout] test cancel_waker_update_on_repoll ... ok
[INFO] [stdout] test cancel_with_waiters ... ok
[INFO] [stdout] test cancel_register_during_cancel_race ... ok
[INFO] [stdout] test drop_while_in_list ... ok
[INFO] [stdout] test bug_3_reproduction_high_waker_churn ... ok
[INFO] [stdout] test no_allocation_on_repoll ... ok
[INFO] [stdout] test drop_after_cancel_fast_path ... ok
[INFO] [stdout] test stress_many_awaiters_mixed_drop_and_cancel ... ok
[INFO] [stdout] test concurrent_register_and_cancel_race ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/miri_channel.rs (/opt/rustwide/target/debug/deps/miri_channel-32ca5a3045a18fc5)
[INFO] [stdout] 
[INFO] [stdout] running 18 tests
[INFO] [stdout] test local_channel_drop_tracker ... ok
[INFO] [stdout] test local_receiver_closes ... ok
[INFO] [stdout] test mpsc_drop_tracker ... ok
[INFO] [stdout] test local_channel_recv_drop_no_ub ... ok
[INFO] [stdout] test local_fill_and_drain ... ok
[INFO] [stdout] test local_sender_closes ... ok
[INFO] [stdout] test local_channel_drop_with_pending_items ... ok
[INFO] [stdout] test local_send_recv_basic ... ok
[INFO] [stdout] test spsc_drop_tracker ... ok
[INFO] [stdout] test mpsc_sender_closes ... ok
[INFO] [stdout] test mpsc_receiver_closes ... ok
[INFO] [stdout] test mpsc_recv_future_drop_clears_slot ... ok
[INFO] [stdout] test mpsc_send_recv_basic ... ok
[INFO] [stdout] test spsc_sender_closes ... ok
[INFO] [stdout] test spsc_fill_drain ... ok
[INFO] [stdout] test spsc_recv_future_drop_then_send_no_ub ... ok
[INFO] [stdout] test spsc_send_recv_basic ... ok
[INFO] [stderr]      Running tests/miri_cross_wake.rs (/opt/rustwide/target/debug/deps/miri_cross_wake-ef3b242860fb4d9b)
[INFO] [stdout] test mpsc_multiple_senders_sequential ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 18 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/miri_task.rs (/opt/rustwide/target/debug/deps/miri_task-d989ac7d44e67247)
[INFO] [stdout] 
[INFO] [stdout] running 28 tests
[INFO] [stdout] test abort_already_completed ... ok
[INFO] [stdout] test abort_before_poll ... ok
[INFO] [stdout] test deferred_free_drain_cycle ... ok
[INFO] [stdout] test complete_task_fire_and_forget ... ok
[INFO] [stdout] test detach_after_completion ... ok
[INFO] [stdout] test detach_before_completion ... ok
[INFO] [stdout] test complete_task_joinable_detached ... ok
[INFO] [stdout] test abort_drops_future ... ok
[INFO] [stdout] test many_spawns ... ok
[INFO] [stdout] test executor_drop_with_completed_unread_task ... ok
[INFO] [stdout] test executor_drop_with_pending_joinable_task ... ok
[INFO] [stdout] test join_handle_read_output ... ok
[INFO] [stdout] test output_larger_than_future ... ok
[INFO] [stdout] test spawn_and_complete_unit ... ok
[INFO] [stdout] test executor_drop_drains_deferred_free ... ok
[INFO] [stdout] test spawn_immediate_ready ... ok
[INFO] [stdout] test join_handle_read_string ... ok
[INFO] [stdout] test multiple_tasks_interleaved ... ok
[INFO] [stdout] test waker_fires_during_poll ... ok
[INFO] [stdout] test union_transition_string ... ok
[INFO] [stdout] test union_transition_vec ... ok
[INFO] [stdout] test union_transition_u64 ... ok
[INFO] [stdout] test yielding_future_with_output ... ok
[INFO] [stdout] test zst_output ... ok
[INFO] [stderr]      Running tests/miri_waker.rs (/opt/rustwide/target/debug/deps/miri_waker-1d9756a7be0e46a1)
[INFO] [stdout] test storage_offset_matches_header ... ok
[INFO] [stdout] test refcount_spawn_complete_read_drop ... ok
[INFO] [stdout] test union_transition_drop_counter ... ok
[INFO] [stdout] test refcount_spawn_detach_complete ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 28 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test waker_clone_increments_refcount ... ok
[INFO] [stdout] test waker_wake_by_ref_does_not_consume ... ok
[INFO] [stdout] test waker_drop_after_completion_frees_slot ... ok
[INFO] [stdout] test waker_wake_completed_task_is_noop ... ok
[INFO] [stdout] test waker_wake_by_value_consumes ... ok
[INFO] [stdout] test waker_multiple_clones_one_free ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/net_tcp.rs (/opt/rustwide/target/debug/deps/net_tcp-2ef3ef82a789ffdb)
[INFO] [stdout] 
[INFO] [stdout] running 13 tests
[INFO] [stdout] test tcp_listener_ttl ... ok
[INFO] [stdout] test tcp_multiple_clients ... ok
[INFO] [stdout] test tcp_connect_refused ... ok
[INFO] [stdout] test tcp_from_std ... ok
[INFO] [stdout] test tcp_into_std ... ok
[INFO] [stdout] test tcp_into_split_reunite ... ok
[INFO] [stdout] test tcp_echo_basic ... ok
[INFO] [stdout] test tcp_read_after_peer_close ... ok
[INFO] [stdout] test tcp_split_borrowed ... ok
[INFO] [stdout] test tcp_socket_options_on_stream ... ok
[INFO] [stdout] test tcp_socket_builder_bind_listen ... ok
[INFO] [stdout] test tcp_try_read_write ... ok
[INFO] [stdout] test tcp_large_transfer ... ok
[INFO] [stderr]      Running tests/net_udp.rs (/opt/rustwide/target/debug/deps/net_udp-e5008b9f9b6321e3)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 13 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 5.06s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 11 tests
[INFO] [stdout] test udp_as_fd ... ok
[INFO] [stdout] test udp_into_std ... ok
[INFO] [stdout] test udp_socket_options ... ok
[INFO] [stdout] test udp_multicast_loopback ... ok
[INFO] [stdout] test udp_multiple_datagrams ... ok
[INFO] [stdout] test udp_echo ... ok
[INFO] [stdout] test udp_from_std ... ok
[INFO] [stdout] test udp_send_recv_basic ... ok
[INFO] [stdout] test udp_peek_from ... ok
[INFO] [stdout] test udp_connected_send_recv ... ok
[INFO] [stdout] test udp_try_send_recv ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/shutdown_quiesce.rs (/opt/rustwide/target/debug/deps/shutdown_quiesce-3e6eca7a65787de4)
[INFO] [stdout] 
[INFO] [stdout] running 7 tests
[INFO] [stdout] test shutdown_quiesce_after_block_on_returns_ok ... ok
[INFO] [stdout] test shutdown_quiesce_clean_runtime_returns_ok ... ok
[INFO] [stdout] test shutdown_quiesce_drains_cross_queue ... ok
[INFO] [stdout] test shutdown_quiesce_then_drop_no_abort ... ok
[INFO] [stdout] test shutdown_quiesce_zero_timeout_clean_runtime_returns_ok ... ok
[INFO] [stdout] test shutdown_quiesce_completed_task_held_by_join_handle_times_out ... ok
[INFO] [stdout] test shutdown_quiesce_timeout ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/shutdown_stats.rs (/opt/rustwide/target/debug/deps/shutdown_stats-7d6a9dc667048398)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test shutdown_stats_clean_runtime_all_counters_zero ... ok
[INFO] [stdout] test shutdown_stats_handle_clone_is_independent_view ... ok
[INFO] [stdout] test shutdown_stats_handle_outlives_runtime ... ok
[INFO] [stdout] test shutdown_stats_cross_queue_undrained_when_entries_left_at_drop ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/slab_shutdown_bug.rs (/opt/rustwide/target/debug/deps/slab_shutdown_bug-bfb44216a033c6c6)
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test many_slab_tasks_at_varying_lifecycle_states ... ok
[INFO] [stdout] test runtime_construct_drop_construct_works ... ok
[INFO] [stdout] test multiple_block_on_with_slab_tasks ... ok
[INFO] [stdout] test slab_task_completed_during_block_on ... ok
[INFO] [stdout] test slab_handle_dropped_outside_block_on_no_panic ... ok
[INFO] [stdout] test no_slab_no_panic ... ok
[INFO] [stdout] test slab_task_uncompleted_at_runtime_drop_no_panic ... ok
[INFO] [stderr]      Running tests/stress_fuzz.rs (/opt/rustwide/target/debug/deps/stress_fuzz-c0babd192a99f726)
[INFO] [stdout] test second_runtime_on_same_thread_panics - should panic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test stress_fuzz_all_subsystems ... ok
[INFO] [stderr]      Running tests/tokio_compat.rs (/opt/rustwide/target/debug/deps/tokio_compat-663407d493fc23eb)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/vs_tokio.rs (/opt/rustwide/target/debug/deps/vs_tokio-7356e34fcc539b4d)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]      Running tests/vs_tokio_dispatch.rs (/opt/rustwide/target/debug/deps/vs_tokio_dispatch-381eae8767f78bcd)
[INFO] [stdout] running 2 tests
[INFO] [stdout] test tcp_echo_vs_tokio ... ignored
[INFO] [stdout] test udp_echo_vs_tokio ... ignored
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/nexus_bits-c356075961b454f4)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test dispatch_nexus_vs_tokio ... ignored
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/derive_enum.rs (/opt/rustwide/target/debug/deps/derive_enum-fcffead66bbe41b1)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 65 tests
[INFO] [stdout] test as_variant_rejects_invalid_int_enum ... ok
[INFO] [stdout] test as_variant_validates_int_enum ... ok
[INFO] [stdout] test basic_enum_kind ... ok
[INFO] [stdout] test basic_enum_empty_variant ... ok
[INFO] [stdout] test basic_enum_unknown_discriminant ... ok
[INFO] [stdout] test basic_enum_with_u16 ... ok
[INFO] [stdout] test basic_enum_with_u8 ... ok
[INFO] [stdout] test build_parent_direct ... ok
[INFO] [stdout] test builders_have_expected_traits ... ok
[INFO] [stdout] test enum_builder_overwrite_enum_field ... ok
[INFO] [stdout] test builder_from_variant_type ... ok
[INFO] [stdout] test enum_field_overflow ... ok
[INFO] [stdout] test enum_builder_defaults_to_zero ... ok
[INFO] [stdout] test enum_parent_hash_in_map ... ok
[INFO] [stdout] test enum_builder_overwrite_flag ... ok
[INFO] [stdout] test enum_builder_overwrite ... ok
[INFO] [stdout] test enum_signed_fields_min_values ... ok
[INFO] [stdout] test enum_signed_fields_negative ... ok
[INFO] [stdout] test enum_field_valid ... ok
[INFO] [stdout] test enum_variant_int_enum_valid ... ok
[INFO] [stdout] test from_variant_to_parent ... ok
[INFO] [stdout] test instrument_all_variants_roundtrip ... ok
[INFO] [stdout] test instrument_future ... ok
[INFO] [stdout] test instrument_equity ... ok
[INFO] [stdout] test instrument_option ... ok
[INFO] [stdout] test enum_signed_fields_positive ... ok
[INFO] [stdout] test discriminant_error_reports_disc_value_not_packed_int ... ok
[INFO] [stdout] test enum_variant_hash_in_set ... ok
[INFO] [stdout] test enum_variant_int_enum_overflow ... ok
[INFO] [stdout] test monster_all_zeros ... ok
[INFO] [stdout] test monster_almost_full ... ok
[INFO] [stdout] test monster_edge_discriminant ... ok
[INFO] [stdout] test monster_byte_spanners ... ok
[INFO] [stdout] test monster_empty ... ok
[INFO] [stdout] test monster_flags_only ... ok
[INFO] [stdout] test monster_many_enums ... ok
[INFO] [stdout] test monster_high_bits ... ok
[INFO] [stdout] test monster_max_discriminant ... ok
[INFO] [stdout] test monster_single_enum ... ok
[INFO] [stdout] test monster_max_values ... ok
[INFO] [stdout] test monster_single_primitive ... ok
[INFO] [stdout] test monster_sparse_bits_alternating ... ok
[INFO] [stdout] test monster_tight_enums ... ok
[INFO] [stdout] test monster_sparse_bits_all_set ... ok
[INFO] [stdout] test monster_kitchen_sink ... ok
[INFO] [stdout] test monster_weird_offsets ... ok
[INFO] [stdout] test multi_field_pair ... ok
[INFO] [stdout] test multi_field_triple ... ok
[INFO] [stdout] test order_limit ... ok
[INFO] [stdout] test order_market ... ok
[INFO] [stdout] test signed_repr_enum ... ok
[INFO] [stdout] test single_variant_enum ... ok
[INFO] [stdout] test parent_types_hashable ... ok
[INFO] [stdout] test monster_all_variants_kind_check ... ok
[INFO] [stdout] test monster_all_variants_roundtrip ... ok
[INFO] [stdout] test sparse_discriminants ... ok
[INFO] [stdout] test sparse_invalid_discriminant ... ok
[INFO] [stdout] test tiny_enum_u8 ... ok
[INFO] [stdout] test types_have_expected_traits ... ok
[INFO] [stdout] test unit_variants ... ok
[INFO] [stdout] test variant_types_hashable ... ok
[INFO] [stdout] test wrong_variant_access ... ok
[INFO] [stdout] test with_flags_mixed ... ok
[INFO] [stdout] test with_flags_only ... ok
[INFO] [stderr]      Running tests/derive_struct.rs (/opt/rustwide/target/debug/deps/derive_struct-6fe147f12481bb0a)
[INFO] [stdout] test enum_builder_partial_set ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 65 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 77 tests
[INFO] [stdout] test adjacent_roundtrip ... ok
[INFO] [stdout] test basic_fields_accessors ... ok
[INFO] [stdout] test basic_fields_roundtrip ... ok
[INFO] [stdout] test basic_fields_build ... ok
[INFO] [stdout] test builder_overwrite ... ok
[INFO] [stdout] test builder_overwrite_flag ... ok
[INFO] [stdout] test crosses_byte_boundary ... ok
[INFO] [stdout] test enum_field_overflow ... ok
[INFO] [stdout] test enum_fields_accessors_valid ... ok
[INFO] [stdout] test enum_fields_roundtrip ... ok
[INFO] [stdout] test enum_fields_build ... ok
[INFO] [stdout] test field_overflow_display ... ok
[INFO] [stdout] test flags_accessors ... ok
[INFO] [stdout] test flags_all_true ... ok
[INFO] [stdout] test flags_all_false ... ok
[INFO] [stdout] test flags_roundtrip ... ok
[INFO] [stdout] test from_raw_and_raw_are_inverses ... ok
[INFO] [stdout] test hash_as_map_key ... ok
[INFO] [stdout] test hash_works ... ok
[INFO] [stdout] test i128_repr_roundtrip ... ok
[INFO] [stdout] test i64_repr_roundtrip ... ok
[INFO] [stdout] test inner::private_storage_works ... ok
[INFO] [stdout] test instrument_id_all_variants ... ok
[INFO] [stdout] test instrument_id_roundtrip ... ok
[INFO] [stdout] test mixed_accessors ... ok
[INFO] [stdout] test mixed_build ... ok
[INFO] [stdout] test mixed_roundtrip ... ok
[INFO] [stdout] test narrow_field_overflow_large ... ok
[INFO] [stdout] test narrow_field_overflow ... ok
[INFO] [stdout] test narrow_field_valid ... ok
[INFO] [stdout] test builder_partial_set ... ok
[INFO] [stdout] test enum_field_valid_values ... ok
[INFO] [stdout] test narrow_signed_negative ... ok
[INFO] [stdout] test basic_fields_roundtrip_zero ... ok
[INFO] [stdout] test narrow_signed_min ... ok
[INFO] [stdout] test builder_overwrite_multiple_fields ... ok
[INFO] [stdout] test odd_offsets_roundtrip ... ok
[INFO] [stdout] test narrow_signed_zero ... ok
[INFO] [stdout] test odd_offsets_specific_values ... ok
[INFO] [stdout] test public_storage_accessible ... ok
[INFO] [stdout] test narrow_signed_positive ... ok
[INFO] [stdout] test scattered_bits_alternating ... ok
[INFO] [stdout] test scattered_bits_all_set ... ok
[INFO] [stdout] test signed_fields_min_values ... ok
[INFO] [stdout] test signed_fields_positive ... ok
[INFO] [stdout] test signed_repr_near_full_width_positive ... ok
[INFO] [stdout] test builder_defaults_to_zero ... ok
[INFO] [stdout] test signed_repr_near_full_width_neg_one ... ok
[INFO] [stdout] test signed_fields_negative ... ok
[INFO] [stdout] test single_field_full_width ... ok
[INFO] [stdout] test signed_repr_near_full_width_negative ... ok
[INFO] [stdout] test single_field_zero ... ok
[INFO] [stdout] test narrow_signed_roundtrip_all_4bit ... ok
[INFO] [stdout] test single_flag_false ... ok
[INFO] [stdout] test single_flag_true ... ok
[INFO] [stdout] test snowflake_roundtrip ... ok
[INFO] [stdout] test snowflake_sequence_overflow ... ok
[INFO] [stdout] test snowflake_timestamp_at_max ... ok
[INFO] [stdout] test snowflake_timestamp_overflow ... ok
[INFO] [stdout] test snowflake_worker_overflow ... ok
[INFO] [stdout] test sparse_accessors ... ok
[INFO] [stdout] test sparse_build ... ok
[INFO] [stdout] test sparse_enum_unknown_variant_3 ... ok
[INFO] [stdout] test sparse_enum_valid ... ok
[INFO] [stdout] test sparse_enum_unknown_variant ... ok
[INFO] [stdout] test tight_packing_manual_verify ... ok
[INFO] [stdout] test u128_full_width ... ok
[INFO] [stdout] test tight_packing_all_combos ... ok
[INFO] [stdout] test u128_repr_roundtrip ... ok
[INFO] [stderr]      Running tests/field_elision.rs (/opt/rustwide/target/debug/deps/field_elision-46c66dc7e43414d9)
[INFO] [stdout] test u16_repr_roundtrip ... ok
[INFO] [stdout] test u8_repr_build ... ok
[INFO] [stdout] test unknown_enum_error_reports_field_value_high_bits ... ok
[INFO] [stdout] test unknown_discriminant_display ... ok
[INFO] [stdout] test types_exist ... ok
[INFO] [stdout] test u8_repr_accessors ... ok
[INFO] [stdout] test u32_repr_roundtrip ... ok
[INFO] [stdout] test unknown_enum_error_reports_field_value_not_packed_int ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 77 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test no_fields_read_all_packed ... ok
[INFO] [stderr]      Running tests/int_enum.rs (/opt/rustwide/target/debug/deps/int_enum-813217dc66bf4451)
[INFO] [stdout] test unread_flag_is_packed ... ok
[INFO] [stdout] test unread_field_is_packed ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test into_repr ... ok
[INFO] [stdout] test roundtrip ... ok
[INFO] [stdout] test sparse_roundtrip ... ok
[INFO] [stdout] test try_from_repr_invalid ... ok
[INFO] [stdout] test try_from_repr_valid ... ok
[INFO] [stdout] test wide_repr ... ok
[INFO] [stdout] test signed_repr ... ok
[INFO] [stdout] test u128_repr ... ok
[INFO] [stdout] test i128_repr ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/tests.rs (/opt/rustwide/target/debug/deps/tests-a4257d919a6ad377)
[INFO] [stdout] 
[INFO] [stdout] running 73 tests
[INFO] [stdout] test bitfield_get_low_bits ... ok
[INFO] [stdout] test bitfield_adjacent_fields_no_overlap ... ok
[INFO] [stdout] test bitfield_get_high_bits ... ok
[INFO] [stdout] test bitfield_clear_basic ... ok
[INFO] [stdout] test bitfield_clear_preserves_other_bits ... ok
[INFO] [stdout] test bitfield_clear_already_zero ... ok
[INFO] [stdout] test bitfield_get_max ... ok
[INFO] [stdout] test bitfield_get_unaligned ... ok
[INFO] [stdout] test bitfield_get_zero ... ok
[INFO] [stdout] test bitfield_get_middle_bits ... ok
[INFO] [stdout] test bitfield_i64 ... ok
[INFO] [stdout] test bitfield_new_full_width_u8 ... ok
[INFO] [stdout] test bitfield_new_high_bits ... ok
[INFO] [stdout] test bitfield_new_offset ... ok
[INFO] [stdout] test bitfield_new_full_width ... ok
[INFO] [stdout] test bitfield_set_basic ... ok
[INFO] [stdout] test bitfield_new_single_bit ... ok
[INFO] [stdout] test bitfield_set_clears_existing ... ok
[INFO] [stdout] test bitfield_set_max_value ... ok
[INFO] [stdout] test bitfield_set_offset ... ok
[INFO] [stdout] test bitfield_set_overflow_error ... ok
[INFO] [stdout] test bitfield_set_overflow_large ... ok
[INFO] [stdout] test bitfield_set_unchecked_basic ... ok
[INFO] [stdout] test bitfield_set_preserves_other_bits ... ok
[INFO] [stdout] test bitfield_set_unchecked_truncates ... ok
[INFO] [stdout] test bitfield_set_zero ... ok
[INFO] [stdout] test bitfield_u128 ... ok
[INFO] [stdout] test bitfield_u8 ... ok
[INFO] [stdout] test bitfield_u32 ... ok
[INFO] [stdout] test bitfield_u16 ... ok
[INFO] [stdout] test combined_bitfield_and_flag ... ok
[INFO] [stdout] test const_construction ... ok
[INFO] [stdout] test const_flag_is_set ... ok
[INFO] [stdout] test const_get ... ok
[INFO] [stdout] test bitfield_multiple_fields_pack_unpack ... ok
[INFO] [stdout] test flag_clear_basic ... ok
[INFO] [stdout] test flag_clear_idempotent ... ok
[INFO] [stdout] test flag_is_set_among_others ... ok
[INFO] [stdout] test flag_is_set_false ... ok
[INFO] [stdout] test bitfield_new_basic ... ok
[INFO] [stdout] test flag_is_set_high_bit ... ok
[INFO] [stdout] test flag_is_set_true ... ok
[INFO] [stdout] test flag_multiple_flags ... ok
[INFO] [stdout] test flag_new_basic ... ok
[INFO] [stdout] test flag_new_high_bit ... ok
[INFO] [stdout] test flag_new_middle_bit ... ok
[INFO] [stdout] test flag_set_basic ... ok
[INFO] [stdout] test flag_set_high_bit ... ok
[INFO] [stdout] test flag_set_idempotent ... ok
[INFO] [stdout] test flag_set_preserves_other_bits ... ok
[INFO] [stdout] test flag_set_to_false ... ok
[INFO] [stdout] test flag_set_to_false_already_clear ... ok
[INFO] [stdout] test flag_set_to_from_bool ... ok
[INFO] [stdout] test flag_set_to_true ... ok
[INFO] [stdout] test flag_set_to_true_already_set ... ok
[INFO] [stdout] test flag_toggle_off_to_on ... ok
[INFO] [stdout] test flag_toggle_on_to_off ... ok
[INFO] [stdout] test flag_toggle_preserves_other_bits ... ok
[INFO] [stdout] test flag_toggle_twice_restores ... ok
[INFO] [stdout] test flag_u128 ... ok
[INFO] [stdout] test flag_u16 ... ok
[INFO] [stdout] test flag_u8 ... ok
[INFO] [stdout] test overflow_debug ... ok
[INFO] [stdout] test overflow_display ... ok
[INFO] [stdout] test set_unchecked_masks_oversized_value ... ok
[INFO] [stdout] test set_unchecked_preserves_adjacent_fields ... ok
[INFO] [stdout] test flag_clear_preserves_other_bits ... ok
[INFO] [stdout] test flag_i64 ... ok
[INFO] [stdout] test bitfield_new_exceeds_bounds_u8_panics - should panic ... ok
[INFO] [stdout] test bitfield_new_zero_len_panics - should panic ... ok
[INFO] [stdout] test bitfield_new_exceeds_bounds_panics - should panic ... ok
[INFO] [stdout] test flag_new_exceeds_bounds_panics - should panic ... ok
[INFO] [stdout] test flag_new_exceeds_bounds_u8_panics - should panic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 73 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.14s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/nexus_bits_derive-797dbc15e5ddb5f9)
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/nexus_channel-cd9a1dc42cfd7c7e)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 47 tests
[INFO] [stdout] test tests::basic_send_recv ... ok
[INFO] [stdout] test tests::cross_thread_single_message ... ok
[INFO] [stdout] test tests::failed_send_returns_value ... ok
[INFO] [stdout] test tests::cross_thread_multiple_messages ... ok
[INFO] [stdout] test tests::fifo_ordering_single_thread ... ok
[INFO] [stdout] test tests::is_disconnected_receiver ... ok
[INFO] [stdout] test tests::capacity_one ... ok
[INFO] [stdout] test tests::is_disconnected_sender ... ok
[INFO] [stdout] test tests::large_message_type ... ok
[INFO] [stdout] test tests::many_laps_single_thread ... ok
[INFO] [stdout] test tests::no_deadlock_burst_then_drain ... ok
[INFO] [stdout] test tests::fifo_ordering_cross_thread ... ok
[INFO] [stdout] test tests::does_not_hang_on_disconnect_during_send ... ok
[INFO] [stdout] test tests::does_not_hang_on_disconnect_during_recv ... ok
[INFO] [stdout] test tests::ping_pong_basic ... ok
[INFO] [stdout] test tests::completes_in_reasonable_time ... ok
[INFO] [stdout] test tests::rapid_channel_creation ... ok
[INFO] [stdout] test tests::no_deadlock_disconnect_while_blocked_recv ... ok
[INFO] [stdout] test tests::rapid_disconnect ... ok
[INFO] [stdout] test tests::no_deadlock_alternating ... ok
[INFO] [stdout] test tests::recv_returns_error_when_sender_dropped ... ok
[INFO] [stdout] test tests::recv_drains_before_error_when_sender_dropped ... ok
[INFO] [stdout] test tests::no_deadlock_disconnect_while_blocked_send ... ok
[INFO] [stdout] test tests::recv_timeout_disconnected ... ok
[INFO] [stdout] test tests::capacity_one_cross_thread ... ok
[INFO] [stdout] test tests::recv_timeout_success ... ok
[INFO] [stdout] test tests::recv_blocks_until_send ... ok
[INFO] [stdout] test tests::recv_timeout_data_arrives ... ok
[INFO] [stdout] test tests::recv_timeout_disconnect_while_waiting ... ok
[INFO] [stdout] test tests::send_fills_then_recv_drains ... ok
[INFO] [stdout] test tests::send_returns_error_when_receiver_dropped ... ok
[INFO] [stdout] test tests::recv_wakes_on_sender_drop ... ok
[INFO] [stdout] test tests::recv_timeout_expires ... ok
[INFO] [stdout] test tests::send_blocks_until_recv ... ok
[INFO] [stdout] test tests::send_wakes_on_receiver_drop ... ok
[INFO] [stdout] test tests::stress_high_volume ... ok
[INFO] [stdout] test tests::no_deadlock_concurrent_full_empty_transitions ... ok
[INFO] [stdout] test tests::try_send_try_recv ... ok
[INFO] [stdout] test tests::values_dropped_on_channel_drop ... ok
[INFO] [stdout] test tests::zero_sized_type ... ok
[INFO] [stdout] test tests::stress_small_buffer ... ok
[INFO] [stdout] test tests::stress_rapid_park_unpark_receiver ... ok
[INFO] [stdout] test tests::stress_capacity_one_high_volume ... ok
[INFO] [stdout] test tests::ping_pong_high_iterations ... ok
[INFO] [stdout] test tests::stress_rapid_park_unpark_sender ... ok
[INFO] [stdout] test tests::many_laps_cross_thread ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/nexus_collections-1d7656c5a807afe7)
[INFO] [stdout] test tests::stress_park_unpark_both_sides ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 47 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.73s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/btree_test.rs (/opt/rustwide/target/debug/deps/btree_test-dc1c226b8783cb07)
[INFO] [stdout] 
[INFO] [stdout] running 18 tests
[INFO] [stdout] test cursor_forward ... ok
[INFO] [stdout] test custom_b_4 ... ok
[INFO] [stdout] test drain ... ok
[INFO] [stdout] test empty_tree ... ok
[INFO] [stdout] test entry_vacant_insert ... ok
[INFO] [stdout] test insert_and_get ... ok
[INFO] [stdout] test iter_sorted ... ok
[INFO] [stdout] test insert_replaces_value ... ok
[INFO] [stdout] test many_inserts_and_removes ... ok
[INFO] [stdout] test entry_occupied ... ok
[INFO] [stdout] test pop_first_and_last ... ok
[INFO] [stdout] test remove ... ok
[INFO] [stdout] test range ... ok
[INFO] [stdout] test unbounded_insert ... ok
[INFO] [stdout] test first_last_key_value ... ok
[INFO] [stdout] test drop_non_empty_btree_panics ... ok
[INFO] [stdout] test drop_non_empty_btree_during_unwind_no_double_panic ... ok
[INFO] [stdout] test non_empty_drop_panics_in_debug ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 18 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/compare_test.rs (/opt/rustwide/target/debug/deps/compare_test-7dd2708885356ff9)
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test btree_reverse_pop_first ... ok
[INFO] [stdout] test btree_reverse_first_last ... ok
[INFO] [stdout] test rbtree_reverse_first_last ... ok
[INFO] [stdout] test btree_reverse_stress ... ok
[INFO] [stdout] test btree_reverse_iteration_order ... ok
[INFO] [stdout] test rbtree_reverse_get_and_remove ... ok
[INFO] [stdout] test rbtree_reverse_iteration_order ... ok
[INFO] [stdout] test rbtree_reverse_pop_first ... ok
[INFO] [stdout] test rbtree_reverse_stress ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/cursor_test.rs (/opt/rustwide/target/debug/deps/cursor_test-ed859c9e80c7fabf)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test cursor_backward_scan ... ok
[INFO] [stdout] test cursor_empty_list ... ok
[INFO] [stdout] test cursor_remove_if ... ok
[INFO] [stdout] test cursor_forward_scan ... ok
[INFO] [stdout] test cursor_remove_middle ... ok
[INFO] [stdout] test cursor_remove_before_start_panics - should panic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/heap_test.rs (/opt/rustwide/target/debug/deps/heap_test-468bff0b435b9a0a)
[INFO] [stdout] 
[INFO] [stdout] running 15 tests
[INFO] [stdout] test contains ... ok
[INFO] [stdout] test drain_while_partial ... ok
[INFO] [stdout] test drain_while ... ok
[INFO] [stdout] test drain ... ok
[INFO] [stdout] test empty_heap ... ok
[INFO] [stdout] test link_and_unlink ... ok
[INFO] [stdout] test push_and_pop ... ok
[INFO] [stdout] test try_push_full ... ok
[INFO] [stdout] test unbounded_push_and_pop ... ok
[INFO] [stdout] test stress_heap_push_pop_cycle ... ok
[INFO] [stdout] test drop_non_empty_heap_panics ... ok
[INFO] [stdout] test drop_non_empty_heap_during_unwind_no_double_panic ... ok
[INFO] [stdout] test non_empty_drop_panics_in_debug ... ok
[INFO] [stdout] test double_link_panics - should panic ... ok
[INFO] [stdout] test unlink_wrong_heap_panics - should panic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/list_test.rs (/opt/rustwide/target/debug/deps/list_test-88bd1eb6b94aa076)
[INFO] [stdout] 
[INFO] [stdout] running 25 tests
[INFO] [stdout] test contains ... ok
[INFO] [stdout] test cross_collection_move ... ok
[INFO] [stdout] test empty_list ... ok
[INFO] [stdout] test cursor_remove ... ok
[INFO] [stdout] test cursor_forward_traversal ... ok
[INFO] [stdout] test link_before ... ok
[INFO] [stdout] test link_front_single ... ok
[INFO] [stdout] test is_head_is_tail ... ok
[INFO] [stdout] test move_middle_to_back_verify_order ... ok
[INFO] [stdout] test move_middle_to_front_verify_order ... ok
[INFO] [stdout] test move_to_back ... ok
[INFO] [stdout] test move_to_front ... ok
[INFO] [stdout] test link_back_single ... ok
[INFO] [stdout] test push_back_and_pop_front ... ok
[INFO] [stdout] test link_after ... ok
[INFO] [stdout] test push_front_and_pop_back ... ok
[INFO] [stdout] test unbounded_push_back_and_pop_front ... ok
[INFO] [stdout] test unbounded_push_front_and_pop_back ... ok
[INFO] [stdout] test unlink_middle ... ok
[INFO] [stdout] test stress_list_push_pop_cycle ... ok
[INFO] [stdout] test double_link_panics - should panic ... ok
[INFO] [stdout] test drop_non_empty_list_during_unwind_no_double_panic ... ok
[INFO] [stdout] test drop_non_empty_list_panics ... ok
[INFO] [stdout] test non_empty_drop_panics_in_debug ... ok
[INFO] [stdout] test unlink_wrong_list_panics - should panic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 25 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/miri_tests.rs (/opt/rustwide/target/debug/deps/miri_tests-dae5a47c196fa521)
[INFO] [stdout] 
[INFO] [stdout] running 37 tests
[INFO] [stdout] test btree_iteration ... ok
[INFO] [stdout] test btree_drop_tracker ... ok
[INFO] [stdout] test btree_insert_until_split ... ok
[INFO] [stdout] test btree_entry_insert_and_remove ... ok
[INFO] [stdout] test btree_range ... ok
[INFO] [stdout] test btree_remove_causing_merge ... ok
[INFO] [stdout] test btree_first_last_pop ... ok
[INFO] [stdout] test btree_remove_causing_redistribution ... ok
[INFO] [stdout] test btree_remove_from_leaf ... ok
[INFO] [stdout] test heap_clear ... ok
[INFO] [stdout] test heap_push_pop_reverse_sorted ... ok
[INFO] [stdout] test btree_insert_remove_stress ... ok
[INFO] [stdout] test btree_clear ... ok
[INFO] [stdout] test heap_single_element ... ok
[INFO] [stdout] test heap_decrease_key ... ok
[INFO] [stdout] test heap_drop_tracker ... ok
[INFO] [stdout] test list_clear_drops_refs ... ok
[INFO] [stdout] test heap_push_pop_basic ... ok
[INFO] [stdout] test list_cursor_traverse_and_remove ... ok
[INFO] [stdout] test list_link_front_back_interleaved ... ok
[INFO] [stdout] test list_link_unlink_basic ... ok
[INFO] [stdout] test list_single_element ... ok
[INFO] [stdout] test rbtree_clear ... ok
[INFO] [stdout] test rbtree_entry_api ... ok
[INFO] [stdout] test rbtree_drop_tracker ... ok
[INFO] [stdout] test rbtree_first_last_pop ... ok
[INFO] [stdout] test rbtree_insert_random_pattern ... ok
[INFO] [stdout] test rbtree_insert_remove_stress ... ok
[INFO] [stdout] test list_drop_tracker ... ok
[INFO] [stdout] test rbtree_iteration ... ok
[INFO] [stdout] test rbtree_range_iteration ... ok
[INFO] [stdout] test rbtree_remove_node_with_one_child ... ok
[INFO] [stdout] test rbtree_remove_leaf ... ok
[INFO] [stdout] test rbtree_remove_node_with_two_children ... ok
[INFO] [stdout] test rbtree_insert_descending ... ok
[INFO] [stdout] test rbtree_insert_ascending ... ok
[INFO] [stderr]      Running tests/rbtree_test.rs (/opt/rustwide/target/debug/deps/rbtree_test-bae35c899c560ef8)
[INFO] [stdout] test btree_insert_causing_cascade_split ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 37 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 20 tests
[INFO] [stdout] test cursor_remove ... ok
[INFO] [stdout] test drain ... ok
[INFO] [stdout] test cursor_forward ... ok
[INFO] [stdout] test entry_vacant_insert ... ok
[INFO] [stdout] test insert_and_get ... ok
[INFO] [stdout] test insert_replaces_value ... ok
[INFO] [stdout] test first_last_key_value ... ok
[INFO] [stdout] test iter_sorted ... ok
[INFO] [stdout] test range ... ok
[INFO] [stdout] test pop_first_and_last ... ok
[INFO] [stdout] test empty_tree ... ok
[INFO] [stdout] test remove ... ok
[INFO] [stdout] test entry_occupied ... ok
[INFO] [stdout] test many_inserts_and_removes ... ok
[INFO] [stdout] test slab_ops_trait_generic ... ok
[INFO] [stdout] test reverse_comparator ... ok
[INFO] [stdout] test unbounded_insert ... ok
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/nexus_decimal-909774ea9823162e)
[INFO] [stdout] test drop_non_empty_tree_panics ... ok
[INFO] [stdout] test drop_non_empty_tree_during_unwind_no_double_panic ... ok
[INFO] [stdout] test non_empty_drop_panics_in_debug ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.11s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 36 tests
[INFO] [stdout] test div_by_scale::tests::chunked_edge_cases ... ok
[INFO] [stdout] test pow10::tests::i128_boundaries ... ok
[INFO] [stdout] test pow10::tests::table_correctness ... ok
[INFO] [stdout] test pow10::tests::i32_boundaries ... ok
[INFO] [stdout] test wide::tests::div_by_max_u128 ... ok
[INFO] [stdout] test pow10::tests::i64_boundaries ... ok
[INFO] [stdout] test wide::tests::div_hi_equals_divisor_returns_none ... ok
[INFO] [stdout] test wide::tests::div_hi_greater_returns_none ... ok
[INFO] [stdout] test wide::tests::div_hi_zero_large_divisor ... ok
[INFO] [stdout] test wide::tests::div_hi_zero_small_divisor ... ok
[INFO] [stdout] test wide::tests::div_large_divisor_10e20 ... ok
[INFO] [stdout] test wide::tests::div_large_divisor_d18_realistic ... ok
[INFO] [stdout] test wide::tests::div_large_divisor_exactly_2e64 ... ok
[INFO] [stdout] test wide::tests::div_large_divisor_hi_equals_divisor_minus_one ... ok
[INFO] [stdout] test wide::tests::div_large_divisor_max_operands ... ok
[INFO] [stdout] test wide::tests::div_large_divisor_near_max ... ok
[INFO] [stdout] test div_by_scale::tests::chunked_vs_native_through_wrapper ... ok
[INFO] [stdout] test wide::tests::div_large_divisor_quotient_one ... ok
[INFO] [stdout] test wide::tests::div_small_divisor_boundary_2e64_minus_1 ... ok
[INFO] [stdout] test wide::tests::div_small_divisor_basic ... ok
[INFO] [stdout] test wide::tests::div_u128_zero_divisor ... ok
[INFO] [stdout] test wide::tests::div_with_remainder ... ok
[INFO] [stdout] test wide::tests::mul_u128_by_small_basic ... ok
[INFO] [stdout] test wide::tests::mul_wide_basic ... ok
[INFO] [stdout] test wide::tests::mul_wide_large ... ok
[INFO] [stdout] test wide::tests::roundtrip_mul_div ... ok
[INFO] [stdout] test wide::tests::roundtrip_sweep_large_divisors ... ok
[INFO] [stdout] test wide::tests::wrapping_matches_checked_large_divisor ... ok
[INFO] [stdout] test wide::tests::wrapping_matches_checked_small_divisor ... ok
[INFO] [stdout] test wide::tests::wrapping_zero_divisor ... ok
[INFO] [stdout] test div_by_scale::tests::chunked_matches_native_all_small_scales ... ok
[INFO] [stdout] test div_by_scale::tests::signed_wrapper_negative ... ok
[INFO] [stdout] test wide::tests::div_by_one ... ok
[INFO] [stdout] test wide::tests::div_small_divisor_with_high ... ok
[INFO] [stdout] test wide::tests::div_u128_basic ... ok
[INFO] [stdout] test div_by_scale::tests::chunked_matches_native_d64 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 36 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/arithmetic.rs (/opt/rustwide/target/debug/deps/arithmetic-17f15d530180ab18)
[INFO] [stdout] 
[INFO] [stdout] running 79 tests
[INFO] [stdout] test abs_d32 ... ok
[INFO] [stdout] test abs_min_plus_one_does_not_panic ... ok
[INFO] [stdout] test abs_negative_flipped ... ok
[INFO] [stdout] test abs_positive_unchanged ... ok
[INFO] [stdout] test abs_preserves_fractional ... ok
[INFO] [stdout] test add_operator ... ok
[INFO] [stdout] test abs_const_evaluable ... ok
[INFO] [stdout] test abs_zero_is_zero ... ok
[INFO] [stdout] test ceil_negative ... ok
[INFO] [stdout] test ceil_positive ... ok
[INFO] [stdout] test add_assign ... ok
[INFO] [stdout] test checked_neg_basic ... ok
[INFO] [stdout] test checked_add_basic ... ok
[INFO] [stdout] test checked_abs_basic ... ok
[INFO] [stdout] test checked_abs_min_returns_none ... ok
[INFO] [stdout] test checked_add_overflow_returns_none ... ok
[INFO] [stdout] test checked_neg_min_returns_none ... ok
[INFO] [stdout] test checked_sub_overflow_returns_none ... ok
[INFO] [stdout] test checked_sub_basic ... ok
[INFO] [stdout] test custom_precision ... ok
[INFO] [stdout] test d32_basic_arithmetic ... ok
[INFO] [stdout] test const_rounding ... ok
[INFO] [stdout] test d128_basic_arithmetic ... ok
[INFO] [stdout] test d96_basic_arithmetic ... ok
[INFO] [stdout] test d96_rounding::ceil_positive ... ok
[INFO] [stdout] test d96_rounding::ceil_negative ... ok
[INFO] [stdout] test d96_rounding::floor_negative ... ok
[INFO] [stdout] test d96_rounding::fract_values ... ok
[INFO] [stdout] test d96_rounding::round_bankers_positive ... ok
[INFO] [stdout] test d96_rounding::round_dp_basic ... ok
[INFO] [stdout] test const_evaluation ... ok
[INFO] [stdout] test d96_rounding::trunc_negative ... ok
[INFO] [stdout] test d96_rounding::round_bankers_negative ... ok
[INFO] [stdout] test d96_rounding::trunc_plus_fract_identity ... ok
[INFO] [stdout] test d96_rounding::trunc_positive ... ok
[INFO] [stdout] test default_is_zero ... ok
[INFO] [stdout] test floor_positive ... ok
[INFO] [stdout] test equality ... ok
[INFO] [stdout] test fract_negative ... ok
[INFO] [stdout] test abs_d128 ... ok
[INFO] [stdout] test fract_positive ... ok
[INFO] [stdout] test from_raw_roundtrip ... ok
[INFO] [stdout] test neg_one ... ok
[INFO] [stdout] test is_zero_positive_negative ... ok
[INFO] [stdout] test max_min_boundaries ... ok
[INFO] [stdout] test neg_operator ... ok
[INFO] [stdout] test new_negative ... ok
[INFO] [stdout] test new_positive ... ok
[INFO] [stdout] test new_zero ... ok
[INFO] [stdout] test one_equals_scale ... ok
[INFO] [stdout] test round_bankers ... ok
[INFO] [stdout] test ordering ... ok
[INFO] [stdout] test round_bankers_negative ... ok
[INFO] [stdout] test round_dp_bankers_half ... ok
[INFO] [stdout] test round_dp_basic ... ok
[INFO] [stdout] test saturating_abs_min ... ok
[INFO] [stdout] test saturating_neg_min ... ok
[INFO] [stdout] test saturating_add_clamps ... ok
[INFO] [stdout] test saturating_sub_clamps ... ok
[INFO] [stdout] test scale_values ... ok
[INFO] [stdout] test signum_values ... ok
[INFO] [stdout] test sub_assign ... ok
[INFO] [stdout] test to_integer ... ok
[INFO] [stdout] test sub_operator ... ok
[INFO] [stdout] test trunc_negative ... ok
[INFO] [stdout] test trunc_plus_fract_identity ... ok
[INFO] [stdout] test try_add_ok ... ok
[INFO] [stdout] test trunc_positive ... ok
[INFO] [stdout] test try_add_overflow ... ok
[INFO] [stdout] test try_neg_min ... ok
[INFO] [stdout] test wrapping_add_wraps ... ok
[INFO] [stdout] test wrapping_neg_min ... ok
[INFO] [stdout] test zero_is_zero ... ok
[INFO] [stdout] test d96_rounding::floor_positive ... ok
[INFO] [stdout] test floor_negative ... ok
[INFO] [stdout] test abs_min_panics_in_debug - should panic ... ok
[INFO] [stdout] test add_operator_overflow_panics - should panic ... ok
[INFO] [stdout] test new_overflow_panics - should panic ... ok
[INFO] [stderr]      Running tests/financial.rs (/opt/rustwide/target/debug/deps/financial-faf194e20ff64f8f)
[INFO] [stdout] test round_dp_panics_if_dp_equals_decimals - should panic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 79 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.08s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 54 tests
[INFO] [stdout] test ceil_to_tick ... ok
[INFO] [stdout] test approx_eq_extreme_values_i32 ... ok
[INFO] [stdout] test approx_eq_outside_tolerance ... ok
[INFO] [stdout] test ceil_to_tick_basic ... ok
[INFO] [stdout] test ceil_to_tick_already_aligned ... ok
[INFO] [stdout] test clamp_price ... ok
[INFO] [stdout] test div100_basic ... ok
[INFO] [stdout] test div100_negative ... ok
[INFO] [stdout] test floor_to_tick_exact ... ok
[INFO] [stdout] test from_bps ... ok
[INFO] [stdout] test from_parts_i32 ... ok
[INFO] [stdout] test from_parts_negative ... ok
[INFO] [stdout] test approx_eq_extreme_values_i64 ... ok
[INFO] [stdout] test approx_eq_extreme_values_i128 ... ok
[INFO] [stdout] test div100_produces_fractional ... ok
[INFO] [stdout] test div10_basic ... ok
[INFO] [stdout] test floor_to_tick ... ok
[INFO] [stdout] test from_parts_negative_with_integer ... ok
[INFO] [stdout] test approx_eq_within_tolerance ... ok
[INFO] [stdout] test from_parts_i128 ... ok
[INFO] [stdout] test from_parts_overflow ... ok
[INFO] [stdout] test from_parts_negative_zero ... ok
[INFO] [stdout] test from_parts_positive ... ok
[INFO] [stdout] test from_parts_zero ... ok
[INFO] [stdout] test halve_basic ... ok
[INFO] [stdout] test halve_truncates_toward_zero ... ok
[INFO] [stdout] test midpoint_basic ... ok
[INFO] [stdout] test midpoint_max_max ... ok
[INFO] [stdout] test midpoint_max_min ... ok
[INFO] [stdout] test midpoint_max_zero ... ok
[INFO] [stdout] test midpoint_i128_extreme ... ok
[INFO] [stdout] test midpoint_min_zero ... ok
[INFO] [stdout] test midpoint_reversed_order ... ok
[INFO] [stdout] test mul_div_basic ... ok
[INFO] [stdout] test midpoint_min_min ... ok
[INFO] [stdout] test midpoint_negative ... ok
[INFO] [stdout] test mul_div_zero_divisor ... ok
[INFO] [stdout] test midpoint_same ... ok
[INFO] [stdout] test product_iterator ... ok
[INFO] [stdout] test rem_basic ... ok
[INFO] [stdout] test midpoint_i32_extreme ... ok
[INFO] [stdout] test round_to_tick ... ok
[INFO] [stdout] test spread_basic ... ok
[INFO] [stdout] test spread_crossed_returns_none ... ok
[INFO] [stdout] test sum_iterator ... ok
[INFO] [stdout] test try_from_i64 ... ok
[INFO] [stdout] test sum_ref_iterator ... ok
[INFO] [stdout] test write_to_buf_basic ... ok
[INFO] [stdout] test write_to_buf_integer_only ... ok
[INFO] [stdout] test write_to_buf_matches_display ... ok
[INFO] [stdout] test write_to_buf_negative ... ok
[INFO] [stdout] test write_to_buf_zero ... ok
[INFO] [stdout] test to_bps ... ok
[INFO] [stdout] test try_from_f64 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 54 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/from_int.rs (/opt/rustwide/target/debug/deps/from_int-cde6b0a4b1454a18)
[INFO] [stdout] 
[INFO] [stdout] running 24 tests
[INFO] [stdout] test d0_i128_identity_from ... ok
[INFO] [stdout] test d0_i32_identity_from ... ok
[INFO] [stdout] test d0_i64_identity_from ... ok
[INFO] [stdout] test d0_tryfrom_via_std_blanket ... ok
[INFO] [stdout] test from_i16_roundtrip_d32_4 ... ok
[INFO] [stdout] test from_i64_roundtrip_d128 ... ok
[INFO] [stdout] test from_i8_roundtrip_d32_4 ... ok
[INFO] [stdout] test from_i32_roundtrip_d64 ... ok
[INFO] [stdout] test from_max_min_at_max_d_for_d64 ... ok
[INFO] [stdout] test from_u32_roundtrip_d64 ... ok
[INFO] [stdout] test from_u64_roundtrip_d128 ... ok
[INFO] [stdout] test from_u8_roundtrip_d32_4 ... ok
[INFO] [stdout] test known_sound_combos_compile ... ok
[INFO] [stdout] test truth_table_matches_verifier_i128 ... ok
[INFO] [stdout] test from_zero_works ... ok
[INFO] [stdout] test try_from_i64_at_i32_backing_overflow ... ok
[INFO] [stdout] test truth_table_matches_verifier_i64 ... ok
[INFO] [stdout] test try_from_i64_small_value_succeeds_on_d64 ... ok
[INFO] [stdout] test try_from_i64_overflow_on_d64 ... ok
[INFO] [stdout] test truth_table_matches_verifier_i32 ... ok
[INFO] [stdout] test known_unsound_uses_try_from ... ok
[INFO] [stdout] test try_from_u64_at_d128_d18_via_from ... ok
[INFO] [stdout] test try_from_u64_at_d128_d19_unsound ... ok
[INFO] [stdout] test try_from_u64_overflow_on_d64 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 24 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/from_scaled.rs (/opt/rustwide/target/debug/deps/from_scaled-0be9cb6374f635aa)
[INFO] [stdout] 
[INFO] [stdout] running 26 tests
[INFO] [stdout] test const_overflow_returns_none ... ok
[INFO] [stdout] test d128_full_range_at_full_scale ... ok
[INFO] [stdout] test const_evaluable ... ok
[INFO] [stdout] test arbitrary_value_and_scale ... ok
[INFO] [stdout] test capacity_boundary_d64 ... ok
[INFO] [stdout] test d128_unit_at_full_scale ... ok
[INFO] [stdout] test d128_max_at_scale_zero_overflows ... ok
[INFO] [stdout] test d128_zero_at_any_scale ... ok
[INFO] [stdout] test d32_max_at_full_scale_ok ... ok
[INFO] [stdout] test d32_max_value_at_scale_zero_overflows ... ok
[INFO] [stdout] test d128_unit_at_partial_scale ... ok
[INFO] [stdout] test negative_value_preserves_sign ... ok
[INFO] [stdout] test d32_negative_preserves_sign ... ok
[INFO] [stdout] test d32_unit_at_scale_zero ... ok
[INFO] [stdout] test d32_scale_exceeds_d_returns_none ... ok
[INFO] [stdout] test i64_max_at_full_scale_ok ... ok
[INFO] [stdout] test scale_exceeds_d_returns_none ... ok
[INFO] [stdout] test min_value_at_scale_zero_overflows ... ok
[INFO] [stdout] test scale_excess_does_not_panic ... ok
[INFO] [stdout] test d32_unit_at_full_scale ... ok
[INFO] [stdout] test unit_at_full_scale ... ok
[INFO] [stdout] test max_value_at_scale_zero_overflows ... ok
[INFO] [stdout] test scale_equals_d_is_smallest_unit ... ok
[INFO] [stdout] test unit_at_partial_scale ... ok
[INFO] [stdout] test unit_at_scale_zero ... ok
[INFO] [stdout] test zero_at_any_scale ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 26 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/mul_div.rs (/opt/rustwide/target/debug/deps/mul_div-62e0070d02f72e0c)
[INFO] [stdout] 
[INFO] [stdout] running 50 tests
[INFO] [stdout] test checked_div_by_zero_all_types ... ok
[INFO] [stdout] test checked_mul_i128_min_by_neg_one ... ok
[INFO] [stdout] test checked_div_large_divisor_d18_fractional ... ok
[INFO] [stdout] test checked_div_large_divisor_d18 ... ok
[INFO] [stdout] test checked_mul_producing_i128_min ... ok
[INFO] [stdout] test const_mul_d64 ... ok
[INFO] [stdout] test const_div_d64 ... ok
[INFO] [stdout] test custom_precision_mul ... ok
[INFO] [stdout] test d128_mul_div ... ok
[INFO] [stdout] test d32_mul_div ... ok
[INFO] [stdout] test d96_mul_max_by_one ... ok
[INFO] [stdout] test div_assign_operator ... ok
[INFO] [stdout] test div_basic_d64 ... ok
[INFO] [stdout] test d96_mul_div ... ok
[INFO] [stdout] test d96_mul_zero ... ok
[INFO] [stdout] test div_max_by_one_d64 ... ok
[INFO] [stdout] test div_one_identity_d64 ... ok
[INFO] [stdout] test div_by_zero_returns_none ... ok
[INFO] [stdout] test mul_basic_d64 ... ok
[INFO] [stdout] test mul_commutativity_d64 ... ok
[INFO] [stdout] test div_negative_d64 ... ok
[INFO] [stdout] test div_fractional_d64 ... ok
[INFO] [stdout] test div_operator ... ok
[INFO] [stdout] test mul_fractional_d64 ... ok
[INFO] [stdout] test mul_assign_operator ... ok
[INFO] [stdout] test mul_add_basic ... ok
[INFO] [stdout] test mul_div_roundtrip_d64 ... ok
[INFO] [stdout] test mul_correctness_sweep_d64 ... ok
[INFO] [stdout] test mul_int_basic ... ok
[INFO] [stdout] test mul_int_zero ... ok
[INFO] [stdout] test mul_int_overflow ... ok
[INFO] [stdout] test mul_max_by_neg_one_d64 ... ok
[INFO] [stdout] test mul_max_by_one_d64 ... ok
[INFO] [stdout] test mul_min_by_one_d64 ... ok
[INFO] [stdout] test mul_negative_d64 ... ok
[INFO] [stdout] test mul_operator ... ok
[INFO] [stdout] test mul_overflow_returns_none_d64 ... ok
[INFO] [stdout] test mul_one_identity_d64 ... ok
[INFO] [stdout] test mul_zero_d64 ... ok
[INFO] [stdout] test saturating_mul_clamps ... ok
[INFO] [stdout] test saturating_div_clamps ... ok
[INFO] [stdout] test try_div_by_zero ... ok
[INFO] [stdout] test try_div_overflow ... ok
[INFO] [stdout] test try_mul_overflow ... ok
[INFO] [stdout] test div_operator_zero_panics - should panic ... ok
[INFO] [stdout] test mul_operator_overflow_panics - should panic ... ok
[INFO] [stdout] test saturating_div_zero_panics - should panic ... ok
[INFO] [stdout] test rem_by_zero_panics_i128 - should panic ... ok
[INFO] [stdout] test rem_by_zero_panics_i64 - should panic ... ok
[INFO] [stdout] test rem_by_zero_panics_i32 - should panic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 50 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/parsing.rs (/opt/rustwide/target/debug/deps/parsing-ebe1aed1616f3beb)
[INFO] [stdout] 
[INFO] [stdout] running 44 tests
[INFO] [stdout] test bytes_roundtrip_d128 ... ok
[INFO] [stdout] test bytes_size_constants ... ok
[INFO] [stdout] test bytes_roundtrip_d32 ... ok
[INFO] [stdout] test d128_display_parse_roundtrip ... ok
[INFO] [stdout] test bytes_roundtrip_d64 ... ok
[INFO] [stdout] test debug_default_shows_formatted ... ok
[INFO] [stdout] test debug_alternate_shows_raw ... ok
[INFO] [stdout] test display_custom_precision ... ok
[INFO] [stdout] test display_d96 ... ok
[INFO] [stdout] test display_fractional ... ok
[INFO] [stdout] test display_leading_zeros_in_fraction ... ok
[INFO] [stdout] test display_negative_fraction ... ok
[INFO] [stdout] test display_integer ... ok
[INFO] [stdout] test display_max_min ... ok
[INFO] [stdout] test display_parse_roundtrip_d96 ... ok
[INFO] [stdout] test display_zero ... ok
[INFO] [stdout] test display_parse_roundtrip_d32 ... ok
[INFO] [stdout] test from_f64_basic ... ok
[INFO] [stdout] test display_trailing_zero_removal ... ok
[INFO] [stdout] test from_f64_nan_errors ... ok
[INFO] [stdout] test from_i64_overflow ... ok
[INFO] [stdout] test from_i32_basic ... ok
[INFO] [stdout] test lossy_bankers_round_to_even ... ok
[INFO] [stdout] test from_u32_basic ... ok
[INFO] [stdout] test lossy_bankers_round_to_even_odd ... ok
[INFO] [stdout] test f64_roundtrip ... ok
[INFO] [stdout] test from_i64_basic ... ok
[INFO] [stdout] test display_parse_roundtrip ... ok
[INFO] [stdout] test from_u64_basic ... ok
[INFO] [stdout] test lossy_half_with_trailing ... ok
[INFO] [stdout] test lossy_rounds_down ... ok
[INFO] [stdout] test lossy_rounds_up ... ok
[INFO] [stdout] test parse_decimal ... ok
[INFO] [stdout] test parse_exact_accepts_max_precision ... ok
[INFO] [stdout] test lossy_within_precision_no_rounding ... ok
[INFO] [stdout] test parse_invalid_format ... ok
[INFO] [stdout] test parse_integer ... ok
[INFO] [stdout] test parse_exact_rejects_excess_precision ... ok
[INFO] [stdout] test parse_leading_zeros_in_fraction ... ok
[INFO] [stdout] test parse_no_integer_part ... ok
[INFO] [stdout] test parse_overflow ... ok
[INFO] [stdout] test to_f64_basic ... ok
[INFO] [stdout] test parse_zero ... ok
[INFO] [stdout] test write_read_bytes_buf ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 44 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/regression.rs (/opt/rustwide/target/debug/deps/regression-69ad93b7b8a2f15d)
[INFO] [stdout] 
[INFO] [stdout] running 23 tests
[INFO] [stdout] test ceil_max_i32 ... ok
[INFO] [stdout] test ceil_to_tick_returns_option ... ok
[INFO] [stdout] test floor_min_does_not_panic ... ok
[INFO] [stdout] test floor_min_i32 ... ok
[INFO] [stdout] test from_bps_i32_basic ... ok
[INFO] [stdout] test ceil_max_does_not_panic ... ok
[INFO] [stdout] test floor_to_tick_returns_option ... ok
[INFO] [stdout] test from_bps_i32_large ... ok
[INFO] [stdout] test percent_of_100_percent ... ok
[INFO] [stdout] test mul_wide_large_inputs ... ok
[INFO] [stdout] test percent_of_basic ... ok
[INFO] [stdout] test percent_of_i32 ... ok
[INFO] [stdout] test round_near_max ... ok
[INFO] [stdout] test percent_of_one_percent ... ok
[INFO] [stdout] test percent_of_zero ... ok
[INFO] [stdout] test percent_of_negative ... ok
[INFO] [stdout] test tick_rounding_near_max ... ok
[INFO] [stdout] test round_dp_near_max ... ok
[INFO] [stdout] test floor_to_tick_zero_panics - should panic ... ok
[INFO] [stdout] test round_to_tick_zero_panics - should panic ... ok
[INFO] [stderr]      Running tests/ui_compile_fail.rs (/opt/rustwide/target/debug/deps/ui_compile_fail-8e9f0ae7346127f0)
[INFO] [stdout] test saturating_div_zero_panics - should panic ... ok
[INFO] [stdout] test wrapping_div_zero_panics - should panic ... ok
[INFO] [stdout] test saturating_div_zero_panics_i32 - should panic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 23 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]     Checking cfg-if v1.0.4
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]     Checking regex-syntax v0.8.10
[INFO] [stderr]     Checking plotters-backend v0.3.7
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking anstyle v1.0.14
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking ciborium-io v0.2.2
[INFO] [stderr]     Checking memchr v2.8.0
[INFO] [stderr]     Checking itoa v1.0.18
[INFO] [stderr]     Checking clap_lex v1.1.0
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]     Checking clap_builder v4.6.0
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]     Checking plotters-svg v0.3.7
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking cast v0.3.0
[INFO] [stderr]    Compiling rust_decimal v1.42.0
[INFO] [stderr]     Checking same-file v1.0.6
[INFO] [stderr]     Checking walkdir v2.5.0
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]     Checking rayon v1.12.0
[INFO] [stderr]     Checking clap v4.6.1
[INFO] [stderr]     Checking is-terminal v0.4.17
[INFO] [stderr]     Checking anes v0.1.6
[INFO] [stderr]     Checking once_cell v1.21.4
[INFO] [stderr]     Checking arrayvec v0.7.6
[INFO] [stderr]     Checking criterion-plot v0.5.0
[INFO] [stderr]     Checking oorandom v11.1.5
[INFO] [stderr]     Checking nexus-decimal v1.1.0 (/opt/rustwide/workdir/nexus-decimal)
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]    Compiling zerocopy-derive v0.8.48
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]     Checking fixdec v0.1.0
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking criterion v0.5.1
[INFO] [stderr]     Checking nexus-decimal-tests v0.0.0 (/opt/rustwide/target/tests/trybuild/nexus-decimal)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 48.81s
[INFO] [stderr] 
[INFO] [stderr] 
[INFO] [stdout] test ui_unsound_combinations_fail_to_compile has been running for over 60 seconds
[INFO] [stderr] test tests/ui/from_i32_unsound_d64_d10.rs ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `Decimal<i64, 10>: From<i32>` is not satisfied
[INFO] [stderr]   --> tests/ui/from_i32_unsound_d64_d10.rs:13:25
[INFO] [stderr]    |
[INFO] [stderr] 13 |     let _: BadD = 5_i32.into();
[INFO] [stderr]    |                         ^^^^ the trait `From<i32>` is not implemented for `Decimal<i64, 10>`
[INFO] [stderr]    |
[INFO] [stderr] help: the following other types implement trait `From<T>`
[INFO] [stderr]   --> src/from_int.rs
[INFO] [stderr]    |
[INFO] [stderr]    |             impl From<$int> for Decimal<$backing, $d> {
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             `Decimal<i64, 10>` implements `From<i16>`
[INFO] [stderr]    |             `Decimal<i64, 10>` implements `From<i8>`
[INFO] [stderr]    |             `Decimal<i64, 10>` implements `From<u16>`
[INFO] [stderr]    |             `Decimal<i64, 10>` implements `From<u8>`
[INFO] [stderr] ...
[INFO] [stderr]    | impl_from_sound!(i64, 10, [i8, i16, u8, u16]);
[INFO] [stderr]    | --------------------------------------------- in this macro invocation
[INFO] [stderr]    = note: required for `i32` to implement `Into<Decimal<i64, 10>>`
[INFO] [stderr]    = note: this error originates in the macro `impl_from_sound` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `Decimal<i64, 10>: From<i32>` is not satisfied
[INFO] [stderr]   --> tests/ui/from_i32_unsound_d64_d10.rs:13:25
[INFO] [stderr]    |
[INFO] [stderr] 13 |     let _: BadD = 5_i32.into();
[INFO] [stderr]    |                         ^^^^ the trait `From<i32>` is not implemented for `Decimal<i64, 10>`
[INFO] [stderr]    |
[INFO] [stderr] help: `Decimal<i64, 10>` implements trait `From<T>`
[INFO] [stderr]   --> src/from_int.rs
[INFO] [stderr]    |
[INFO] [stderr]    |             impl From<$int> for Decimal<$backing, $d> {
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |             |
[INFO] [stderr]    |             `From<i16>`
[INFO] [stderr]    |             `From<i8>`
[INFO] [stderr]    |             `From<u16>`
[INFO] [stderr]    |             `From<u8>`
[INFO] [stderr] ...
[INFO] [stderr]    | impl_from_sound!(i64, 10, [i8, i16, u8, u16]);
[INFO] [stderr]    | --------------------------------------------- in this macro invocation
[INFO] [stderr]    = note: required for `i32` to implement `Into<Decimal<i64, 10>>`
[INFO] [stderr]    = note: this error originates in the macro `impl_from_sound` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/ui/from_i64_unsound_d128_d20.rs ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `Decimal<i128, 20>: From<i64>` is not satisfied
[INFO] [stderr]   --> tests/ui/from_i64_unsound_d128_d20.rs:10:25
[INFO] [stderr]    |
[INFO] [stderr] 10 |     let _: BadD = 5_i64.into();
[INFO] [stderr]    |                         ^^^^ the trait `From<i64>` is not implemented for `Decimal<i128, 20>`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the following other types implement trait `From<T>`:
[INFO] [stderr]              `Decimal<i128, 20>` implements `From<i16>`
[INFO] [stderr]              `Decimal<i128, 20>` implements `From<i32>`
[INFO] [stderr]              `Decimal<i128, 20>` implements `From<i8>`
[INFO] [stderr]              `Decimal<i128, 20>` implements `From<u16>`
[INFO] [stderr]              `Decimal<i128, 20>` implements `From<u32>`
[INFO] [stderr]              `Decimal<i128, 20>` implements `From<u8>`
[INFO] [stderr]    = note: required for `i64` to implement `Into<Decimal<i128, 20>>`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `Decimal<i128, 20>: From<i64>` is not satisfied
[INFO] [stderr]   --> tests/ui/from_i64_unsound_d128_d20.rs:10:25
[INFO] [stderr]    |
[INFO] [stderr] 10 |     let _: BadD = 5_i64.into();
[INFO] [stderr]    |                         ^^^^ the trait `From<i64>` is not implemented for `Decimal<i128, 20>`
[INFO] [stderr]    |
[INFO] [stderr]    = help: `Decimal<i128, 20>` implements trait `From<T>`:
[INFO] [stderr]              From<i16>
[INFO] [stderr]              From<i32>
[INFO] [stderr]              From<i8>
[INFO] [stderr]              From<u16>
[INFO] [stderr]              From<u32>
[INFO] [stderr]              From<u8>
[INFO] [stderr]    = note: required for `i64` to implement `Into<Decimal<i128, 20>>`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/ui/from_u32_unsound_d32_d0.rs ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `Decimal<i32, 0>: From<u32>` is not satisfied
[INFO] [stderr]   --> tests/ui/from_u32_unsound_d32_d0.rs:10:25
[INFO] [stderr]    |
[INFO] [stderr] 10 |     let _: BadD = 5_u32.into();
[INFO] [stderr]    |                         ^^^^ the trait `From<u32>` is not implemented for `Decimal<i32, 0>`
[INFO] [stderr]    |
[INFO] [stderr]    = help: the following other types implement trait `From<T>`:
[INFO] [stderr]              `Decimal<i32, 0>` implements `From<i16>`
[INFO] [stderr]              `Decimal<i32, 0>` implements `From<i32>`
[INFO] [stderr]              `Decimal<i32, 0>` implements `From<i8>`
[INFO] [stderr]              `Decimal<i32, 0>` implements `From<u16>`
[INFO] [stderr]              `Decimal<i32, 0>` implements `From<u8>`
[INFO] [stderr]    = note: required for `u32` to implement `Into<Decimal<i32, 0>>`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `Decimal<i32, 0>: From<u32>` is not satisfied
[INFO] [stderr]   --> tests/ui/from_u32_unsound_d32_d0.rs:10:25
[INFO] [stderr]    |
[INFO] [stderr] 10 |     let _: BadD = 5_u32.into();
[INFO] [stderr]    |                         ^^^^ the trait `From<u32>` is not implemented for `Decimal<i32, 0>`
[INFO] [stderr]    |
[INFO] [stderr]    = help: `Decimal<i32, 0>` implements trait `From<T>`:
[INFO] [stderr]              From<i16>
[INFO] [stderr]              From<i32>
[INFO] [stderr]              From<i8>
[INFO] [stderr]              From<u16>
[INFO] [stderr]              From<u8>
[INFO] [stderr]    = note: required for `u32` to implement `Into<Decimal<i32, 0>>`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] 
[INFO] [stderr] 
[INFO] [stdout] test ui_unsound_combinations_fail_to_compile ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- ui_unsound_combinations_fail_to_compile stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'ui_unsound_combinations_fail_to_compile' (2444) panicked at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/trybuild-1.0.116/src/run.rs:102:13:
[INFO] [stdout] 3 of 3 tests failed
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5c28fcd5960a - std[ec419fa8110287d5]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5c28fcd5960a - std[ec419fa8110287d5]::backtrace_rs::backtrace::trace_unsynchronized::<std[ec419fa8110287d5]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5c28fcd5960a - std[ec419fa8110287d5]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5c28fcd5960a - <<std[ec419fa8110287d5]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[35159d6ffb30e017]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5c28fcd6fb7a - <core[35159d6ffb30e017]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5c28fcd6fb7a - core[35159d6ffb30e017]::fmt::write
[INFO] [stdout]    6:     0x5c28fcd5e642 - std[ec419fa8110287d5]::io::default_write_fmt::<alloc[a8a7aba520129d98]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/io/mod.rs:621:11
[INFO] [stdout]    7:     0x5c28fcd5e642 - <alloc[a8a7aba520129d98]::vec::Vec<u8> as std[ec419fa8110287d5]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/io/mod.rs:1976:13
[INFO] [stdout]    8:     0x5c28fcd354ef - <std[ec419fa8110287d5]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5c28fcd354ef - std[ec419fa8110287d5]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5c28fcd50ad9 - std[ec419fa8110287d5]::panicking::default_hook
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5c28fccea29c - <alloc[a8a7aba520129d98]::boxed::Box<dyn for<'a, 'b> core[35159d6ffb30e017]::ops::function::Fn<(&'a std[ec419fa8110287d5]::panic::PanicHookInfo<'b>,), Output = ()> + core[35159d6ffb30e017]::marker::Sync + core[35159d6ffb30e017]::marker::Send> as core[35159d6ffb30e017]::ops::function::Fn<(&std[ec419fa8110287d5]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/alloc/src/boxed.rs:2285:9
[INFO] [stdout]   12:     0x5c28fccea29c - test[a8007afcd3effadc]::test_main_inner::<test[a8007afcd3effadc]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x5c28fcd50c92 - <alloc[a8a7aba520129d98]::boxed::Box<dyn for<'a, 'b> core[35159d6ffb30e017]::ops::function::Fn<(&'a std[ec419fa8110287d5]::panic::PanicHookInfo<'b>,), Output = ()> + core[35159d6ffb30e017]::marker::Sync + core[35159d6ffb30e017]::marker::Send> as core[35159d6ffb30e017]::ops::function::Fn<(&std[ec419fa8110287d5]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/alloc/src/boxed.rs:2285:9
[INFO] [stdout]   14:     0x5c28fcd50c92 - std[ec419fa8110287d5]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5c28fcd355a8 - std[ec419fa8110287d5]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5c28fcd2cc59 - std[ec419fa8110287d5]::sys::backtrace::__rust_end_short_backtrace::<std[ec419fa8110287d5]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5c28fcd362bd - __rustc[cfb3622dd870db93]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5c28fcd7030c - core[35159d6ffb30e017]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5c28fcbbc574 - <trybuild[bfe6f4c5f063d0f5]::Runner>::run
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/trybuild-1.0.116/src/run.rs:102:13
[INFO] [stdout]   20:     0x5c28fcbc9478 - <trybuild[bfe6f4c5f063d0f5]::TestCases as core[35159d6ffb30e017]::ops::drop::Drop>::drop
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/trybuild-1.0.116/src/lib.rs:342:38
[INFO] [stdout]   21:     0x5c28fcaa6977 - core[35159d6ffb30e017]::ptr::drop_in_place::<trybuild[bfe6f4c5f063d0f5]::TestCases>
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/core/src/ptr/mod.rs:809:1
[INFO] [stdout]   22:     0x5c28fcaa6bc3 - ui_compile_fail[73120cc95086bb7f]::ui_unsound_combinations_fail_to_compile
[INFO] [stdout]                                at /opt/rustwide/workdir/nexus-decimal/tests/ui_compile_fail.rs:13:1
[INFO] [stdout]   23:     0x5c28fcaa6b17 - ui_compile_fail[73120cc95086bb7f]::ui_unsound_combinations_fail_to_compile::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/nexus-decimal/tests/ui_compile_fail.rs:10:45
[INFO] [stdout]   24:     0x5c28fcaa7056 - <ui_compile_fail[73120cc95086bb7f]::ui_unsound_combinations_fail_to_compile::{closure#0} as core[35159d6ffb30e017]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5c28fccdd57b - <fn() -> core[35159d6ffb30e017]::result::Result<(), alloc[a8a7aba520129d98]::string::String> as core[35159d6ffb30e017]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   26:     0x5c28fccdd57b - test[a8007afcd3effadc]::__rust_begin_short_backtrace::<core[35159d6ffb30e017]::result::Result<(), alloc[a8a7aba520129d98]::string::String>, fn() -> core[35159d6ffb30e017]::result::Result<(), alloc[a8a7aba520129d98]::string::String>>
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/test/src/lib.rs:724:18
[INFO] [stdout]   27:     0x5c28fccead6b - test[a8007afcd3effadc]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/test/src/lib.rs:747:74
[INFO] [stdout]   28:     0x5c28fccead6b - <core[35159d6ffb30e017]::panic::unwind_safe::AssertUnwindSafe<test[a8007afcd3effadc]::run_test_in_process::{closure#0}> as core[35159d6ffb30e017]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   29:     0x5c28fccead6b - std[ec419fa8110287d5]::panicking::catch_unwind::do_call::<core[35159d6ffb30e017]::panic::unwind_safe::AssertUnwindSafe<test[a8007afcd3effadc]::run_test_in_process::{closure#0}>, core[35159d6ffb30e017]::result::Result<(), alloc[a8a7aba520129d98]::string::String>>
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panicking.rs:581:40
[INFO] [stdout]   30:     0x5c28fccead6b - std[ec419fa8110287d5]::panicking::catch_unwind::<core[35159d6ffb30e017]::result::Result<(), alloc[a8a7aba520129d98]::string::String>, core[35159d6ffb30e017]::panic::unwind_safe::AssertUnwindSafe<test[a8007afcd3effadc]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panicking.rs:544:19
[INFO] [stdout]   31:     0x5c28fccead6b - std[ec419fa8110287d5]::panic::catch_unwind::<core[35159d6ffb30e017]::panic::unwind_safe::AssertUnwindSafe<test[a8007afcd3effadc]::run_test_in_process::{closure#0}>, core[35159d6ffb30e017]::result::Result<(), alloc[a8a7aba520129d98]::string::String>>
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panic.rs:359:14
[INFO] [stdout]   32:     0x5c28fccead6b - test[a8007afcd3effadc]::run_test_in_process
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/test/src/lib.rs:747:27
[INFO] [stdout]   33:     0x5c28fccead6b - test[a8007afcd3effadc]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/test/src/lib.rs:668:43
[INFO] [stdout]   34:     0x5c28fcce5744 - test[a8007afcd3effadc]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/test/src/lib.rs:698:41
[INFO] [stdout]   35:     0x5c28fcce5744 - std[ec419fa8110287d5]::sys::backtrace::__rust_begin_short_backtrace::<test[a8007afcd3effadc]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   36:     0x5c28fcced972 - std[ec419fa8110287d5]::thread::lifecycle::spawn_unchecked::<test[a8007afcd3effadc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   37:     0x5c28fcced972 - <core[35159d6ffb30e017]::panic::unwind_safe::AssertUnwindSafe<std[ec419fa8110287d5]::thread::lifecycle::spawn_unchecked<test[a8007afcd3effadc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[35159d6ffb30e017]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   38:     0x5c28fcced972 - std[ec419fa8110287d5]::panicking::catch_unwind::do_call::<core[35159d6ffb30e017]::panic::unwind_safe::AssertUnwindSafe<std[ec419fa8110287d5]::thread::lifecycle::spawn_unchecked<test[a8007afcd3effadc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panicking.rs:581:40
[INFO] [stdout]   39:     0x5c28fcced972 - std[ec419fa8110287d5]::panicking::catch_unwind::<(), core[35159d6ffb30e017]::panic::unwind_safe::AssertUnwindSafe<std[ec419fa8110287d5]::thread::lifecycle::spawn_unchecked<test[a8007afcd3effadc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panicking.rs:544:19
[INFO] [stdout]   40:     0x5c28fcced972 - std[ec419fa8110287d5]::panic::catch_unwind::<core[35159d6ffb30e017]::panic::unwind_safe::AssertUnwindSafe<std[ec419fa8110287d5]::thread::lifecycle::spawn_unchecked<test[a8007afcd3effadc]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/panic.rs:359:14
[INFO] [stdout]   41:     0x5c28fcced972 - std[ec419fa8110287d5]::thread::lifecycle::spawn_unchecked::<test[a8007afcd3effadc]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   42:     0x5c28fcced972 - <std[ec419fa8110287d5]::thread::lifecycle::spawn_unchecked<test[a8007afcd3effadc]::run_test::{closure#1}, ()>::{closure#1} as core[35159d6ffb30e017]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   43:     0x5c28fcd5894f - <alloc[a8a7aba520129d98]::boxed::Box<dyn core[35159d6ffb30e017]::ops::function::FnOnce<(), Output = ()> + core[35159d6ffb30e017]::marker::Send> as core[35159d6ffb30e017]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/alloc/src/boxed.rs:2271:9
[INFO] [stdout]   44:     0x5c28fcd5894f - <std[ec419fa8110287d5]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/33835004928d3bf65db4d4712e1330766263b0bd/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   45:     0x76a718aa0aa4 - <unknown>
[INFO] [stdout]   46:     0x76a718b2da64 - clone
[INFO] [stdout]   47:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     ui_unsound_combinations_fail_to_compile
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 76.52s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `-p nexus-decimal --test ui_compile_fail`
[INFO] running `Command { std: "docker" "inspect" "18b00de6e0a48104e25c2adf6e24126d52d1ea739e4ebf4c32884565a1dc6a26", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "18b00de6e0a48104e25c2adf6e24126d52d1ea739e4ebf4c32884565a1dc6a26", kill_on_drop: false }`
[INFO] [stdout] 18b00de6e0a48104e25c2adf6e24126d52d1ea739e4ebf4c32884565a1dc6a26
