[INFO] fetching crate xs_foundation 0.4.10...
[INFO] testing xs_foundation-0.4.10 against 1.97.0-beta.6 for beta-1.98-1
[INFO] extracting crate xs_foundation 0.4.10 into /workspace/builds/worker-4-tc1/source
[INFO] started tweaking crates.io crate xs_foundation 0.4.10
[INFO] finished tweaking crates.io crate xs_foundation 0.4.10
[INFO] tweaked toml for crates.io crate xs_foundation 0.4.10 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate xs_foundation 0.4.10 on toolchain 1.97.0-beta.6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate xs_foundation 0.4.10 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded parking_lot_core v0.7.3
[INFO] [stderr]   Downloaded cloudabi v0.0.3
[INFO] [stderr]   Downloaded parking_lot v0.10.2
[INFO] [stderr]   Downloaded tokio-test v0.4.5
[INFO] [stderr]   Downloaded natlex_sort v0.1.0
[INFO] [stderr]   Downloaded convert_case v0.4.0
[INFO] [stderr]   Downloaded xskiplist v0.1.0
[INFO] [stderr]   Downloaded atomic_refcell v0.1.14
[INFO] [stderr]   Downloaded atomic-counter v1.0.1
[INFO] [stderr]   Downloaded lock_api v0.3.4
[INFO] [stderr]   Downloaded derive_more v0.99.20
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 28fafe925468fd827a4bb97759ed0a03e6832f647af36b741effe4074f1c8179
[INFO] running `Command { std: "docker" "start" "28fafe925468fd827a4bb97759ed0a03e6832f647af36b741effe4074f1c8179", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "28fafe925468fd827a4bb97759ed0a03e6832f647af36b741effe4074f1c8179", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "28fafe925468fd827a4bb97759ed0a03e6832f647af36b741effe4074f1c8179" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "28fafe925468fd827a4bb97759ed0a03e6832f647af36b741effe4074f1c8179", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "28fafe925468fd827a4bb97759ed0a03e6832f647af36b741effe4074f1c8179" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling typenum v1.20.0
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling futures-core v0.3.32
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling futures-io v0.3.32
[INFO] [stderr]    Compiling futures-task v0.3.32
[INFO] [stderr]    Compiling memchr v2.8.1
[INFO] [stderr]    Compiling cfg-if v0.1.10
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling const-oid v0.10.2
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling lock_api v0.3.4
[INFO] [stderr]    Compiling unsafe-libyaml v0.2.11
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling convert_case v0.4.0
[INFO] [stderr]    Compiling parking_lot_core v0.7.3
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling atomic-counter v1.0.1
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling parking_lot v0.10.2
[INFO] [stderr]    Compiling atomic_refcell v0.1.14
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling hybrid-array v0.4.12
[INFO] [stderr]    Compiling block-buffer v0.12.0
[INFO] [stderr]    Compiling crypto-common v0.2.2
[INFO] [stderr]    Compiling digest v0.11.3
[INFO] [stderr]    Compiling sha2 v0.11.0
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling derive_more v0.99.20
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand v0.9.4
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling xskiplist v0.1.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling xs_foundation v0.4.10 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `max`
[INFO] [stdout]  --> src/collections/map/u8.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cmp::{max, Ordering};
[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 imports: `Enumerate` and `FilterMap`
[INFO] [stdout]  --> src/collections/map/u8.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::iter::{Enumerate, FilterMap, FromIterator};
[INFO] [stdout]   |                 ^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::slice`
[INFO] [stdout]   --> src/collections/map/u8.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::slice;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Write`
[INFO] [stdout]    --> src/id/uuid4.rs:316:7
[INFO] [stdout]     |
[INFO] [stdout] 316 |   use std::fmt::Write;
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]  --> src/id/uuid4.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 |   fmt::{self, Display, Write},
[INFO] [stdout]   |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/collections/thin_map.rs:87:7
[INFO] [stdout]    |
[INFO] [stdout] 87 |       slice::from_raw_parts(self.ptr.as_ptr(), self.len as usize)
[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]   --> src/collections/thin_map.rs:81:3
[INFO] [stdout]    |
[INFO] [stdout] 81 |   unsafe fn slice(&self) -> &[KV<V>] {
[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: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts_mut` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_map.rs:101:7
[INFO] [stdout]     |
[INFO] [stdout] 101 |       slice::from_raw_parts_mut(self.ptr.as_ptr(), self.len as usize)
[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]    --> src/collections/thin_map.rs:95:3
[INFO] [stdout]     |
[INFO] [stdout]  95 |   unsafe fn slice_mut(&mut self) -> &mut [KV<V>] {
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/collections/thin_map.rs:289:16
[INFO] [stdout]     |
[INFO] [stdout] 259 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 289 |           Some(unsafe { (*buffer_start_ptr.add(read_old_idx as usize)).key })
[INFO] [stdout]     |                ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/collections/thin_map.rs:305:38
[INFO] [stdout]     |
[INFO] [stdout] 259 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 305 |               let old_item_src_ptr = unsafe { buffer_start_ptr.add(read_old_idx as usize) };
[INFO] [stdout]     |                                      ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/collections/thin_map.rs:308:15
[INFO] [stdout]     |
[INFO] [stdout] 259 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 308 |               unsafe {
[INFO] [stdout]     |               ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/collections/thin_map.rs:316:15
[INFO] [stdout]     |
[INFO] [stdout] 259 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 316 |               unsafe {
[INFO] [stdout]     |               ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/collections/thin_map.rs:325:36
[INFO] [stdout]     |
[INFO] [stdout] 259 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 325 |             let old_item_src_ptr = unsafe { buffer_start_ptr.add(read_old_idx as usize) };
[INFO] [stdout]     |                                    ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/collections/thin_map.rs:328:13
[INFO] [stdout]     |
[INFO] [stdout] 259 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 328 |             unsafe {
[INFO] [stdout]     |             ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/collections/thin_map.rs:337:13
[INFO] [stdout]     |
[INFO] [stdout] 259 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 337 |             unsafe {
[INFO] [stdout]     |             ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `overwritten` is assigned to, but never used
[INFO] [stdout]    --> src/collections/thin_map.rs:222:9
[INFO] [stdout]     |
[INFO] [stdout] 222 |     let mut overwritten = 0;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_overwritten` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `overwritten` is never read
[INFO] [stdout]    --> src/collections/thin_map.rs:227:11
[INFO] [stdout]     |
[INFO] [stdout] 227 |           overwritten += 1;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/collections/thin_set.rs:60:7
[INFO] [stdout]    |
[INFO] [stdout] 60 |       slice::from_raw_parts(self.ptr.as_ptr(), self.len as usize)
[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]   --> src/collections/thin_set.rs:54:3
[INFO] [stdout]    |
[INFO] [stdout] 54 |   unsafe fn slice(&self) -> &[u32] {
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts_mut` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/collections/thin_set.rs:74:7
[INFO] [stdout]    |
[INFO] [stdout] 74 |       slice::from_raw_parts_mut(self.ptr.as_ptr(), self.len as usize)
[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]   --> src/collections/thin_set.rs:68:3
[INFO] [stdout]    |
[INFO] [stdout] 68 |   unsafe fn slice_mut(&mut self) -> &mut [u32] {
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::alloc::alloc` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:285:7
[INFO] [stdout]     |
[INFO] [stdout] 285 |       alloc(new_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]    --> src/collections/thin_set.rs:275:3
[INFO] [stdout]     |
[INFO] [stdout] 275 | /   unsafe fn grow_and_insert_value_at(
[INFO] [stdout] 276 | |     &mut self,
[INFO] [stdout] 277 | |     index_usize: usize,
[INFO] [stdout] 278 | |     value: u32,
[INFO] [stdout] 279 | |     old_len: u32,
[INFO] [stdout] 280 | |     new_len: u32,
[INFO] [stdout] 281 | |   ) {
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::result::Result::<T, E>::unwrap_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:287:24
[INFO] [stdout]     |
[INFO] [stdout] 287 |       let old_layout = Self::layout(old_len).unwrap_unchecked();
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::alloc::realloc` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:288:7
[INFO] [stdout]     |
[INFO] [stdout] 288 |       realloc(self.ptr.as_ptr() as *mut u8, old_layout, new_layout.size())
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::<T>::new_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:293:16
[INFO] [stdout]     |
[INFO] [stdout] 293 |     self.ptr = NonNull::new_unchecked(new_ptr as *mut u32);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:300:15
[INFO] [stdout]     |
[INFO] [stdout] 300 |     let src = ptr.add(index_usize);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:301:15
[INFO] [stdout]     |
[INFO] [stdout] 301 |     let dst = src.add(1);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:303:5
[INFO] [stdout]     |
[INFO] [stdout] 303 |     ptr::copy(src, dst, count);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::write` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:306:5
[INFO] [stdout]     |
[INFO] [stdout] 306 |     ptr::write(ptr.add(index_usize), value);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:306:16
[INFO] [stdout]     |
[INFO] [stdout] 306 |     ptr::write(ptr.add(index_usize), value);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:314:15
[INFO] [stdout]     |
[INFO] [stdout] 314 |     let src = ptr.add(index_usize + 1);
[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]    --> src/collections/thin_set.rs:310:3
[INFO] [stdout]     |
[INFO] [stdout] 310 |   unsafe fn remove_value_at_and_shrink(&mut self, index_usize: usize, old_len: u32, new_len: u32) {
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:315:15
[INFO] [stdout]     |
[INFO] [stdout] 315 |     let dst = ptr.add(index_usize);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:317:5
[INFO] [stdout]     |
[INFO] [stdout] 317 |     ptr::copy(src, dst, count);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::result::Result::<T, E>::unwrap_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:321:24
[INFO] [stdout]     |
[INFO] [stdout] 321 |       let old_layout = Self::layout(old_len).unwrap_unchecked();
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::alloc::dealloc` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:322:7
[INFO] [stdout]     |
[INFO] [stdout] 322 |       dealloc(ptr as *mut u8, old_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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::result::Result::<T, E>::unwrap_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:325:24
[INFO] [stdout]     |
[INFO] [stdout] 325 |       let old_layout = Self::layout(old_len).unwrap_unchecked();
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::alloc::realloc` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:327:7
[INFO] [stdout]     |
[INFO] [stdout] 327 |       realloc(ptr as *mut u8, old_layout, new_layout.size())
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::<T>::new_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:334:16
[INFO] [stdout]     |
[INFO] [stdout] 334 |     self.ptr = NonNull::new_unchecked(new_ptr as *mut u32);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/collections/vec/sorted/mod.rs:147:49
[INFO] [stdout]     |
[INFO] [stdout] 147 |   pub fn find_by_key<K: Ord, F>(&self, key: &K, mut key_extractor: F) -> Option<&T>
[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]    --> src/collections/vec/u8/mod.rs:682:9
[INFO] [stdout]     |
[INFO] [stdout] 682 |     let mut iterator = iter.into_iter();
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `slice_mut` is never used
[INFO] [stdout]   --> src/collections/thin_set.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl ThinSetU32 {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 68 |   unsafe fn slice_mut(&mut self) -> &mut [u32] {
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `into_vec` is never used
[INFO] [stdout]    --> src/collections/vec/sorted/mod.rs:588:6
[INFO] [stdout]     |
[INFO] [stdout] 583 | trait VecU32Ext<T: Ord> {
[INFO] [stdout]     |       --------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 588 |   fn into_vec(self) -> Vec<T>;
[INFO] [stdout]     |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_hash` is never used
[INFO] [stdout]   --> src/hash.rs:53:15
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub(crate) fn make_hash<HS, H>(hash_state: &HS, t: H) -> u64
[INFO] [stdout]    |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `HEX_LOWER` is never used
[INFO] [stdout]   --> src/id/uuid4.rs:35:7
[INFO] [stdout]    |
[INFO] [stdout] 35 | const HEX_LOWER: &[u8; 16] = b"0123456789abcdef";
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/atomic.rs:22:14
[INFO] [stdout]    |
[INFO] [stdout] 22 |   pub fn get(&self) -> AtomicRef<Val> {
[INFO] [stdout]    |              ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |              |
[INFO] [stdout]    |              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 22 |   pub fn get(&self) -> AtomicRef<'_, Val> {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/atomic.rs:27:18
[INFO] [stdout]    |
[INFO] [stdout] 27 |   pub fn get_mut(&self) -> AtomicRefMut<Val> {
[INFO] [stdout]    |                  ^^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 27 |   pub fn get_mut(&self) -> AtomicRefMut<'_, Val> {
[INFO] [stdout]    |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map.rs:152:15
[INFO] [stdout]     |
[INFO] [stdout] 152 |   pub fn keys(&self) -> Keys<V> {
[INFO] [stdout]     |               ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |               |
[INFO] [stdout]     |               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 152 |   pub fn keys(&self) -> Keys<'_, V> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map.rs:158:17
[INFO] [stdout]     |
[INFO] [stdout] 158 |   pub fn values(&self) -> Values<V> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 158 |   pub fn values(&self) -> Values<'_, V> {
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map.rs:164:21
[INFO] [stdout]     |
[INFO] [stdout] 164 |   pub fn values_mut(&mut self) -> ValuesMut<V> {
[INFO] [stdout]     |                     ^^^^^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 164 |   pub fn values_mut(&mut self) -> ValuesMut<'_, V> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map.rs:188:15
[INFO] [stdout]     |
[INFO] [stdout] 188 |   pub fn iter(&self) -> Iter<V> {
[INFO] [stdout]     |               ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |               |
[INFO] [stdout]     |               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 188 |   pub fn iter(&self) -> Iter<'_, V> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map.rs:220:19
[INFO] [stdout]     |
[INFO] [stdout] 220 |   pub fn iter_mut(&mut self) -> IterMut<V> {
[INFO] [stdout]     |                   ^^^^^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 220 |   pub fn iter_mut(&mut self) -> IterMut<'_, V> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map.rs:474:16
[INFO] [stdout]     |
[INFO] [stdout] 474 |   pub fn entry(&mut self, key: &u32) -> Entry<V> {
[INFO] [stdout]     |                ^^^^^^^^^                ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                |
[INFO] [stdout]     |                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 474 |   pub fn entry(&mut self, key: &u32) -> Entry<'_, V> {
[INFO] [stdout]     |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map/u8.rs:108:15
[INFO] [stdout]     |
[INFO] [stdout] 108 |   pub fn keys(&self) -> Keys<V> {
[INFO] [stdout]     |               ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |               |
[INFO] [stdout]     |               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 108 |   pub fn keys(&self) -> Keys<'_, V> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map/u8.rs:113:17
[INFO] [stdout]     |
[INFO] [stdout] 113 |   pub fn values(&self) -> Values<V> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 113 |   pub fn values(&self) -> Values<'_, V> {
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map/u8.rs:118:21
[INFO] [stdout]     |
[INFO] [stdout] 118 |   pub fn values_mut(&mut self) -> ValuesMut<V> {
[INFO] [stdout]     |                     ^^^^^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 118 |   pub fn values_mut(&mut self) -> ValuesMut<'_, V> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map/u8.rs:127:15
[INFO] [stdout]     |
[INFO] [stdout] 127 |   pub fn iter(&self) -> Iter<V> {
[INFO] [stdout]     |               ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |               |
[INFO] [stdout]     |               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 127 |   pub fn iter(&self) -> Iter<'_, V> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map/u8.rs:137:19
[INFO] [stdout]     |
[INFO] [stdout] 137 |   pub fn iter_mut(&mut self) -> IterMut<V> {
[INFO] [stdout]     |                   ^^^^^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 137 |   pub fn iter_mut(&mut self) -> IterMut<'_, V> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map/u8.rs:256:16
[INFO] [stdout]     |
[INFO] [stdout] 256 |   pub fn entry(&mut self, key: u8) -> Entry<V> {
[INFO] [stdout]     |                ^^^^^^^^^              ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                |
[INFO] [stdout]     |                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 256 |   pub fn entry(&mut self, key: u8) -> Entry<'_, V> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/collections/skiplist.rs:84:15
[INFO] [stdout]    |
[INFO] [stdout] 84 |   pub fn iter(&self) -> SkipListIterator<K, V> {
[INFO] [stdout]    |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |               |
[INFO] [stdout]    |               the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 84 |   pub fn iter(&self) -> SkipListIterator<'_, K, V> {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/collections/skiplist.rs:90:22
[INFO] [stdout]    |
[INFO] [stdout] 90 |   pub fn least_upper(&self, max: &K) -> SkipListIterator<K, V> {
[INFO] [stdout]    |                      ^^^^^              ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 90 |   pub fn least_upper(&self, max: &K) -> SkipListIterator<'_, K, V> {
[INFO] [stdout]    |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/collections/skiplist.rs:96:25
[INFO] [stdout]    |
[INFO] [stdout] 96 |   pub fn greatest_lower(&self, min: &K) -> SkipListIterator<K, V> {
[INFO] [stdout]    |                         ^^^^^              ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 96 |   pub fn greatest_lower(&self, min: &K) -> SkipListIterator<'_, K, V> {
[INFO] [stdout]    |                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/collections/vec/sorted/mod.rs:305:7
[INFO] [stdout]     |
[INFO] [stdout] 305 |       self.insert(t);
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[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] 305 |       let _ = self.insert(t);
[INFO] [stdout]     |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/collections/vec/sorted/mod.rs:538:7
[INFO] [stdout]     |
[INFO] [stdout] 538 |       self.insert(t);
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 538 |       let _ = self.insert(t);
[INFO] [stdout]     |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/collections/vec/sorted_u8/mod.rs:296:7
[INFO] [stdout]     |
[INFO] [stdout] 296 |       self.insert(t);
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 296 |       let _ = self.insert(t);
[INFO] [stdout]     |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/collections/vec/sorted_u8/mod.rs:520:7
[INFO] [stdout]     |
[INFO] [stdout] 520 |       self.insert(t);
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 520 |       let _ = self.insert(t);
[INFO] [stdout]     |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/id/ulid/mod.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub mod custom;
[INFO] [stdout]    | ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/id/ulid/mod.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout]  1 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 18.21s
[INFO] running `Command { std: "docker" "inspect" "28fafe925468fd827a4bb97759ed0a03e6832f647af36b741effe4074f1c8179", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "28fafe925468fd827a4bb97759ed0a03e6832f647af36b741effe4074f1c8179" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling futures-core v0.3.32
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling bitflags v2.11.1
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling rand_xorshift v0.4.0
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling natord v1.0.9
[INFO] [stderr]    Compiling unarray v0.1.4
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling natlex_sort v0.1.0
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling tokio-test v0.4.5
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling rusty-fork v0.3.1
[INFO] [stderr]    Compiling proptest v1.11.0
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling xs_foundation v0.4.10 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `max`
[INFO] [stdout]  --> src/collections/map/u8.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cmp::{max, Ordering};
[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 imports: `Enumerate` and `FilterMap`
[INFO] [stdout]  --> src/collections/map/u8.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::iter::{Enumerate, FilterMap, FromIterator};
[INFO] [stdout]   |                 ^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::slice`
[INFO] [stdout]   --> src/collections/map/u8.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::slice;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Write`
[INFO] [stdout]    --> src/id/uuid4.rs:316:7
[INFO] [stdout]     |
[INFO] [stdout] 316 |   use std::fmt::Write;
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]  --> src/id/uuid4.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 |   fmt::{self, Display, Write},
[INFO] [stdout]   |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/collections/thin_map.rs:87:7
[INFO] [stdout]    |
[INFO] [stdout] 87 |       slice::from_raw_parts(self.ptr.as_ptr(), self.len as usize)
[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]   --> src/collections/thin_map.rs:81:3
[INFO] [stdout]    |
[INFO] [stdout] 81 |   unsafe fn slice(&self) -> &[KV<V>] {
[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: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts_mut` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_map.rs:101:7
[INFO] [stdout]     |
[INFO] [stdout] 101 |       slice::from_raw_parts_mut(self.ptr.as_ptr(), self.len as usize)
[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]    --> src/collections/thin_map.rs:95:3
[INFO] [stdout]     |
[INFO] [stdout]  95 |   unsafe fn slice_mut(&mut self) -> &mut [KV<V>] {
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/collections/thin_map.rs:289:16
[INFO] [stdout]     |
[INFO] [stdout] 259 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 289 |           Some(unsafe { (*buffer_start_ptr.add(read_old_idx as usize)).key })
[INFO] [stdout]     |                ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/collections/thin_map.rs:305:38
[INFO] [stdout]     |
[INFO] [stdout] 259 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 305 |               let old_item_src_ptr = unsafe { buffer_start_ptr.add(read_old_idx as usize) };
[INFO] [stdout]     |                                      ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/collections/thin_map.rs:308:15
[INFO] [stdout]     |
[INFO] [stdout] 259 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 308 |               unsafe {
[INFO] [stdout]     |               ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/collections/thin_map.rs:316:15
[INFO] [stdout]     |
[INFO] [stdout] 259 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 316 |               unsafe {
[INFO] [stdout]     |               ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/collections/thin_map.rs:325:36
[INFO] [stdout]     |
[INFO] [stdout] 259 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 325 |             let old_item_src_ptr = unsafe { buffer_start_ptr.add(read_old_idx as usize) };
[INFO] [stdout]     |                                    ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/collections/thin_map.rs:328:13
[INFO] [stdout]     |
[INFO] [stdout] 259 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 328 |             unsafe {
[INFO] [stdout]     |             ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/collections/thin_map.rs:337:13
[INFO] [stdout]     |
[INFO] [stdout] 259 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 337 |             unsafe {
[INFO] [stdout]     |             ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `overwritten` is assigned to, but never used
[INFO] [stdout]    --> src/collections/thin_map.rs:222:9
[INFO] [stdout]     |
[INFO] [stdout] 222 |     let mut overwritten = 0;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_overwritten` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `overwritten` is never read
[INFO] [stdout]    --> src/collections/thin_map.rs:227:11
[INFO] [stdout]     |
[INFO] [stdout] 227 |           overwritten += 1;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/collections/thin_set.rs:60:7
[INFO] [stdout]    |
[INFO] [stdout] 60 |       slice::from_raw_parts(self.ptr.as_ptr(), self.len as usize)
[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]   --> src/collections/thin_set.rs:54:3
[INFO] [stdout]    |
[INFO] [stdout] 54 |   unsafe fn slice(&self) -> &[u32] {
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts_mut` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/collections/thin_set.rs:74:7
[INFO] [stdout]    |
[INFO] [stdout] 74 |       slice::from_raw_parts_mut(self.ptr.as_ptr(), self.len as usize)
[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]   --> src/collections/thin_set.rs:68:3
[INFO] [stdout]    |
[INFO] [stdout] 68 |   unsafe fn slice_mut(&mut self) -> &mut [u32] {
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::alloc::alloc` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:285:7
[INFO] [stdout]     |
[INFO] [stdout] 285 |       alloc(new_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]    --> src/collections/thin_set.rs:275:3
[INFO] [stdout]     |
[INFO] [stdout] 275 | /   unsafe fn grow_and_insert_value_at(
[INFO] [stdout] 276 | |     &mut self,
[INFO] [stdout] 277 | |     index_usize: usize,
[INFO] [stdout] 278 | |     value: u32,
[INFO] [stdout] 279 | |     old_len: u32,
[INFO] [stdout] 280 | |     new_len: u32,
[INFO] [stdout] 281 | |   ) {
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::result::Result::<T, E>::unwrap_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:287:24
[INFO] [stdout]     |
[INFO] [stdout] 287 |       let old_layout = Self::layout(old_len).unwrap_unchecked();
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::alloc::realloc` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:288:7
[INFO] [stdout]     |
[INFO] [stdout] 288 |       realloc(self.ptr.as_ptr() as *mut u8, old_layout, new_layout.size())
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::<T>::new_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:293:16
[INFO] [stdout]     |
[INFO] [stdout] 293 |     self.ptr = NonNull::new_unchecked(new_ptr as *mut u32);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:300:15
[INFO] [stdout]     |
[INFO] [stdout] 300 |     let src = ptr.add(index_usize);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:301:15
[INFO] [stdout]     |
[INFO] [stdout] 301 |     let dst = src.add(1);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:303:5
[INFO] [stdout]     |
[INFO] [stdout] 303 |     ptr::copy(src, dst, count);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::write` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:306:5
[INFO] [stdout]     |
[INFO] [stdout] 306 |     ptr::write(ptr.add(index_usize), value);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:306:16
[INFO] [stdout]     |
[INFO] [stdout] 306 |     ptr::write(ptr.add(index_usize), value);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:314:15
[INFO] [stdout]     |
[INFO] [stdout] 314 |     let src = ptr.add(index_usize + 1);
[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]    --> src/collections/thin_set.rs:310:3
[INFO] [stdout]     |
[INFO] [stdout] 310 |   unsafe fn remove_value_at_and_shrink(&mut self, index_usize: usize, old_len: u32, new_len: u32) {
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:315:15
[INFO] [stdout]     |
[INFO] [stdout] 315 |     let dst = ptr.add(index_usize);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:317:5
[INFO] [stdout]     |
[INFO] [stdout] 317 |     ptr::copy(src, dst, count);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::result::Result::<T, E>::unwrap_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:321:24
[INFO] [stdout]     |
[INFO] [stdout] 321 |       let old_layout = Self::layout(old_len).unwrap_unchecked();
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::alloc::dealloc` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:322:7
[INFO] [stdout]     |
[INFO] [stdout] 322 |       dealloc(ptr as *mut u8, old_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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::result::Result::<T, E>::unwrap_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:325:24
[INFO] [stdout]     |
[INFO] [stdout] 325 |       let old_layout = Self::layout(old_len).unwrap_unchecked();
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::alloc::realloc` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:327:7
[INFO] [stdout]     |
[INFO] [stdout] 327 |       realloc(ptr as *mut u8, old_layout, new_layout.size())
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::<T>::new_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:334:16
[INFO] [stdout]     |
[INFO] [stdout] 334 |     self.ptr = NonNull::new_unchecked(new_ptr as *mut u32);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/collections/vec/sorted/mod.rs:147:49
[INFO] [stdout]     |
[INFO] [stdout] 147 |   pub fn find_by_key<K: Ord, F>(&self, key: &K, mut key_extractor: F) -> Option<&T>
[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]    --> src/collections/vec/u8/mod.rs:682:9
[INFO] [stdout]     |
[INFO] [stdout] 682 |     let mut iterator = iter.into_iter();
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `slice_mut` is never used
[INFO] [stdout]   --> src/collections/thin_set.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl ThinSetU32 {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 68 |   unsafe fn slice_mut(&mut self) -> &mut [u32] {
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `into_vec` is never used
[INFO] [stdout]    --> src/collections/vec/sorted/mod.rs:588:6
[INFO] [stdout]     |
[INFO] [stdout] 583 | trait VecU32Ext<T: Ord> {
[INFO] [stdout]     |       --------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 588 |   fn into_vec(self) -> Vec<T>;
[INFO] [stdout]     |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_hash` is never used
[INFO] [stdout]   --> src/hash.rs:53:15
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub(crate) fn make_hash<HS, H>(hash_state: &HS, t: H) -> u64
[INFO] [stdout]    |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `HEX_LOWER` is never used
[INFO] [stdout]   --> src/id/uuid4.rs:35:7
[INFO] [stdout]    |
[INFO] [stdout] 35 | const HEX_LOWER: &[u8; 16] = b"0123456789abcdef";
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/atomic.rs:22:14
[INFO] [stdout]    |
[INFO] [stdout] 22 |   pub fn get(&self) -> AtomicRef<Val> {
[INFO] [stdout]    |              ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |              |
[INFO] [stdout]    |              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 22 |   pub fn get(&self) -> AtomicRef<'_, Val> {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/atomic.rs:27:18
[INFO] [stdout]    |
[INFO] [stdout] 27 |   pub fn get_mut(&self) -> AtomicRefMut<Val> {
[INFO] [stdout]    |                  ^^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 27 |   pub fn get_mut(&self) -> AtomicRefMut<'_, Val> {
[INFO] [stdout]    |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map.rs:152:15
[INFO] [stdout]     |
[INFO] [stdout] 152 |   pub fn keys(&self) -> Keys<V> {
[INFO] [stdout]     |               ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |               |
[INFO] [stdout]     |               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 152 |   pub fn keys(&self) -> Keys<'_, V> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map.rs:158:17
[INFO] [stdout]     |
[INFO] [stdout] 158 |   pub fn values(&self) -> Values<V> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 158 |   pub fn values(&self) -> Values<'_, V> {
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map.rs:164:21
[INFO] [stdout]     |
[INFO] [stdout] 164 |   pub fn values_mut(&mut self) -> ValuesMut<V> {
[INFO] [stdout]     |                     ^^^^^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 164 |   pub fn values_mut(&mut self) -> ValuesMut<'_, V> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map.rs:188:15
[INFO] [stdout]     |
[INFO] [stdout] 188 |   pub fn iter(&self) -> Iter<V> {
[INFO] [stdout]     |               ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |               |
[INFO] [stdout]     |               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 188 |   pub fn iter(&self) -> Iter<'_, V> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map.rs:220:19
[INFO] [stdout]     |
[INFO] [stdout] 220 |   pub fn iter_mut(&mut self) -> IterMut<V> {
[INFO] [stdout]     |                   ^^^^^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 220 |   pub fn iter_mut(&mut self) -> IterMut<'_, V> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map.rs:474:16
[INFO] [stdout]     |
[INFO] [stdout] 474 |   pub fn entry(&mut self, key: &u32) -> Entry<V> {
[INFO] [stdout]     |                ^^^^^^^^^                ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                |
[INFO] [stdout]     |                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 474 |   pub fn entry(&mut self, key: &u32) -> Entry<'_, V> {
[INFO] [stdout]     |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map/u8.rs:108:15
[INFO] [stdout]     |
[INFO] [stdout] 108 |   pub fn keys(&self) -> Keys<V> {
[INFO] [stdout]     |               ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |               |
[INFO] [stdout]     |               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 108 |   pub fn keys(&self) -> Keys<'_, V> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map/u8.rs:113:17
[INFO] [stdout]     |
[INFO] [stdout] 113 |   pub fn values(&self) -> Values<V> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 113 |   pub fn values(&self) -> Values<'_, V> {
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map/u8.rs:118:21
[INFO] [stdout]     |
[INFO] [stdout] 118 |   pub fn values_mut(&mut self) -> ValuesMut<V> {
[INFO] [stdout]     |                     ^^^^^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 118 |   pub fn values_mut(&mut self) -> ValuesMut<'_, V> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map/u8.rs:127:15
[INFO] [stdout]     |
[INFO] [stdout] 127 |   pub fn iter(&self) -> Iter<V> {
[INFO] [stdout]     |               ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |               |
[INFO] [stdout]     |               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 127 |   pub fn iter(&self) -> Iter<'_, V> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map/u8.rs:137:19
[INFO] [stdout]     |
[INFO] [stdout] 137 |   pub fn iter_mut(&mut self) -> IterMut<V> {
[INFO] [stdout]     |                   ^^^^^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 137 |   pub fn iter_mut(&mut self) -> IterMut<'_, V> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map/u8.rs:256:16
[INFO] [stdout]     |
[INFO] [stdout] 256 |   pub fn entry(&mut self, key: u8) -> Entry<V> {
[INFO] [stdout]     |                ^^^^^^^^^              ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                |
[INFO] [stdout]     |                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 256 |   pub fn entry(&mut self, key: u8) -> Entry<'_, V> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/collections/skiplist.rs:84:15
[INFO] [stdout]    |
[INFO] [stdout] 84 |   pub fn iter(&self) -> SkipListIterator<K, V> {
[INFO] [stdout]    |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |               |
[INFO] [stdout]    |               the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 84 |   pub fn iter(&self) -> SkipListIterator<'_, K, V> {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/collections/skiplist.rs:90:22
[INFO] [stdout]    |
[INFO] [stdout] 90 |   pub fn least_upper(&self, max: &K) -> SkipListIterator<K, V> {
[INFO] [stdout]    |                      ^^^^^              ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 90 |   pub fn least_upper(&self, max: &K) -> SkipListIterator<'_, K, V> {
[INFO] [stdout]    |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/collections/skiplist.rs:96:25
[INFO] [stdout]    |
[INFO] [stdout] 96 |   pub fn greatest_lower(&self, min: &K) -> SkipListIterator<K, V> {
[INFO] [stdout]    |                         ^^^^^              ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 96 |   pub fn greatest_lower(&self, min: &K) -> SkipListIterator<'_, K, V> {
[INFO] [stdout]    |                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/collections/vec/sorted/mod.rs:305:7
[INFO] [stdout]     |
[INFO] [stdout] 305 |       self.insert(t);
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[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] 305 |       let _ = self.insert(t);
[INFO] [stdout]     |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/collections/vec/sorted/mod.rs:538:7
[INFO] [stdout]     |
[INFO] [stdout] 538 |       self.insert(t);
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 538 |       let _ = self.insert(t);
[INFO] [stdout]     |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/collections/vec/sorted_u8/mod.rs:296:7
[INFO] [stdout]     |
[INFO] [stdout] 296 |       self.insert(t);
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 296 |       let _ = self.insert(t);
[INFO] [stdout]     |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/collections/vec/sorted_u8/mod.rs:520:7
[INFO] [stdout]     |
[INFO] [stdout] 520 |       self.insert(t);
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 520 |       let _ = self.insert(t);
[INFO] [stdout]     |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/id/ulid/mod.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub mod custom;
[INFO] [stdout]    | ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/id/ulid/mod.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout]  1 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `max`
[INFO] [stdout]  --> src/collections/map/u8.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::cmp::{max, Ordering};
[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 imports: `Enumerate` and `FilterMap`
[INFO] [stdout]  --> src/collections/map/u8.rs:9:17
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::iter::{Enumerate, FilterMap, FromIterator};
[INFO] [stdout]   |                 ^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::slice`
[INFO] [stdout]   --> src/collections/map/u8.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::slice;
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Write`
[INFO] [stdout]    --> src/id/uuid4.rs:316:7
[INFO] [stdout]     |
[INFO] [stdout] 316 |   use std::fmt::Write;
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `encodings::base32::tests::rand::thread_rng`: Renamed to `rng`
[INFO] [stdout]    --> src/collections/thin_set.rs:666:25
[INFO] [stdout]     |
[INFO] [stdout] 666 |     let mut rng = rand::thread_rng();
[INFO] [stdout]     |                         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `encodings::base32::tests::rand::thread_rng`: Renamed to `rng`
[INFO] [stdout]    --> src/collections/thin_set.rs:720:25
[INFO] [stdout]     |
[INFO] [stdout] 720 |     let mut rng = rand::thread_rng();
[INFO] [stdout]     |                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated function `encodings::base32::tests::rand::thread_rng`: Renamed to `rng`
[INFO] [stdout]    --> src/collections/thin_set.rs:741:51
[INFO] [stdout]     |
[INFO] [stdout] 741 |     let mut rng: rand::prelude::ThreadRng = rand::thread_rng();
[INFO] [stdout]     |                                                   ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `encodings::base32::tests::rand::Rng::gen_range`: Renamed to `random_range`
[INFO] [stdout]    --> src/collections/thin_set.rs:673:21
[INFO] [stdout]     |
[INFO] [stdout] 673 |       let val = rng.gen_range(0u32..2000);
[INFO] [stdout]     |                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `encodings::base32::tests::rand::Rng::gen_range`: Renamed to `random_range`
[INFO] [stdout]    --> src/collections/thin_set.rs:686:21
[INFO] [stdout]     |
[INFO] [stdout] 686 |       let val = rng.gen_range(0u32..2000); // Overlap range with initial
[INFO] [stdout]     |                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `encodings::base32::tests::rand::Rng::gen_range`: Renamed to `random_range`
[INFO] [stdout]    --> src/collections/thin_set.rs:727:23
[INFO] [stdout]     |
[INFO] [stdout] 727 |         let val = rng.gen_range(1u32..1000);
[INFO] [stdout]     |                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `encodings::base32::tests::rand::Rng::gen_range`: Renamed to `random_range`
[INFO] [stdout]    --> src/collections/thin_set.rs:749:23
[INFO] [stdout]     |
[INFO] [stdout] 749 |         let val = rng.gen_range(1u32..1000);
[INFO] [stdout]     |                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]  --> src/id/uuid4.rs:3:24
[INFO] [stdout]   |
[INFO] [stdout] 3 |   fmt::{self, Display, Write},
[INFO] [stdout]   |                        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/collections/thin_map.rs:87:7
[INFO] [stdout]    |
[INFO] [stdout] 87 |       slice::from_raw_parts(self.ptr.as_ptr(), self.len as usize)
[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]   --> src/collections/thin_map.rs:81:3
[INFO] [stdout]    |
[INFO] [stdout] 81 |   unsafe fn slice(&self) -> &[KV<V>] {
[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: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts_mut` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_map.rs:101:7
[INFO] [stdout]     |
[INFO] [stdout] 101 |       slice::from_raw_parts_mut(self.ptr.as_ptr(), self.len as usize)
[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]    --> src/collections/thin_map.rs:95:3
[INFO] [stdout]     |
[INFO] [stdout]  95 |   unsafe fn slice_mut(&mut self) -> &mut [KV<V>] {
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/collections/thin_map.rs:289:16
[INFO] [stdout]     |
[INFO] [stdout] 259 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 289 |           Some(unsafe { (*buffer_start_ptr.add(read_old_idx as usize)).key })
[INFO] [stdout]     |                ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/collections/thin_map.rs:305:38
[INFO] [stdout]     |
[INFO] [stdout] 259 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 305 |               let old_item_src_ptr = unsafe { buffer_start_ptr.add(read_old_idx as usize) };
[INFO] [stdout]     |                                      ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/collections/thin_map.rs:308:15
[INFO] [stdout]     |
[INFO] [stdout] 259 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 308 |               unsafe {
[INFO] [stdout]     |               ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/collections/thin_map.rs:316:15
[INFO] [stdout]     |
[INFO] [stdout] 259 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 316 |               unsafe {
[INFO] [stdout]     |               ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/collections/thin_map.rs:325:36
[INFO] [stdout]     |
[INFO] [stdout] 259 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 325 |             let old_item_src_ptr = unsafe { buffer_start_ptr.add(read_old_idx as usize) };
[INFO] [stdout]     |                                    ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/collections/thin_map.rs:328:13
[INFO] [stdout]     |
[INFO] [stdout] 259 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 328 |             unsafe {
[INFO] [stdout]     |             ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/collections/thin_map.rs:337:13
[INFO] [stdout]     |
[INFO] [stdout] 259 |     unsafe {
[INFO] [stdout]     |     ------ because it's nested under this `unsafe` block
[INFO] [stdout] ...
[INFO] [stdout] 337 |             unsafe {
[INFO] [stdout]     |             ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `overwritten` is assigned to, but never used
[INFO] [stdout]    --> src/collections/thin_map.rs:222:9
[INFO] [stdout]     |
[INFO] [stdout] 222 |     let mut overwritten = 0;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_overwritten` instead
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `overwritten` is never read
[INFO] [stdout]    --> src/collections/thin_map.rs:227:11
[INFO] [stdout]     |
[INFO] [stdout] 227 |           overwritten += 1;
[INFO] [stdout]     |           ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inserted_count`
[INFO] [stdout]    --> src/collections/thin_map.rs:861:9
[INFO] [stdout]     |
[INFO] [stdout] 861 |     let inserted_count = map.insert_many(batch.clone()); // Clone batch for ref update
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_inserted_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `expected_new_keys` is assigned to, but never used
[INFO] [stdout]    --> src/collections/thin_map.rs:864:9
[INFO] [stdout]     |
[INFO] [stdout] 864 |     let mut expected_new_keys = 0;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_expected_new_keys` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `expected_new_keys` is never read
[INFO] [stdout]    --> src/collections/thin_map.rs:868:9
[INFO] [stdout]     |
[INFO] [stdout] 868 |         expected_new_keys += 1;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/collections/thin_set.rs:60:7
[INFO] [stdout]    |
[INFO] [stdout] 60 |       slice::from_raw_parts(self.ptr.as_ptr(), self.len as usize)
[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]   --> src/collections/thin_set.rs:54:3
[INFO] [stdout]    |
[INFO] [stdout] 54 |   unsafe fn slice(&self) -> &[u32] {
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::slice::from_raw_parts_mut` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/collections/thin_set.rs:74:7
[INFO] [stdout]    |
[INFO] [stdout] 74 |       slice::from_raw_parts_mut(self.ptr.as_ptr(), self.len as usize)
[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]   --> src/collections/thin_set.rs:68:3
[INFO] [stdout]    |
[INFO] [stdout] 68 |   unsafe fn slice_mut(&mut self) -> &mut [u32] {
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::alloc::alloc` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:285:7
[INFO] [stdout]     |
[INFO] [stdout] 285 |       alloc(new_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]    --> src/collections/thin_set.rs:275:3
[INFO] [stdout]     |
[INFO] [stdout] 275 | /   unsafe fn grow_and_insert_value_at(
[INFO] [stdout] 276 | |     &mut self,
[INFO] [stdout] 277 | |     index_usize: usize,
[INFO] [stdout] 278 | |     value: u32,
[INFO] [stdout] 279 | |     old_len: u32,
[INFO] [stdout] 280 | |     new_len: u32,
[INFO] [stdout] 281 | |   ) {
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::result::Result::<T, E>::unwrap_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:287:24
[INFO] [stdout]     |
[INFO] [stdout] 287 |       let old_layout = Self::layout(old_len).unwrap_unchecked();
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::alloc::realloc` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:288:7
[INFO] [stdout]     |
[INFO] [stdout] 288 |       realloc(self.ptr.as_ptr() as *mut u8, old_layout, new_layout.size())
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::<T>::new_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:293:16
[INFO] [stdout]     |
[INFO] [stdout] 293 |     self.ptr = NonNull::new_unchecked(new_ptr as *mut u32);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:300:15
[INFO] [stdout]     |
[INFO] [stdout] 300 |     let src = ptr.add(index_usize);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:301:15
[INFO] [stdout]     |
[INFO] [stdout] 301 |     let dst = src.add(1);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:303:5
[INFO] [stdout]     |
[INFO] [stdout] 303 |     ptr::copy(src, dst, count);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::write` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:306:5
[INFO] [stdout]     |
[INFO] [stdout] 306 |     ptr::write(ptr.add(index_usize), value);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:306:16
[INFO] [stdout]     |
[INFO] [stdout] 306 |     ptr::write(ptr.add(index_usize), value);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:314:15
[INFO] [stdout]     |
[INFO] [stdout] 314 |     let src = ptr.add(index_usize + 1);
[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]    --> src/collections/thin_set.rs:310:3
[INFO] [stdout]     |
[INFO] [stdout] 310 |   unsafe fn remove_value_at_and_shrink(&mut self, index_usize: usize, old_len: u32, new_len: u32) {
[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] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:315:15
[INFO] [stdout]     |
[INFO] [stdout] 315 |     let dst = ptr.add(index_usize);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:317:5
[INFO] [stdout]     |
[INFO] [stdout] 317 |     ptr::copy(src, dst, count);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::result::Result::<T, E>::unwrap_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:321:24
[INFO] [stdout]     |
[INFO] [stdout] 321 |       let old_layout = Self::layout(old_len).unwrap_unchecked();
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::alloc::dealloc` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:322:7
[INFO] [stdout]     |
[INFO] [stdout] 322 |       dealloc(ptr as *mut u8, old_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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::result::Result::<T, E>::unwrap_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:325:24
[INFO] [stdout]     |
[INFO] [stdout] 325 |       let old_layout = Self::layout(old_len).unwrap_unchecked();
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::alloc::realloc` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:327:7
[INFO] [stdout]     |
[INFO] [stdout] 327 |       realloc(ptr as *mut u8, old_layout, new_layout.size())
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::NonNull::<T>::new_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/collections/thin_set.rs:334:16
[INFO] [stdout]     |
[INFO] [stdout] 334 |     self.ptr = NonNull::new_unchecked(new_ptr as *mut u32);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `expected_new` is assigned to, but never used
[INFO] [stdout]    --> src/collections/thin_set.rs:684:9
[INFO] [stdout]     |
[INFO] [stdout] 684 |     let mut expected_new = 0;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_expected_new` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `inserted_count`
[INFO] [stdout]    --> src/collections/thin_set.rs:695:9
[INFO] [stdout]     |
[INFO] [stdout] 695 |     let inserted_count = set.insert_many(batch.clone());
[INFO] [stdout]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_inserted_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `actual_expected_new` is assigned to, but never used
[INFO] [stdout]    --> src/collections/thin_set.rs:698:9
[INFO] [stdout]     |
[INFO] [stdout] 698 |     let mut actual_expected_new = 0;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: consider using `_actual_expected_new` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `expected_new` is never read
[INFO] [stdout]    --> src/collections/thin_set.rs:690:9
[INFO] [stdout]     |
[INFO] [stdout] 690 |         expected_new += 1;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `actual_expected_new` is never read
[INFO] [stdout]    --> src/collections/thin_set.rs:702:9
[INFO] [stdout]     |
[INFO] [stdout] 702 |         actual_expected_new += 1;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/collections/vec/sorted/mod.rs:147:49
[INFO] [stdout]     |
[INFO] [stdout] 147 |   pub fn find_by_key<K: Ord, F>(&self, key: &K, mut key_extractor: F) -> Option<&T>
[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]    --> src/collections/vec/u8/mod.rs:682:9
[INFO] [stdout]     |
[INFO] [stdout] 682 |     let mut iterator = iter.into_iter();
[INFO] [stdout]     |         ----^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `slice_mut` is never used
[INFO] [stdout]   --> src/collections/thin_set.rs:68:13
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl ThinSetU32 {
[INFO] [stdout]    | --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 68 |   unsafe fn slice_mut(&mut self) -> &mut [u32] {
[INFO] [stdout]    |             ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `into_vec` is never used
[INFO] [stdout]    --> src/collections/vec/sorted/mod.rs:588:6
[INFO] [stdout]     |
[INFO] [stdout] 583 | trait VecU32Ext<T: Ord> {
[INFO] [stdout]     |       --------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 588 |   fn into_vec(self) -> Vec<T>;
[INFO] [stdout]     |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `make_hash` is never used
[INFO] [stdout]   --> src/hash.rs:53:15
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub(crate) fn make_hash<HS, H>(hash_state: &HS, t: H) -> u64
[INFO] [stdout]    |               ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `HEX_LOWER` is never used
[INFO] [stdout]   --> src/id/uuid4.rs:35:7
[INFO] [stdout]    |
[INFO] [stdout] 35 | const HEX_LOWER: &[u8; 16] = b"0123456789abcdef";
[INFO] [stdout]    |       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/atomic.rs:22:14
[INFO] [stdout]    |
[INFO] [stdout] 22 |   pub fn get(&self) -> AtomicRef<Val> {
[INFO] [stdout]    |              ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |              |
[INFO] [stdout]    |              the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 22 |   pub fn get(&self) -> AtomicRef<'_, Val> {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/atomic.rs:27:18
[INFO] [stdout]    |
[INFO] [stdout] 27 |   pub fn get_mut(&self) -> AtomicRefMut<Val> {
[INFO] [stdout]    |                  ^^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 27 |   pub fn get_mut(&self) -> AtomicRefMut<'_, Val> {
[INFO] [stdout]    |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `parking_lot::lock_api::RwLockWriteGuard` that must be used
[INFO] [stdout]    --> src/sync/lock.rs:337:5
[INFO] [stdout]     |
[INFO] [stdout] 337 |     lock.lock().try_write().unwrap();
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: if unused the RwLock will immediately unlock
[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] 337 |     let _ = lock.lock().try_write().unwrap();
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map.rs:152:15
[INFO] [stdout]     |
[INFO] [stdout] 152 |   pub fn keys(&self) -> Keys<V> {
[INFO] [stdout]     |               ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |               |
[INFO] [stdout]     |               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 152 |   pub fn keys(&self) -> Keys<'_, V> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map.rs:158:17
[INFO] [stdout]     |
[INFO] [stdout] 158 |   pub fn values(&self) -> Values<V> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 158 |   pub fn values(&self) -> Values<'_, V> {
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map.rs:164:21
[INFO] [stdout]     |
[INFO] [stdout] 164 |   pub fn values_mut(&mut self) -> ValuesMut<V> {
[INFO] [stdout]     |                     ^^^^^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 164 |   pub fn values_mut(&mut self) -> ValuesMut<'_, V> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map.rs:188:15
[INFO] [stdout]     |
[INFO] [stdout] 188 |   pub fn iter(&self) -> Iter<V> {
[INFO] [stdout]     |               ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |               |
[INFO] [stdout]     |               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 188 |   pub fn iter(&self) -> Iter<'_, V> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map.rs:220:19
[INFO] [stdout]     |
[INFO] [stdout] 220 |   pub fn iter_mut(&mut self) -> IterMut<V> {
[INFO] [stdout]     |                   ^^^^^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 220 |   pub fn iter_mut(&mut self) -> IterMut<'_, V> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map.rs:474:16
[INFO] [stdout]     |
[INFO] [stdout] 474 |   pub fn entry(&mut self, key: &u32) -> Entry<V> {
[INFO] [stdout]     |                ^^^^^^^^^                ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                |
[INFO] [stdout]     |                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 474 |   pub fn entry(&mut self, key: &u32) -> Entry<'_, V> {
[INFO] [stdout]     |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map/u8.rs:108:15
[INFO] [stdout]     |
[INFO] [stdout] 108 |   pub fn keys(&self) -> Keys<V> {
[INFO] [stdout]     |               ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |               |
[INFO] [stdout]     |               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 108 |   pub fn keys(&self) -> Keys<'_, V> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map/u8.rs:113:17
[INFO] [stdout]     |
[INFO] [stdout] 113 |   pub fn values(&self) -> Values<V> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 113 |   pub fn values(&self) -> Values<'_, V> {
[INFO] [stdout]     |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map/u8.rs:118:21
[INFO] [stdout]     |
[INFO] [stdout] 118 |   pub fn values_mut(&mut self) -> ValuesMut<V> {
[INFO] [stdout]     |                     ^^^^^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 118 |   pub fn values_mut(&mut self) -> ValuesMut<'_, V> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map/u8.rs:127:15
[INFO] [stdout]     |
[INFO] [stdout] 127 |   pub fn iter(&self) -> Iter<V> {
[INFO] [stdout]     |               ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |               |
[INFO] [stdout]     |               the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 127 |   pub fn iter(&self) -> Iter<'_, V> {
[INFO] [stdout]     |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map/u8.rs:137:19
[INFO] [stdout]     |
[INFO] [stdout] 137 |   pub fn iter_mut(&mut self) -> IterMut<V> {
[INFO] [stdout]     |                   ^^^^^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 137 |   pub fn iter_mut(&mut self) -> IterMut<'_, V> {
[INFO] [stdout]     |                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/collections/map/u8.rs:256:16
[INFO] [stdout]     |
[INFO] [stdout] 256 |   pub fn entry(&mut self, key: u8) -> Entry<V> {
[INFO] [stdout]     |                ^^^^^^^^^              ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                |
[INFO] [stdout]     |                the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 256 |   pub fn entry(&mut self, key: u8) -> Entry<'_, V> {
[INFO] [stdout]     |                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/collections/skiplist.rs:84:15
[INFO] [stdout]    |
[INFO] [stdout] 84 |   pub fn iter(&self) -> SkipListIterator<K, V> {
[INFO] [stdout]    |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |               |
[INFO] [stdout]    |               the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 84 |   pub fn iter(&self) -> SkipListIterator<'_, K, V> {
[INFO] [stdout]    |                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/collections/skiplist.rs:90:22
[INFO] [stdout]    |
[INFO] [stdout] 90 |   pub fn least_upper(&self, max: &K) -> SkipListIterator<K, V> {
[INFO] [stdout]    |                      ^^^^^              ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                      |
[INFO] [stdout]    |                      the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 90 |   pub fn least_upper(&self, max: &K) -> SkipListIterator<'_, K, V> {
[INFO] [stdout]    |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/collections/skiplist.rs:96:25
[INFO] [stdout]    |
[INFO] [stdout] 96 |   pub fn greatest_lower(&self, min: &K) -> SkipListIterator<K, V> {
[INFO] [stdout]    |                         ^^^^^              ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                         |
[INFO] [stdout]    |                         the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 96 |   pub fn greatest_lower(&self, min: &K) -> SkipListIterator<'_, K, V> {
[INFO] [stdout]    |                                                             +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement
[INFO] [stdout]    --> src/collections/skiplist.rs:150:18
[INFO] [stdout]     |
[INFO] [stdout] 150 |     for entry in skiplist.begin() {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stdout] help: to check pattern in a loop use `while let`
[INFO] [stdout]     |
[INFO] [stdout] 150 -     for entry in skiplist.begin() {
[INFO] [stdout] 150 +     while let Some(entry) = skiplist.begin() {
[INFO] [stdout]     |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]     |
[INFO] [stdout] 150 -     for entry in skiplist.begin() {
[INFO] [stdout] 150 +     if let Some(entry) = skiplist.begin() {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/collections/vec/sorted/mod.rs:305:7
[INFO] [stdout]     |
[INFO] [stdout] 305 |       self.insert(t);
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 305 |       let _ = self.insert(t);
[INFO] [stdout]     |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/collections/vec/sorted/mod.rs:538:7
[INFO] [stdout]     |
[INFO] [stdout] 538 |       self.insert(t);
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 538 |       let _ = self.insert(t);
[INFO] [stdout]     |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/collections/vec/sorted_u8/mod.rs:296:7
[INFO] [stdout]     |
[INFO] [stdout] 296 |       self.insert(t);
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 296 |       let _ = self.insert(t);
[INFO] [stdout]     |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/collections/vec/sorted_u8/mod.rs:520:7
[INFO] [stdout]     |
[INFO] [stdout] 520 |       self.insert(t);
[INFO] [stdout]     |       ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 520 |       let _ = self.insert(t);
[INFO] [stdout]     |       +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/collections/vec/sorted_u8/tests.rs:111:5
[INFO] [stdout]     |
[INFO] [stdout] 111 |     v.insert(i as i16);
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 111 |     let _ = v.insert(i as i16);
[INFO] [stdout]     |     +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/collections/vec/sorted_u8/tests.rs:113:3
[INFO] [stdout]     |
[INFO] [stdout] 113 |   v.insert(300); // Should panic
[INFO] [stdout]     |   ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 113 |   let _ = v.insert(300); // Should panic
[INFO] [stdout]     |   +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: missing documentation for a module
[INFO] [stdout]   --> src/id/ulid/mod.rs:22:1
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub mod custom;
[INFO] [stdout]    | ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/id/ulid/mod.rs:1:9
[INFO] [stdout]    |
[INFO] [stdout]  1 | #![warn(missing_docs)]
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 18.43s
[INFO] running `Command { std: "docker" "inspect" "28fafe925468fd827a4bb97759ed0a03e6832f647af36b741effe4074f1c8179", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "28fafe925468fd827a4bb97759ed0a03e6832f647af36b741effe4074f1c8179" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `max`
[INFO] [stderr]  --> src/collections/map/u8.rs:6:16
[INFO] [stderr]   |
[INFO] [stderr] 6 | use std::cmp::{max, Ordering};
[INFO] [stderr]   |                ^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `Enumerate` and `FilterMap`
[INFO] [stderr]  --> src/collections/map/u8.rs:9:17
[INFO] [stderr]   |
[INFO] [stderr] 9 | use std::iter::{Enumerate, FilterMap, FromIterator};
[INFO] [stderr]   |                 ^^^^^^^^^  ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::slice`
[INFO] [stderr]   --> src/collections/map/u8.rs:13:5
[INFO] [stderr]    |
[INFO] [stderr] 13 | use std::slice;
[INFO] [stderr]    |     ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::fmt::Write`
[INFO] [stderr]    --> src/id/uuid4.rs:316:7
[INFO] [stderr]     |
[INFO] [stderr] 316 |   use std::fmt::Write;
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `Write`
[INFO] [stderr]  --> src/id/uuid4.rs:3:24
[INFO] [stderr]   |
[INFO] [stderr] 3 |   fmt::{self, Display, Write},
[INFO] [stderr]   |                        ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::slice::from_raw_parts` is unsafe and requires unsafe block
[INFO] [stderr]   --> src/collections/thin_map.rs:87:7
[INFO] [stderr]    |
[INFO] [stderr] 87 |       slice::from_raw_parts(self.ptr.as_ptr(), self.len as usize)
[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]   --> src/collections/thin_map.rs:81:3
[INFO] [stderr]    |
[INFO] [stderr] 81 |   unsafe fn slice(&self) -> &[KV<V>] {
[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: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::slice::from_raw_parts_mut` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/collections/thin_map.rs:101:7
[INFO] [stderr]     |
[INFO] [stderr] 101 |       slice::from_raw_parts_mut(self.ptr.as_ptr(), self.len as usize)
[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]    --> src/collections/thin_map.rs:95:3
[INFO] [stderr]     |
[INFO] [stderr]  95 |   unsafe fn slice_mut(&mut self) -> &mut [KV<V>] {
[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] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/collections/thin_map.rs:289:16
[INFO] [stderr]     |
[INFO] [stderr] 259 |     unsafe {
[INFO] [stderr]     |     ------ because it's nested under this `unsafe` block
[INFO] [stderr] ...
[INFO] [stderr] 289 |           Some(unsafe { (*buffer_start_ptr.add(read_old_idx as usize)).key })
[INFO] [stderr]     |                ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/collections/thin_map.rs:305:38
[INFO] [stderr]     |
[INFO] [stderr] 259 |     unsafe {
[INFO] [stderr]     |     ------ because it's nested under this `unsafe` block
[INFO] [stderr] ...
[INFO] [stderr] 305 |               let old_item_src_ptr = unsafe { buffer_start_ptr.add(read_old_idx as usize) };
[INFO] [stderr]     |                                      ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/collections/thin_map.rs:308:15
[INFO] [stderr]     |
[INFO] [stderr] 259 |     unsafe {
[INFO] [stderr]     |     ------ because it's nested under this `unsafe` block
[INFO] [stderr] ...
[INFO] [stderr] 308 |               unsafe {
[INFO] [stderr]     |               ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/collections/thin_map.rs:316:15
[INFO] [stderr]     |
[INFO] [stderr] 259 |     unsafe {
[INFO] [stderr]     |     ------ because it's nested under this `unsafe` block
[INFO] [stderr] ...
[INFO] [stderr] 316 |               unsafe {
[INFO] [stderr]     |               ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/collections/thin_map.rs:325:36
[INFO] [stderr]     |
[INFO] [stderr] 259 |     unsafe {
[INFO] [stderr]     |     ------ because it's nested under this `unsafe` block
[INFO] [stderr] ...
[INFO] [stderr] 325 |             let old_item_src_ptr = unsafe { buffer_start_ptr.add(read_old_idx as usize) };
[INFO] [stderr]     |                                    ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/collections/thin_map.rs:328:13
[INFO] [stderr]     |
[INFO] [stderr] 259 |     unsafe {
[INFO] [stderr]     |     ------ because it's nested under this `unsafe` block
[INFO] [stderr] ...
[INFO] [stderr] 328 |             unsafe {
[INFO] [stderr]     |             ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary `unsafe` block
[INFO] [stderr]    --> src/collections/thin_map.rs:337:13
[INFO] [stderr]     |
[INFO] [stderr] 259 |     unsafe {
[INFO] [stderr]     |     ------ because it's nested under this `unsafe` block
[INFO] [stderr] ...
[INFO] [stderr] 337 |             unsafe {
[INFO] [stderr]     |             ^^^^^^ unnecessary `unsafe` block
[INFO] [stderr] 
[INFO] [stderr] warning: variable `overwritten` is assigned to, but never used
[INFO] [stderr]    --> src/collections/thin_map.rs:222:9
[INFO] [stderr]     |
[INFO] [stderr] 222 |     let mut overwritten = 0;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: consider using `_overwritten` instead
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `overwritten` is never read
[INFO] [stderr]    --> src/collections/thin_map.rs:227:11
[INFO] [stderr]     |
[INFO] [stderr] 227 |           overwritten += 1;
[INFO] [stderr]     |           ^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::slice::from_raw_parts` is unsafe and requires unsafe block
[INFO] [stderr]   --> src/collections/thin_set.rs:60:7
[INFO] [stderr]    |
[INFO] [stderr] 60 |       slice::from_raw_parts(self.ptr.as_ptr(), self.len as usize)
[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]   --> src/collections/thin_set.rs:54:3
[INFO] [stderr]    |
[INFO] [stderr] 54 |   unsafe fn slice(&self) -> &[u32] {
[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] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::slice::from_raw_parts_mut` is unsafe and requires unsafe block
[INFO] [stderr]   --> src/collections/thin_set.rs:74:7
[INFO] [stderr]    |
[INFO] [stderr] 74 |       slice::from_raw_parts_mut(self.ptr.as_ptr(), self.len as usize)
[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]   --> src/collections/thin_set.rs:68:3
[INFO] [stderr]    |
[INFO] [stderr] 68 |   unsafe fn slice_mut(&mut self) -> &mut [u32] {
[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] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::alloc::alloc` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/collections/thin_set.rs:285:7
[INFO] [stderr]     |
[INFO] [stderr] 285 |       alloc(new_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]    --> src/collections/thin_set.rs:275:3
[INFO] [stderr]     |
[INFO] [stderr] 275 | /   unsafe fn grow_and_insert_value_at(
[INFO] [stderr] 276 | |     &mut self,
[INFO] [stderr] 277 | |     index_usize: usize,
[INFO] [stderr] 278 | |     value: u32,
[INFO] [stderr] 279 | |     old_len: u32,
[INFO] [stderr] 280 | |     new_len: u32,
[INFO] [stderr] 281 | |   ) {
[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] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::result::Result::<T, E>::unwrap_unchecked` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/collections/thin_set.rs:287:24
[INFO] [stderr]     |
[INFO] [stderr] 287 |       let old_layout = Self::layout(old_len).unwrap_unchecked();
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::alloc::realloc` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/collections/thin_set.rs:288:7
[INFO] [stderr]     |
[INFO] [stderr] 288 |       realloc(self.ptr.as_ptr() as *mut u8, old_layout, new_layout.size())
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::NonNull::<T>::new_unchecked` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/collections/thin_set.rs:293:16
[INFO] [stderr]     |
[INFO] [stderr] 293 |     self.ptr = NonNull::new_unchecked(new_ptr as *mut u32);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/collections/thin_set.rs:300:15
[INFO] [stderr]     |
[INFO] [stderr] 300 |     let src = ptr.add(index_usize);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/collections/thin_set.rs:301:15
[INFO] [stderr]     |
[INFO] [stderr] 301 |     let dst = src.add(1);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::copy` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/collections/thin_set.rs:303:5
[INFO] [stderr]     |
[INFO] [stderr] 303 |     ptr::copy(src, dst, count);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::write` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/collections/thin_set.rs:306:5
[INFO] [stderr]     |
[INFO] [stderr] 306 |     ptr::write(ptr.add(index_usize), value);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/collections/thin_set.rs:306:16
[INFO] [stderr]     |
[INFO] [stderr] 306 |     ptr::write(ptr.add(index_usize), value);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/collections/thin_set.rs:314:15
[INFO] [stderr]     |
[INFO] [stderr] 314 |     let src = ptr.add(index_usize + 1);
[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]    --> src/collections/thin_set.rs:310:3
[INFO] [stderr]     |
[INFO] [stderr] 310 |   unsafe fn remove_value_at_and_shrink(&mut self, index_usize: usize, old_len: u32, new_len: u32) {
[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] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/collections/thin_set.rs:315:15
[INFO] [stderr]     |
[INFO] [stderr] 315 |     let dst = ptr.add(index_usize);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::copy` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/collections/thin_set.rs:317:5
[INFO] [stderr]     |
[INFO] [stderr] 317 |     ptr::copy(src, dst, count);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::result::Result::<T, E>::unwrap_unchecked` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/collections/thin_set.rs:321:24
[INFO] [stderr]     |
[INFO] [stderr] 321 |       let old_layout = Self::layout(old_len).unwrap_unchecked();
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::alloc::dealloc` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/collections/thin_set.rs:322:7
[INFO] [stderr]     |
[INFO] [stderr] 322 |       dealloc(ptr as *mut u8, old_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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::result::Result::<T, E>::unwrap_unchecked` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/collections/thin_set.rs:325:24
[INFO] [stderr]     |
[INFO] [stderr] 325 |       let old_layout = Self::layout(old_len).unwrap_unchecked();
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::alloc::realloc` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/collections/thin_set.rs:327:7
[INFO] [stderr]     |
[INFO] [stderr] 327 |       realloc(ptr as *mut u8, old_layout, new_layout.size())
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::NonNull::<T>::new_unchecked` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/collections/thin_set.rs:334:16
[INFO] [stderr]     |
[INFO] [stderr] 334 |     self.ptr = NonNull::new_unchecked(new_ptr as *mut u32);
[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: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/collections/vec/sorted/mod.rs:147:49
[INFO] [stderr]     |
[INFO] [stderr] 147 |   pub fn find_by_key<K: Ord, F>(&self, key: &K, mut key_extractor: F) -> Option<&T>
[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]    --> src/collections/vec/u8/mod.rs:682:9
[INFO] [stderr]     |
[INFO] [stderr] 682 |     let mut iterator = iter.into_iter();
[INFO] [stderr]     |         ----^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: method `slice_mut` is never used
[INFO] [stderr]   --> src/collections/thin_set.rs:68:13
[INFO] [stderr]    |
[INFO] [stderr] 17 | impl ThinSetU32 {
[INFO] [stderr]    | --------------- method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 68 |   unsafe fn slice_mut(&mut self) -> &mut [u32] {
[INFO] [stderr]    |             ^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `into_vec` is never used
[INFO] [stderr]    --> src/collections/vec/sorted/mod.rs:588:6
[INFO] [stderr]     |
[INFO] [stderr] 583 | trait VecU32Ext<T: Ord> {
[INFO] [stderr]     |       --------- method in this trait
[INFO] [stderr] ...
[INFO] [stderr] 588 |   fn into_vec(self) -> Vec<T>;
[INFO] [stderr]     |      ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `make_hash` is never used
[INFO] [stderr]   --> src/hash.rs:53:15
[INFO] [stderr]    |
[INFO] [stderr] 53 | pub(crate) fn make_hash<HS, H>(hash_state: &HS, t: H) -> u64
[INFO] [stderr]    |               ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `HEX_LOWER` is never used
[INFO] [stderr]   --> src/id/uuid4.rs:35:7
[INFO] [stderr]    |
[INFO] [stderr] 35 | const HEX_LOWER: &[u8; 16] = b"0123456789abcdef";
[INFO] [stderr]    |       ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/atomic.rs:22:14
[INFO] [stderr]    |
[INFO] [stderr] 22 |   pub fn get(&self) -> AtomicRef<Val> {
[INFO] [stderr]    |              ^^^^^     ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |              |
[INFO] [stderr]    |              the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 22 |   pub fn get(&self) -> AtomicRef<'_, Val> {
[INFO] [stderr]    |                                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/atomic.rs:27:18
[INFO] [stderr]    |
[INFO] [stderr] 27 |   pub fn get_mut(&self) -> AtomicRefMut<Val> {
[INFO] [stderr]    |                  ^^^^^     ^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                  |
[INFO] [stderr]    |                  the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 27 |   pub fn get_mut(&self) -> AtomicRefMut<'_, Val> {
[INFO] [stderr]    |                                         +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/collections/map.rs:152:15
[INFO] [stderr]     |
[INFO] [stderr] 152 |   pub fn keys(&self) -> Keys<V> {
[INFO] [stderr]     |               ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |               |
[INFO] [stderr]     |               the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 152 |   pub fn keys(&self) -> Keys<'_, V> {
[INFO] [stderr]     |                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/collections/map.rs:158:17
[INFO] [stderr]     |
[INFO] [stderr] 158 |   pub fn values(&self) -> Values<V> {
[INFO] [stderr]     |                 ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 158 |   pub fn values(&self) -> Values<'_, V> {
[INFO] [stderr]     |                                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/collections/map.rs:164:21
[INFO] [stderr]     |
[INFO] [stderr] 164 |   pub fn values_mut(&mut self) -> ValuesMut<V> {
[INFO] [stderr]     |                     ^^^^^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 164 |   pub fn values_mut(&mut self) -> ValuesMut<'_, V> {
[INFO] [stderr]     |                                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/collections/map.rs:188:15
[INFO] [stderr]     |
[INFO] [stderr] 188 |   pub fn iter(&self) -> Iter<V> {
[INFO] [stderr]     |               ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |               |
[INFO] [stderr]     |               the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 188 |   pub fn iter(&self) -> Iter<'_, V> {
[INFO] [stderr]     |                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/collections/map.rs:220:19
[INFO] [stderr]     |
[INFO] [stderr] 220 |   pub fn iter_mut(&mut self) -> IterMut<V> {
[INFO] [stderr]     |                   ^^^^^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                   |
[INFO] [stderr]     |                   the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 220 |   pub fn iter_mut(&mut self) -> IterMut<'_, V> {
[INFO] [stderr]     |                                         +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/collections/map.rs:474:16
[INFO] [stderr]     |
[INFO] [stderr] 474 |   pub fn entry(&mut self, key: &u32) -> Entry<V> {
[INFO] [stderr]     |                ^^^^^^^^^                ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                |
[INFO] [stderr]     |                the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 474 |   pub fn entry(&mut self, key: &u32) -> Entry<'_, V> {
[INFO] [stderr]     |                                               +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/collections/map/u8.rs:108:15
[INFO] [stderr]     |
[INFO] [stderr] 108 |   pub fn keys(&self) -> Keys<V> {
[INFO] [stderr]     |               ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |               |
[INFO] [stderr]     |               the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 108 |   pub fn keys(&self) -> Keys<'_, V> {
[INFO] [stderr]     |                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/collections/map/u8.rs:113:17
[INFO] [stderr]     |
[INFO] [stderr] 113 |   pub fn values(&self) -> Values<V> {
[INFO] [stderr]     |                 ^^^^^     ^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 113 |   pub fn values(&self) -> Values<'_, V> {
[INFO] [stderr]     |                                  +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/collections/map/u8.rs:118:21
[INFO] [stderr]     |
[INFO] [stderr] 118 |   pub fn values_mut(&mut self) -> ValuesMut<V> {
[INFO] [stderr]     |                     ^^^^^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 118 |   pub fn values_mut(&mut self) -> ValuesMut<'_, V> {
[INFO] [stderr]     |                                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/collections/map/u8.rs:127:15
[INFO] [stderr]     |
[INFO] [stderr] 127 |   pub fn iter(&self) -> Iter<V> {
[INFO] [stderr]     |               ^^^^^     ^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |               |
[INFO] [stderr]     |               the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 127 |   pub fn iter(&self) -> Iter<'_, V> {
[INFO] [stderr]     |                              +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/collections/map/u8.rs:137:19
[INFO] [stderr]     |
[INFO] [stderr] 137 |   pub fn iter_mut(&mut self) -> IterMut<V> {
[INFO] [stderr]     |                   ^^^^^^^^^     ^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                   |
[INFO] [stderr]     |                   the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 137 |   pub fn iter_mut(&mut self) -> IterMut<'_, V> {
[INFO] [stderr]     |                                         +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/collections/map/u8.rs:256:16
[INFO] [stderr]     |
[INFO] [stderr] 256 |   pub fn entry(&mut self, key: u8) -> Entry<V> {
[INFO] [stderr]     |                ^^^^^^^^^              ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                |
[INFO] [stderr]     |                the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 256 |   pub fn entry(&mut self, key: u8) -> Entry<'_, V> {
[INFO] [stderr]     |                                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/collections/skiplist.rs:84:15
[INFO] [stderr]    |
[INFO] [stderr] 84 |   pub fn iter(&self) -> SkipListIterator<K, V> {
[INFO] [stderr]    |               ^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |               |
[INFO] [stderr]    |               the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 84 |   pub fn iter(&self) -> SkipListIterator<'_, K, V> {
[INFO] [stderr]    |                                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/collections/skiplist.rs:90:22
[INFO] [stderr]    |
[INFO] [stderr] 90 |   pub fn least_upper(&self, max: &K) -> SkipListIterator<K, V> {
[INFO] [stderr]    |                      ^^^^^              ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                      |
[INFO] [stderr]    |                      the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 90 |   pub fn least_upper(&self, max: &K) -> SkipListIterator<'_, K, V> {
[INFO] [stderr]    |                                                          +++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/collections/skiplist.rs:96:25
[INFO] [stderr]    |
[INFO] [stderr] 96 |   pub fn greatest_lower(&self, min: &K) -> SkipListIterator<K, V> {
[INFO] [stderr]    |                         ^^^^^              ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                         |
[INFO] [stderr]    |                         the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 96 |   pub fn greatest_lower(&self, min: &K) -> SkipListIterator<'_, K, V> {
[INFO] [stderr]    |                                                             +++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/collections/vec/sorted/mod.rs:305:7
[INFO] [stderr]     |
[INFO] [stderr] 305 |       self.insert(t);
[INFO] [stderr]     |       ^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[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] 305 |       let _ = self.insert(t);
[INFO] [stderr]     |       +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/collections/vec/sorted/mod.rs:538:7
[INFO] [stderr]     |
[INFO] [stderr] 538 |       self.insert(t);
[INFO] [stderr]     |       ^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 538 |       let _ = self.insert(t);
[INFO] [stderr]     |       +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/collections/vec/sorted_u8/mod.rs:296:7
[INFO] [stderr]     |
[INFO] [stderr] 296 |       self.insert(t);
[INFO] [stderr]     |       ^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 296 |       let _ = self.insert(t);
[INFO] [stderr]     |       +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/collections/vec/sorted_u8/mod.rs:520:7
[INFO] [stderr]     |
[INFO] [stderr] 520 |       self.insert(t);
[INFO] [stderr]     |       ^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 520 |       let _ = self.insert(t);
[INFO] [stderr]     |       +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: missing documentation for a module
[INFO] [stderr]   --> src/id/ulid/mod.rs:22:1
[INFO] [stderr]    |
[INFO] [stderr] 22 | pub mod custom;
[INFO] [stderr]    | ^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]   --> src/id/ulid/mod.rs:1:9
[INFO] [stderr]    |
[INFO] [stderr]  1 | #![warn(missing_docs)]
[INFO] [stderr]    |         ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0133`.
[INFO] [stderr] warning: use of deprecated function `encodings::base32::tests::rand::thread_rng`: Renamed to `rng`
[INFO] [stderr]    --> src/collections/thin_set.rs:666:25
[INFO] [stderr]     |
[INFO] [stderr] 666 |     let mut rng = rand::thread_rng();
[INFO] [stderr]     |                         ^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `encodings::base32::tests::rand::thread_rng`: Renamed to `rng`
[INFO] [stderr]    --> src/collections/thin_set.rs:720:25
[INFO] [stderr]     |
[INFO] [stderr] 720 |     let mut rng = rand::thread_rng();
[INFO] [stderr]     |                         ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated function `encodings::base32::tests::rand::thread_rng`: Renamed to `rng`
[INFO] [stderr]    --> src/collections/thin_set.rs:741:51
[INFO] [stderr]     |
[INFO] [stderr] 741 |     let mut rng: rand::prelude::ThreadRng = rand::thread_rng();
[INFO] [stderr]     |                                                   ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `encodings::base32::tests::rand::Rng::gen_range`: Renamed to `random_range`
[INFO] [stderr]    --> src/collections/thin_set.rs:673:21
[INFO] [stderr]     |
[INFO] [stderr] 673 |       let val = rng.gen_range(0u32..2000);
[INFO] [stderr]     |                     ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `encodings::base32::tests::rand::Rng::gen_range`: Renamed to `random_range`
[INFO] [stderr]    --> src/collections/thin_set.rs:686:21
[INFO] [stderr]     |
[INFO] [stderr] 686 |       let val = rng.gen_range(0u32..2000); // Overlap range with initial
[INFO] [stderr]     |                     ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `encodings::base32::tests::rand::Rng::gen_range`: Renamed to `random_range`
[INFO] [stderr]    --> src/collections/thin_set.rs:727:23
[INFO] [stderr]     |
[INFO] [stderr] 727 |         let val = rng.gen_range(1u32..1000);
[INFO] [stderr]     |                       ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `encodings::base32::tests::rand::Rng::gen_range`: Renamed to `random_range`
[INFO] [stderr]    --> src/collections/thin_set.rs:749:23
[INFO] [stderr]     |
[INFO] [stderr] 749 |         let val = rng.gen_range(1u32..1000);
[INFO] [stderr]     |                       ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `inserted_count`
[INFO] [stderr]    --> src/collections/thin_map.rs:861:9
[INFO] [stderr]     |
[INFO] [stderr] 861 |     let inserted_count = map.insert_many(batch.clone()); // Clone batch for ref update
[INFO] [stderr]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_inserted_count`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `expected_new_keys` is assigned to, but never used
[INFO] [stderr]    --> src/collections/thin_map.rs:864:9
[INFO] [stderr]     |
[INFO] [stderr] 864 |     let mut expected_new_keys = 0;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: consider using `_expected_new_keys` instead
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `expected_new_keys` is never read
[INFO] [stderr]    --> src/collections/thin_map.rs:868:9
[INFO] [stderr]     |
[INFO] [stderr] 868 |         expected_new_keys += 1;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: variable `expected_new` is assigned to, but never used
[INFO] [stderr]    --> src/collections/thin_set.rs:684:9
[INFO] [stderr]     |
[INFO] [stderr] 684 |     let mut expected_new = 0;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: consider using `_expected_new` instead
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `inserted_count`
[INFO] [stderr]    --> src/collections/thin_set.rs:695:9
[INFO] [stderr]     |
[INFO] [stderr] 695 |     let inserted_count = set.insert_many(batch.clone());
[INFO] [stderr]     |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_inserted_count`
[INFO] [stderr] 
[INFO] [stderr] warning: variable `actual_expected_new` is assigned to, but never used
[INFO] [stderr]    --> src/collections/thin_set.rs:698:9
[INFO] [stderr]     |
[INFO] [stderr] 698 |     let mut actual_expected_new = 0;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: consider using `_actual_expected_new` instead
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `expected_new` is never read
[INFO] [stderr]    --> src/collections/thin_set.rs:690:9
[INFO] [stderr]     |
[INFO] [stderr] 690 |         expected_new += 1;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: value assigned to `actual_expected_new` is never read
[INFO] [stderr]    --> src/collections/thin_set.rs:702:9
[INFO] [stderr]     |
[INFO] [stderr] 702 |         actual_expected_new += 1;
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = help: maybe it is overwritten before being read?
[INFO] [stderr] 
[INFO] [stderr] warning: unused `parking_lot::lock_api::RwLockWriteGuard` that must be used
[INFO] [stderr]    --> src/sync/lock.rs:337:5
[INFO] [stderr]     |
[INFO] [stderr] 337 |     lock.lock().try_write().unwrap();
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: if unused the RwLock will immediately unlock
[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] 337 |     let _ = lock.lock().try_write().unwrap();
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: for loop over an `Option`. This is more readably written as an `if let` statement
[INFO] [stderr]    --> src/collections/skiplist.rs:150:18
[INFO] [stderr]     |
[INFO] [stderr] 150 |     for entry in skiplist.begin() {
[INFO] [stderr]     |                  ^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stderr] help: to check pattern in a loop use `while let`
[INFO] [stderr]     |
[INFO] [stderr] 150 -     for entry in skiplist.begin() {
[INFO] [stderr] 150 +     while let Some(entry) = skiplist.begin() {
[INFO] [stderr]     |
[INFO] [stderr] help: consider using `if let` to clear intent
[INFO] [stderr]     |
[INFO] [stderr] 150 -     for entry in skiplist.begin() {
[INFO] [stderr] 150 +     if let Some(entry) = skiplist.begin() {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/collections/vec/sorted/mod.rs:305:7
[INFO] [stderr]     |
[INFO] [stderr] 305 |       self.insert(t);
[INFO] [stderr]     |       ^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 305 |       let _ = self.insert(t);
[INFO] [stderr]     |       +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/collections/vec/sorted_u8/tests.rs:111:5
[INFO] [stderr]     |
[INFO] [stderr] 111 |     v.insert(i as i16);
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 111 |     let _ = v.insert(i as i16);
[INFO] [stderr]     |     +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/collections/vec/sorted_u8/tests.rs:113:3
[INFO] [stderr]     |
[INFO] [stderr] 113 |   v.insert(300); // Should panic
[INFO] [stderr]     |   ^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 113 |   let _ = v.insert(300); // Should panic
[INFO] [stderr]     |   +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: `xs_foundation` (lib) generated 63 warnings (run `cargo fix --lib -p xs_foundation` to apply 29 suggestions)
[INFO] [stderr] warning: `xs_foundation` (lib test) generated 82 warnings (62 duplicates) (run `cargo fix --lib -p xs_foundation --tests` to apply 2 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.19s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/xs_foundation-0e5b95d799714115)
[INFO] [stdout] 
[INFO] [stdout] running 218 tests
[INFO] [stdout] test collections::count::map::tests::increment_some_keys ... ok
[INFO] [stdout] test collections::count::map::tests::remove_some_keys ... ok
[INFO] [stdout] test collections::map::test::test_entry ... ok
[INFO] [stdout] test collections::count::map::tests::set_increment_some_keys ... ok
[INFO] [stdout] test collections::map::test::test_clone ... ok
[INFO] [stdout] test collections::map::test::test_eq ... ok
[INFO] [stdout] test collections::map::test::test_clear ... ok
[INFO] [stdout] test collections::map::test::test_extend_ref ... ok
[INFO] [stdout] test collections::map::test::test_from_iter ... ok
[INFO] [stdout] test collections::map::test::test_hash ... ok
[INFO] [stdout] test collections::map::test::test_get_mut ... ok
[INFO] [stdout] test collections::map::test::test_index ... ok
[INFO] [stdout] test collections::map::test::test_insert ... ok
[INFO] [stdout] test collections::map::test::test_iterator ... ok
[INFO] [stdout] test collections::map::test::test_keys ... ok
[INFO] [stdout] test collections::map::test::test_len ... ok
[INFO] [stdout] test collections::map::test::test_mut_iterator ... ok
[INFO] [stdout] test collections::map::test::test_mut_rev_iterator ... ok
[INFO] [stdout] test collections::map::test::test_ord ... ok
[INFO] [stdout] test collections::map::test::test_iterator_size_hints ... ok
[INFO] [stdout] test collections::map::test::test_lt ... ok
[INFO] [stdout] test collections::map::test::test_remove ... ok
[INFO] [stdout] test collections::map::test::test_retain ... ok
[INFO] [stdout] test collections::map::test::test_rev_iterator ... ok
[INFO] [stdout] test collections::map::test::test_serde ... ok
[INFO] [stdout] test collections::map::test::test_show ... ok
[INFO] [stdout] test collections::map::test::test_split_off ... ok
[INFO] [stdout] test collections::map::u8::test::test_clear ... ok
[INFO] [stdout] test collections::map::test::test_values ... ok
[INFO] [stdout] test collections::map::u8::test::test_clone ... ok
[INFO] [stdout] test collections::map::u8::test::test_extend_ref ... ok
[INFO] [stdout] test collections::map::u8::test::test_from_iter ... ok
[INFO] [stdout] test collections::map::u8::test::test_eq ... ok
[INFO] [stdout] test collections::map::u8::test::test_get_mut ... ok
[INFO] [stdout] test collections::map::u8::test::test_entry ... ok
[INFO] [stdout] test collections::map::u8::test::test_index ... ok
[INFO] [stdout] test collections::map::u8::test::test_into_iterator ... ok
[INFO] [stdout] test collections::map::u8::test::test_insert ... ok
[INFO] [stdout] test collections::map::u8::test::test_hash ... ok
[INFO] [stdout] test collections::map::u8::test::test_iterator ... ok
[INFO] [stdout] test collections::map::u8::test::test_len ... ok
[INFO] [stdout] test collections::map::u8::test::test_mut_iterator ... ok
[INFO] [stdout] test collections::map::u8::test::test_show ... ok
[INFO] [stdout] test collections::map::u8::test::test_remove ... ok
[INFO] [stdout] test collections::map::u8::test::test_values ... ok
[INFO] [stdout] test collections::map::u8::test::test_retain ... ok
[INFO] [stdout] test collections::map::u8::test::test_keys ... ok
[INFO] [stdout] test collections::map::u8::test::test_values_mut ... ok
[INFO] [stdout] test collections::skiplist::tests::can_add_value ... ok
[INFO] [stdout] test collections::skiplist::tests::can_iterate_values ... ok
[INFO] [stdout] test collections::skiplist::tests::can_iterate_values_ranged ... ok
[INFO] [stdout] test collections::thin_map::tests::clear_test ... ok
[INFO] [stdout] test collections::thin_map::tests::construct_and_empty ... ok
[INFO] [stdout] test collections::thin_map::tests::delete_few_values ... ok
[INFO] [stdout] test collections::thin_map::tests::drop_test_constrained ... ok
[INFO] [stdout] test collections::thin_map::tests::insert_first ... ok
[INFO] [stdout] test collections::thin_map::tests::insert_3_values ... ok
[INFO] [stdout] test collections::skiplist::tests::can_remove_value ... ok
[INFO] [stdout] test collections::thin_map::tests::insert_many_map_empty_into_empty ... ok
[INFO] [stdout] test collections::thin_map::tests::insert_many_map_mixed_new_and_overwrites ... ok
[INFO] [stdout] test collections::thin_set::tests::clear_test ... ok
[INFO] [stdout] test collections::thin_set::tests::construct_and_empty ... ok
[INFO] [stdout] test collections::skiplist::tests::can_init ... ok
[INFO] [stdout] test collections::thin_set::tests::drop_test_deallocates ... ok
[INFO] [stdout] test collections::thin_set::tests::insert_3_values_ordered ... ok
[INFO] [stdout] test collections::thin_set::tests::delete_few_values ... ok
[INFO] [stdout] test collections::thin_map::tests::insert_many_map_only_overwrites ... ok
[INFO] [stdout] test collections::thin_map::tests::insert_overwrite_value ... ok
[INFO] [stdout] test collections::thin_map::tests::insert_many_map_large_batch_strings ... ok
[INFO] [stdout] test collections::thin_set::tests::insert_duplicate_value ... ok
[INFO] [stdout] test collections::thin_set::tests::insert_first ... ok
[INFO] [stdout] test collections::thin_map::tests::insert_many_map_into_empty ... ok
[INFO] [stdout] test collections::thin_set::tests::insert_many_mixed_new_and_existing ... ok
[INFO] [stdout] test collections::thin_set::tests::insert_many_into_empty ... ok
[INFO] [stdout] test collections::thin_set::tests::insert_many_no_new_elements ... ok
[INFO] [stdout] test collections::thin_set::tests::insert_multiple_values ... ok
[INFO] [stdout] test collections::thin_set::tests::insert_many_large_batch ... ok
[INFO] [stdout] test collections::thin_set::tests::insert_many_empty_into_empty ... ok
[INFO] [stdout] test collections::thin_map::tests::insert_random_values_and_delete ... ok
[INFO] [stdout] test collections::vec::sorted::tests::test_reverse_sorted_vec ... ok
[INFO] [stdout] test collections::vec::u32::test::test_append ... ok
[INFO] [stdout] test collections::thin_set::tests::insert_random_values ... ok
[INFO] [stdout] test collections::vec::sorted::tests::test_sorted_vec ... ok
[INFO] [stdout] test collections::vec::sorted_u8::tests::test_reverse_sorted_vec_u8 ... ok
[INFO] [stdout] test collections::vec::sorted_u8::tests::test_sorted_vec_u8 ... ok
[INFO] [stdout] test collections::vec::u32::test::test_clear ... ok
[INFO] [stdout] test collections::vec::u32::test::test_extend_from_slice ... ok
[INFO] [stdout] test collections::vec::u32::test::test_clone ... ok
[INFO] [stdout] test collections::vec::u32::test::test_drop_behavior ... ok
[INFO] [stdout] test collections::vec::u32::test::test_assure_passing_to_threads ... ok
[INFO] [stdout] test collections::vec::u32::test::test_from_vec ... ok
[INFO] [stdout] test collections::vec::u32::test::test_insert ... ok
[INFO] [stdout] test collections::vec::u32::test::test_into_iter ... ok
[INFO] [stdout] test collections::vec::u32::test::test_new_empty ... ok
[INFO] [stdout] test collections::vec::u32::test::test_new_zst ... ok
[INFO] [stdout] test collections::vec::u32::test::test_push_pop ... ok
[INFO] [stdout] test collections::vec::u32::test::test_push_pop_zst ... ok
[INFO] [stdout] test collections::vec::u32::test::test_remove ... ok
[INFO] [stdout] test collections::vec::u32::test::test_retain_string ... ok
[INFO] [stdout] test collections::vec::u32::test::test_retain ... ok
[INFO] [stdout] test collections::vec::u32::test::test_swap_remove ... ok
[INFO] [stdout] test collections::thin_set::tests::remove_random_values ... ok
[INFO] [stdout] test collections::vec::u32::test::test_with_capacity ... ok
[INFO] [stdout] test collections::vec::u32::test::test_with_capacity_zst ... ok
[INFO] [stdout] test collections::vec::u8::test::test_insert_u8 ... ok
[INFO] [stdout] test collections::vec::u8::test::test_into_vec_empty ... ok
[INFO] [stdout] test collections::vec::u8::test::test_new_empty_u8 ... ok
[INFO] [stdout] test collections::vec::u8::test::test_new_zst_u8 ... ok
[INFO] [stdout] test collections::vec::u8::test::test_from_vec_u8 ... ok
[INFO] [stdout] test collections::vec::u8::test::test_push_max_u8 ... ok
[INFO] [stdout] test collections::vec::u8::test::test_push_pop_u8 ... ok
[INFO] [stdout] test collections::vec::u8::test::test_with_capacity_u8 ... ok
[INFO] [stdout] test collections::vec::u8::test::test_remove_u8 ... ok
[INFO] [stdout] test collections::vec::u8::test::test_assure_passing_to_threads_u8 ... ok
[INFO] [stdout] test encodings::base32::tests::test_chars ... ok
[INFO] [stdout] test encodings::base32::tests::test_decode_u64_invalid_chars ... ok
[INFO] [stdout] test encodings::base32::tests::test_decode_u64_invalid_length ... ok
[INFO] [stdout] test encodings::base32::tests::test_decode_u64_max_value ... ok
[INFO] [stdout] test encodings::base32::tests::test_decode_u64_overflow ... ok
[INFO] [stdout] test encodings::base32::tests::test_decode_u64_simple_values ... ok
[INFO] [stdout] test encodings::base32::tests::test_encode_decode_roundtrip ... ok
[INFO] [stdout] test encodings::base32::tests::test_encode_u64_max_value ... ok
[INFO] [stdout] test encodings::base32::tests::test_encode_u64_simple_values ... ok
[INFO] [stdout] test encodings::base32::tests::test_length ... ok
[INFO] [stdout] test encodings::base32::tests::test_u64_roundtrip ... ok
[INFO] [stdout] test encodings::base32::tests::test_valid ... ok
[INFO] [stdout] test id::ulid64::tests::generate_handles_random_bits_overflow_error_explicit ... ok
[INFO] [stdout] test id::ulid64::tests::generate_handles_time_went_backwards_detected_by_state ... ok
[INFO] [stdout] test collections::map::test::test_index_nonexistent - should panic ... ok
[INFO] [stdout] test collections::map::u8::test::test_from_iter_usize_panic - should panic ... ok
[INFO] [stdout] test collections::map::u8::test::test_extend_usize_key_panic - should panic ... ok
[INFO] [stdout] test id::ulid64::tests::generator_config_accessors_work ... ok
[INFO] [stdout] test collections::map::u8::test::test_index_nonexistent - should panic ... ok
[INFO] [stdout] test id::ulid64::tests::generator_new_invalid_bit_configs ... ok
[INFO] [stdout] test id::ulid64::tests::generator_new_rand_bits_too_large ... ok
[INFO] [stdout] test id::ulid64::tests::generator_new_valid_configs_tuple ... ok
[INFO] [stdout] test id::ulid64::tests::global_generator_lifecycle ... ok
[INFO] [stdout] test id::ulid64::tests::monotonicity_within_same_second_rapid_generation ... ok
[INFO] [stdout] test id::ulid64::tests::serde_binary_roundtrip ... ok
[INFO] [stdout] test id::ulid64::tests::serde_human_readable_roundtrip ... ok
[INFO] [stdout] test id::ulid64::tests::ulid64_byte_conversion_works ... ok
[INFO] [stdout] test id::ulid64::tests::ulid64_constants_and_default_values ... ok
[INFO] [stdout] test id::ulid64::tests::ulid64_debug_format_is_correct ... ok
[INFO] [stdout] test id::ulid64::tests::ulid64_display_and_from_str_roundtrip ... ok
[INFO] [stdout] test id::ulid64::tests::ulid64_from_and_as_u64 ... ok
[INFO] [stdout] test id::ulid64::tests::ulid64_from_str_error_conditions ... ok
[INFO] [stdout] test id::ulid::custom::ulid_generator_tests::test_generator_overflow_error ... ok
[INFO] [stdout] test id::ulid::tests::test_from_slice_empty ... ok
[INFO] [stdout] test id::ulid::tests::test_from_slice_ok ... ok
[INFO] [stdout] test id::ulid::custom::ulid_generator_tests::test_generator_monotonic_in_same_ms ... FAILED
[INFO] [stdout] test id::ulid::tests::test_from_slice_too_short ... ok
[INFO] [stdout] test id::ulid::tests::test_monotonic_overflow_simulation ... ok
[INFO] [stdout] test id::ulid::tests::test_monotonic_same_millisecond ... ok
[INFO] [stdout] test id::ulid::tests::test_serde_bytes ... ok
[INFO] [stdout] test id::ulid::tests::test_monotonic_generator ... ok
[INFO] [stdout] test id::ulid::tests::test_serde_string ... ok
[INFO] [stdout] test collections::vec::sorted_u8::tests::test_sorted_vec_u8_from_vec_panic - should panic ... ok
[INFO] [stdout] test collections::vec::sorted_u8::tests::test_sorted_vec_u8_insert_panic - should panic ... ok
[INFO] [stdout] test id::ulid::custom::ulid_generator_tests::test_generator_time_advances ... ok
[INFO] [stdout] test collections::vec::sorted_u8::tests::test_sorted_vec_u8_extend_panic - should panic ... ok
[INFO] [stdout] test id::unid::tests::test_binary_natsort ... ok
[INFO] [stdout] test id::unid::tests::test_global_generator ... ok
[INFO] [stdout] test id::unid::tests::test_id_to_system_time ... ok
[INFO] [stdout] test id::unid::tests::test_binary_sorting ... ok
[INFO] [stdout] test id::unid::tests::test_natural_string_sorting ... ok
[INFO] [stdout] test id::unid::tests::test_serde_binary_roundtrip ... ok
[INFO] [stdout] test id::unid::tests::test_unid_generator_monotonicity ... ok
[INFO] [stdout] test id::unid::tests::test_serde_human_readable_roundtrip ... ok
[INFO] [stdout] test id::unid::tests::test_unid_parts_extraction ... ok
[INFO] [stdout] test id::unid::tests::test_sorting_with_large_time_gaps_and_counters ... ok
[INFO] [stdout] test id::unid::tests::test_unid_lex_and_from_lex ... ok
[INFO] [stdout] test id::unid::tests::test_lex_string_sorting ... ok
[INFO] [stdout] test id::unid::tests::test_unid_generator_time_advances ... ok
[INFO] [stdout] test id::unid::tests::test_unid_string_representation ... ok
[INFO] [stdout] test id::uuid4::tests::uuid4_from_str_invalid_length ... ok
[INFO] [stdout] test id::uuid4::tests::uuid4_from_str_invalid_chars ... ok
[INFO] [stdout] test id::uuid4::tests::uuid4_from_str_valid ... ok
[INFO] [stdout] test id::uuid4::tests::uuid4_from_str_invalid_format ... ok
[INFO] [stdout] test collections::vec::u8::test::test_from_vec_u8_overflow - should panic ... ok
[INFO] [stdout] test collections::vec::u8::test::test_push_overflow_u8 - should panic ... ok
[INFO] [stdout] test collections::vec::u8::test::test_with_capacity_u8_overflow - should panic ... ok
[INFO] [stdout] test collections::map::u8::test::test_index_mut_nonexistent - should panic ... ok
[INFO] [stdout] test id::uuid4::tests::uuid4_new_sets_version_and_variant ... ok
[INFO] [stdout] test id::uuid4::tests::uuid4_roundtrip_bytes ... ok
[INFO] [stdout] test id::uuid4::tests::uuid4_roundtrip_string ... ok
[INFO] [stdout] test id::uuid4::tests::uuid4_to_string_format ... ok
[INFO] [stdout] test id::uuid4::tests::uuid4_serde_bytes ... ok
[INFO] [stdout] test id::uuid4::tests::uuid4_serde_string ... ok
[INFO] [stdout] test sync::lock::tests::get_lock_returns_different_instances_for_different_keys ... ok
[INFO] [stdout] test sync::lock::tests::get_lock_returns_same_instance_for_same_key ... ok
[INFO] [stdout] test sync::lock::tests::async_simple_read_write ... ok
[INFO] [stdout] test sync::lock::tests::panic_try_write_during_read - should panic ... ok
[INFO] [stdout] test time::app::tests::app_clock_conversion_errors ... ok
[INFO] [stdout] test time::app::tests::app_clock_conversions ... ok
[INFO] [stdout] test time::app::tests::app_clock_creation_and_epoch ... ok
[INFO] [stdout] test time::app::tests::app_clock_now ... ok
[INFO] [stdout] test time::app::tests::app_clock_min_max_time ... ok
[INFO] [stdout] test time::app::tests::app_time_arithmetic_valid ... ok
[INFO] [stdout] test sync::lock::tests::create_locks ... ok
[INFO] [stdout] test sync::lock::tests::async_get_lock_returns_same_instance ... ok
[INFO] [stdout] test sync::lock::tests::simple_lock_read_and_write ... ok
[INFO] [stdout] test time::app::tests::app_time_derives ... ok
[INFO] [stdout] test time::app::tests::global_methods_fail_when_unset ... ok
[INFO] [stdout] test time::app::tests::app_time_offset_and_new ... ok
[INFO] [stdout] test time::app::tests::sub_u32_underflow_panics - should panic ... ok
[INFO] [stdout] test time::app::tests::add_u32_overflow_panics - should panic ... ok
[INFO] [stdout] test time::app::tests::add_apptime_overflow_panics - should panic ... ok
[INFO] [stdout] test time::app::tests::serde_support ... ok
[INFO] [stdout] test time::app::tests::sub_apptime_underflow_panics - should panic ... ok
[INFO] [stdout] test id::unid::tests::test_unid_uniqueness_multithreaded ... ok
[INFO] [stdout] test sync::lock::tests::async_ordering_across_tasks ... ok
[INFO] [stdout] test sync::lock::tests::ordering_across_threads_sync ... ok
[INFO] [stdout] test id::ulid64::tests::generate_ulid_ordered_and_parts_correct ... ok
[INFO] [stdout] test id::ulid64::tests::generate_handles_timestamp_overflow ... ok
[INFO] [stdout] test collections::vec::u8::test_fuzz::test_vecu8_randomized_state_machine ... ok
[INFO] [stdout] test collections::vec::u32::test_fuzz::test_vecu32_deterministic_state_machine has been running for over 60 seconds
[INFO] [stdout] test collections::vec::u32::test_proptest::prop_vecu32_matches_stdvec has been running for over 60 seconds
[INFO] [stdout] test collections::vec::u8::test_propfuzz::prop_vecu8_matches_stdvec has been running for over 60 seconds
[INFO] [stdout] test collections::vec::u32::test_proptest::prop_vecu32_matches_stdvec ... ok
[INFO] [stdout] test collections::vec::u32::test_fuzz::test_vecu32_deterministic_state_machine ... ok
[INFO] [stdout] test collections::vec::u8::test_propfuzz::prop_vecu8_matches_stdvec ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- id::ulid::custom::ulid_generator_tests::test_generator_monotonic_in_same_ms stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'id::ulid::custom::ulid_generator_tests::test_generator_monotonic_in_same_ms' (1426) panicked at src/id/ulid/custom.rs:130:5:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: 1000
[INFO] [stdout]  right: 1001
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5a5445a87518 - std[10d71ac2c42b111e]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5a5445a87518 - std[10d71ac2c42b111e]::backtrace_rs::backtrace::trace_unsynchronized::<std[10d71ac2c42b111e]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5a5445a87518 - std[10d71ac2c42b111e]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5a5445a87518 - <<std[10d71ac2c42b111e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[8fb95b77d25ab6c8]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5a5445a9e23a - <core[8fb95b77d25ab6c8]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5a5445a9e23a - core[8fb95b77d25ab6c8]::fmt::write
[INFO] [stdout]    6:     0x5a5445a8c282 - std[10d71ac2c42b111e]::io::default_write_fmt::<alloc[a7ee25936407c584]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/io/mod.rs:622:11
[INFO] [stdout]    7:     0x5a5445a8c282 - <alloc[a7ee25936407c584]::vec::Vec<u8> as std[10d71ac2c42b111e]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/io/mod.rs:1977:13
[INFO] [stdout]    8:     0x5a5445a64bc6 - <std[10d71ac2c42b111e]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5a5445a64bc6 - std[10d71ac2c42b111e]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5a5445a7f7c9 - std[10d71ac2c42b111e]::panicking::default_hook
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5a544592d3cc - <alloc[a7ee25936407c584]::boxed::Box<dyn for<'a, 'b> core[8fb95b77d25ab6c8]::ops::function::Fn<(&'a std[10d71ac2c42b111e]::panic::PanicHookInfo<'b>,), Output = ()> + core[8fb95b77d25ab6c8]::marker::Sync + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::Fn<(&std[10d71ac2c42b111e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2289:9
[INFO] [stdout]   12:     0x5a544592d3cc - test[213991da798b1c03]::test_main_inner::<test[213991da798b1c03]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x5a5445a7fa42 - <alloc[a7ee25936407c584]::boxed::Box<dyn for<'a, 'b> core[8fb95b77d25ab6c8]::ops::function::Fn<(&'a std[10d71ac2c42b111e]::panic::PanicHookInfo<'b>,), Output = ()> + core[8fb95b77d25ab6c8]::marker::Sync + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::Fn<(&std[10d71ac2c42b111e]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2289:9
[INFO] [stdout]   14:     0x5a5445a7fa42 - std[10d71ac2c42b111e]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5a5445a64c82 - std[10d71ac2c42b111e]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5a5445a59d79 - std[10d71ac2c42b111e]::sys::backtrace::__rust_end_short_backtrace::<std[10d71ac2c42b111e]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5a5445a6599d - __rustc[3be9ba60078d4c86]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5a5445a9e9fc - core[8fb95b77d25ab6c8]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5a5445a9e8b3 - core[8fb95b77d25ab6c8]::panicking::assert_failed_inner
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panicking.rs:439:17
[INFO] [stdout]   20:     0x5a5445a9a102 - core[8fb95b77d25ab6c8]::panicking::assert_failed::<u64, u64>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panicking.rs:394:5
[INFO] [stdout]   21:     0x5a54458527da - xs_foundation[4f7b531f7b9e59cc]::id::ulid::custom::ulid_generator_tests::test_generator_monotonic_in_same_ms
[INFO] [stdout]                                at /opt/rustwide/workdir/src/id/ulid/custom.rs:130:5
[INFO] [stdout]   22:     0x5a544583c547 - xs_foundation[4f7b531f7b9e59cc]::id::ulid::custom::ulid_generator_tests::test_generator_monotonic_in_same_ms::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/id/ulid/custom.rs:120:43
[INFO] [stdout]   23:     0x5a54458227b6 - <xs_foundation[4f7b531f7b9e59cc]::id::ulid::custom::ulid_generator_tests::test_generator_monotonic_in_same_ms::{closure#0} as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x5a54459204ab - <fn() -> core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5a54459204ab - test[213991da798b1c03]::__rust_begin_short_backtrace::<core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>, fn() -> core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:724:18
[INFO] [stdout]   26:     0x5a544592dd25 - test[213991da798b1c03]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:74
[INFO] [stdout]   27:     0x5a544592dd25 - <core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   28:     0x5a544592dd25 - std[10d71ac2c42b111e]::panicking::catch_unwind::do_call::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>, core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x5a544592dd25 - std[10d71ac2c42b111e]::panicking::catch_unwind::<core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>, core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x5a544592dd25 - std[10d71ac2c42b111e]::panic::catch_unwind::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<test[213991da798b1c03]::run_test_in_process::{closure#0}>, core[8fb95b77d25ab6c8]::result::Result<(), alloc[a7ee25936407c584]::string::String>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x5a544592dd25 - test[213991da798b1c03]::run_test_in_process
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:747:27
[INFO] [stdout]   32:     0x5a544592dd25 - test[213991da798b1c03]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:668:43
[INFO] [stdout]   33:     0x5a5445927634 - test[213991da798b1c03]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/test/src/lib.rs:698:41
[INFO] [stdout]   34:     0x5a5445927634 - std[10d71ac2c42b111e]::sys::backtrace::__rust_begin_short_backtrace::<test[213991da798b1c03]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x5a5445930da2 - std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked::<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   36:     0x5a5445930da2 - <core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   37:     0x5a5445930da2 - std[10d71ac2c42b111e]::panicking::catch_unwind::do_call::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x5a5445930da2 - std[10d71ac2c42b111e]::panicking::catch_unwind::<(), core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x5a5445930da2 - std[10d71ac2c42b111e]::panic::catch_unwind::<core[8fb95b77d25ab6c8]::panic::unwind_safe::AssertUnwindSafe<std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x5a5445930da2 - std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked::<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   41:     0x5a5445930da2 - <std[10d71ac2c42b111e]::thread::lifecycle::spawn_unchecked<test[213991da798b1c03]::run_test::{closure#1}, ()>::{closure#1} as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x5a5445a86e6f - <alloc[a7ee25936407c584]::boxed::Box<dyn core[8fb95b77d25ab6c8]::ops::function::FnOnce<(), Output = ()> + core[8fb95b77d25ab6c8]::marker::Send> as core[8fb95b77d25ab6c8]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/alloc/src/boxed.rs:2275:9
[INFO] [stdout]   43:     0x5a5445a86e6f - <std[10d71ac2c42b111e]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/b2282dd5646a57d570fc86fbe8df0e8826665ef6/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   44:     0x72819d06baa4 - <unknown>
[INFO] [stdout]   45:     0x72819d0f8a64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     id::ulid::custom::ulid_generator_tests::test_generator_monotonic_in_same_ms
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 217 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 95.00s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "28fafe925468fd827a4bb97759ed0a03e6832f647af36b741effe4074f1c8179", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "28fafe925468fd827a4bb97759ed0a03e6832f647af36b741effe4074f1c8179", kill_on_drop: false }`
[INFO] [stdout] 28fafe925468fd827a4bb97759ed0a03e6832f647af36b741effe4074f1c8179
