[INFO] cloning repository https://github.com/SkmdysK/LinkChat-SecureCore
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/SkmdysK/LinkChat-SecureCore" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSkmdysK%2FLinkChat-SecureCore", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSkmdysK%2FLinkChat-SecureCore'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 4dc4fd3f9808a27e9448a3584637aa2801dfe488
[INFO] testing SkmdysK/LinkChat-SecureCore against 1.99.0-beta.1+cargoflags=--release for beta-release-1.99-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSkmdysK%2FLinkChat-SecureCore" "/workspace/builds/worker-7-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/SkmdysK/LinkChat-SecureCore
[INFO] finished tweaking git repo https://github.com/SkmdysK/LinkChat-SecureCore
[INFO] tweaked toml for git repo https://github.com/SkmdysK/LinkChat-SecureCore written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/SkmdysK/LinkChat-SecureCore on toolchain 1.99.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/SkmdysK/LinkChat-SecureCore 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.99.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 79126cb2c1a06bebec6e887c211399357ae1ea19cd07559fc3e91f3b1598fc37
[INFO] running `Command { std: "docker" "start" "79126cb2c1a06bebec6e887c211399357ae1ea19cd07559fc3e91f3b1598fc37", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "79126cb2c1a06bebec6e887c211399357ae1ea19cd07559fc3e91f3b1598fc37", 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" "79126cb2c1a06bebec6e887c211399357ae1ea19cd07559fc3e91f3b1598fc37" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "79126cb2c1a06bebec6e887c211399357ae1ea19cd07559fc3e91f3b1598fc37", 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" "79126cb2c1a06bebec6e887c211399357ae1ea19cd07559fc3e91f3b1598fc37" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling opaque-debug v0.3.1
[INFO] [stderr]    Compiling zerocopy v0.8.50
[INFO] [stderr]    Compiling pqc_kyber v0.6.0
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling mio v1.2.1
[INFO] [stderr]    Compiling socket2 v0.6.4
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling universal-hash v0.5.1
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling aead v0.5.2
[INFO] [stderr]    Compiling polyval v0.6.2
[INFO] [stderr]    Compiling poly1305 v0.8.0
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling hkdf v0.12.4
[INFO] [stderr]    Compiling ghash v0.5.1
[INFO] [stderr]    Compiling zeroize_derive v1.4.3
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling aes v0.8.4
[INFO] [stderr]    Compiling chacha20 v0.9.1
[INFO] [stderr]    Compiling ctr v0.9.2
[INFO] [stderr]    Compiling chacha20poly1305 v0.10.1
[INFO] [stderr]    Compiling aes-gcm v0.10.3
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand v0.8.6
[INFO] [stderr]    Compiling secure_core v1.0.0 (/opt/rustwide/workdir/secure_core)
[INFO] [stdout] warning: unused import: `rand::RngCore`
[INFO] [stdout]   --> secure_core/src/evolution.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use rand::RngCore;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `queue_real_message` is never used
[INFO] [stdout]   --> secure_core/src/constant_flow.rs:54:8
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub fn queue_real_message(payload: &[u8]) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `with_capacity`, `as_mut_slice`, `is_empty`, and `clear` are never used
[INFO] [stdout]   --> secure_core/src/memory_protection.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl SecureBuffer {
[INFO] [stdout]    | ----------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn with_capacity(cap: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 56 |     pub fn as_mut_slice(&mut self) -> &mut [u8] {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub fn is_empty(&self) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 75 |     pub fn clear(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SEEK_WINDOW` is never used
[INFO] [stdout]   --> secure_core/src/clock_align.rs:35:11
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub const SEEK_WINDOW: u64 = 10;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `buf`, `write_idx`, and `count` are never read
[INFO] [stdout]   --> secure_core/src/clock_align.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 60 | struct SkewRingBuffer {
[INFO] [stdout]    |        -------------- fields in this struct
[INFO] [stdout] 61 |     buf: [i64; DELTA_HISTORY_SIZE],
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 62 |     write_idx: usize,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 63 |     count: usize, // number of valid entries (≤ DELTA_HISTORY_SIZE)
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `push`, `sorted_entries`, and `median` are never used
[INFO] [stdout]   --> secure_core/src/clock_align.rs:77:8
[INFO] [stdout]    |
[INFO] [stdout] 66 | impl SkewRingBuffer {
[INFO] [stdout]    | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 77 |     fn push(&mut self, delta: i64) {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 86 |     fn sorted_entries(&self) -> Vec<i64> {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 93 |     fn median(&self) -> i64 {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `record_counter_observation` is never used
[INFO] [stdout]    --> secure_core/src/clock_align.rs:129:8
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub fn record_counter_observation(remote_counter: u64, local_counter: u64) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `monotonic_nanos` is never used
[INFO] [stdout]    --> secure_core/src/clock_align.rs:186:4
[INFO] [stdout]     |
[INFO] [stdout] 186 | fn monotonic_nanos() -> u64 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bitmap_write_count` is never read
[INFO] [stdout]    --> secure_core/src/virtual_volume.rs:150:5
[INFO] [stdout]     |
[INFO] [stdout] 140 | pub struct VirtualVolume {
[INFO] [stdout]     |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 150 |     bitmap_write_count: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `vault_path`, `read_block_raw`, `write_block_raw`, `data_start_block`, `data_blocks`, and `master_key_hash` are never used
[INFO] [stdout]    --> secure_core/src/virtual_volume.rs:155:12
[INFO] [stdout]     |
[INFO] [stdout] 153 | impl VirtualVolume {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] 154 |     /// Return the filesystem path of this vault, needed for secure purge.
[INFO] [stdout] 155 |     pub fn vault_path(&self) -> &str { &self.vault_path }
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 395 |     pub fn read_block_raw(&mut self, block_idx: u64) -> std::io::Result<[u8; BLOCK_SIZE]> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 408 |     pub fn write_block_raw(&mut self, block_idx: u64, data: &[u8; BLOCK_SIZE]) -> std::io::Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 528 |     pub fn data_start_block(&self) -> u64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 534 |     pub fn data_blocks(&self) -> u64 {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 540 |     pub fn master_key_hash(&mut self) -> std::io::Result<[u8; 32]> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointers are not nullable, so checking them for null will always return false
[INFO] [stdout]    --> secure_core/src/lib.rs:341:8
[INFO] [stdout]     |
[INFO] [stdout] 341 |     if cb as *const () == std::ptr::null() { return 1; }
[INFO] [stdout]     |        --^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |        |
[INFO] [stdout]     |        expression has type `unsafe extern "C" fn(*const u8, u32)`
[INFO] [stdout]     |
[INFO] [stdout]     = help: wrap the function pointer inside an `Option` and use `Option::is_none` to check for null pointer value
[INFO] [stdout]     = note: `#[warn(useless_ptr_null_checks)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 19.24s
[INFO] running `Command { std: "docker" "inspect" "79126cb2c1a06bebec6e887c211399357ae1ea19cd07559fc3e91f3b1598fc37", 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" "79126cb2c1a06bebec6e887c211399357ae1ea19cd07559fc3e91f3b1598fc37" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling secure_core v1.0.0 (/opt/rustwide/workdir/secure_core)
[INFO] [stdout] warning: unused import: `rand::RngCore`
[INFO] [stdout]   --> secure_core/src/evolution.rs:26:5
[INFO] [stdout]    |
[INFO] [stdout] 26 | use rand::RngCore;
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `queue_real_message` is never used
[INFO] [stdout]   --> secure_core/src/constant_flow.rs:54:8
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub fn queue_real_message(payload: &[u8]) {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `with_capacity` is never used
[INFO] [stdout]   --> secure_core/src/memory_protection.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl SecureBuffer {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn with_capacity(cap: usize) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `SEEK_WINDOW` is never used
[INFO] [stdout]   --> secure_core/src/clock_align.rs:35:11
[INFO] [stdout]    |
[INFO] [stdout] 35 | pub const SEEK_WINDOW: u64 = 10;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `record_counter_observation` is never used
[INFO] [stdout]    --> secure_core/src/clock_align.rs:129:8
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub fn record_counter_observation(remote_counter: u64, local_counter: u64) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bitmap_write_count` is never read
[INFO] [stdout]    --> secure_core/src/virtual_volume.rs:150:5
[INFO] [stdout]     |
[INFO] [stdout] 140 | pub struct VirtualVolume {
[INFO] [stdout]     |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 150 |     bitmap_write_count: u32,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `vault_path`, `read_block_raw`, `write_block_raw`, `data_start_block`, and `master_key_hash` are never used
[INFO] [stdout]    --> secure_core/src/virtual_volume.rs:155:12
[INFO] [stdout]     |
[INFO] [stdout] 153 | impl VirtualVolume {
[INFO] [stdout]     | ------------------ methods in this implementation
[INFO] [stdout] 154 |     /// Return the filesystem path of this vault, needed for secure purge.
[INFO] [stdout] 155 |     pub fn vault_path(&self) -> &str { &self.vault_path }
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 395 |     pub fn read_block_raw(&mut self, block_idx: u64) -> std::io::Result<[u8; BLOCK_SIZE]> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 408 |     pub fn write_block_raw(&mut self, block_idx: u64, data: &[u8; BLOCK_SIZE]) -> std::io::Result<()> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 528 |     pub fn data_start_block(&self) -> u64 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 540 |     pub fn master_key_hash(&mut self) -> std::io::Result<[u8; 32]> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function pointers are not nullable, so checking them for null will always return false
[INFO] [stdout]    --> secure_core/src/lib.rs:341:8
[INFO] [stdout]     |
[INFO] [stdout] 341 |     if cb as *const () == std::ptr::null() { return 1; }
[INFO] [stdout]     |        --^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |        |
[INFO] [stdout]     |        expression has type `unsafe extern "C" fn(*const u8, u32)`
[INFO] [stdout]     |
[INFO] [stdout]     = help: wrap the function pointer inside an `Option` and use `Option::is_none` to check for null pointer value
[INFO] [stdout]     = note: `#[warn(useless_ptr_null_checks)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 2.03s
[INFO] running `Command { std: "docker" "inspect" "79126cb2c1a06bebec6e887c211399357ae1ea19cd07559fc3e91f3b1598fc37", 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" "79126cb2c1a06bebec6e887c211399357ae1ea19cd07559fc3e91f3b1598fc37" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `rand::RngCore`
[INFO] [stderr]   --> secure_core/src/evolution.rs:26:5
[INFO] [stderr]    |
[INFO] [stderr] 26 | use rand::RngCore;
[INFO] [stderr]    |     ^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `queue_real_message` is never used
[INFO] [stderr]   --> secure_core/src/constant_flow.rs:54:8
[INFO] [stderr]    |
[INFO] [stderr] 54 | pub fn queue_real_message(payload: &[u8]) {
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `with_capacity` is never used
[INFO] [stderr]   --> secure_core/src/memory_protection.rs:35:12
[INFO] [stderr]    |
[INFO] [stderr] 25 | impl SecureBuffer {
[INFO] [stderr]    | ----------------- associated function in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 35 |     pub fn with_capacity(cap: usize) -> Self {
[INFO] [stderr]    |            ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `SEEK_WINDOW` is never used
[INFO] [stderr]   --> secure_core/src/clock_align.rs:35:11
[INFO] [stderr]    |
[INFO] [stderr] 35 | pub const SEEK_WINDOW: u64 = 10;
[INFO] [stderr]    |           ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `record_counter_observation` is never used
[INFO] [stderr]    --> secure_core/src/clock_align.rs:129:8
[INFO] [stderr]     |
[INFO] [stderr] 129 | pub fn record_counter_observation(remote_counter: u64, local_counter: u64) {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `bitmap_write_count` is never read
[INFO] [stderr]    --> secure_core/src/virtual_volume.rs:150:5
[INFO] [stderr]     |
[INFO] [stderr] 140 | pub struct VirtualVolume {
[INFO] [stderr]     |            ------------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 150 |     bitmap_write_count: u32,
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: methods `vault_path`, `read_block_raw`, `write_block_raw`, `data_start_block`, and `master_key_hash` are never used
[INFO] [stderr]    --> secure_core/src/virtual_volume.rs:155:12
[INFO] [stderr]     |
[INFO] [stderr] 153 | impl VirtualVolume {
[INFO] [stderr]     | ------------------ methods in this implementation
[INFO] [stderr] 154 |     /// Return the filesystem path of this vault, needed for secure purge.
[INFO] [stderr] 155 |     pub fn vault_path(&self) -> &str { &self.vault_path }
[INFO] [stderr]     |            ^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 395 |     pub fn read_block_raw(&mut self, block_idx: u64) -> std::io::Result<[u8; BLOCK_SIZE]> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 408 |     pub fn write_block_raw(&mut self, block_idx: u64, data: &[u8; BLOCK_SIZE]) -> std::io::Result<()> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 528 |     pub fn data_start_block(&self) -> u64 {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 540 |     pub fn master_key_hash(&mut self) -> std::io::Result<[u8; 32]> {
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function pointers are not nullable, so checking them for null will always return false
[INFO] [stderr]    --> secure_core/src/lib.rs:341:8
[INFO] [stderr]     |
[INFO] [stderr] 341 |     if cb as *const () == std::ptr::null() { return 1; }
[INFO] [stderr]     |        --^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |        |
[INFO] [stderr]     |        expression has type `unsafe extern "C" fn(*const u8, u32)`
[INFO] [stderr]     |
[INFO] [stderr]     = help: wrap the function pointer inside an `Option` and use `Option::is_none` to check for null pointer value
[INFO] [stderr]     = note: `#[warn(useless_ptr_null_checks)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `secure_core` (lib test) generated 8 warnings (run `cargo fix --lib -p secure_core --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.07s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/deps/secure_core-8a74f92539560517)
[INFO] [stdout] 
[INFO] [stdout] running 21 tests
[INFO] [stdout] test anti_dos::tests::noop_if_same ... ok
[INFO] [stdout] test anti_dos::tests::recover_forward ... ok
[INFO] [stdout] test clock_align::tests::ring_buffer_median_even_count ... ok
[INFO] [stdout] test anti_dos::tests::cap_enforced ... ok
[INFO] [stdout] test clock_align::tests::ring_buffer_wraps_correctly ... ok
[INFO] [stdout] test memory_protection::tests::secure_buffer_zeroizes_on_drop ... ok
[INFO] [stdout] test message_cipher::tests::key_changes_with_seq ... ok
[INFO] [stdout] test message_cipher::tests::msg_seq_monotonic ... ok
[INFO] [stdout] test tail_padding::tests::length_in_range ... ok
[INFO] [stdout] test memory_protection::tests::secure_buffer_deref_works ... ok
[INFO] [stdout] test message_cipher::tests::roundtrip ... ok
[INFO] [stdout] test tail_padding::tests::roundtrip ... ok
[INFO] [stdout] test evolution::tests::full_evolution_cycle ... ok
[INFO] [stdout] test clock_align::tests::ring_buffer_push_and_median ... ok
[INFO] [stdout] test memory_protection::tests::clear_resets_buffer ... ok
[INFO] [stdout] test clock_align::tests::monotonic_nanos_increases ... ok
[INFO] [stdout] test disk_wipe::tests::purge_destroys_file_contents ... ok
[INFO] [stdout] test vault::tests::create_and_reopen_vault ... ok
[INFO] [stdout] test vault::tests::write_and_read_block ... ok
[INFO] [stdout] test vault::tests::allocate_exhausts_and_frees ... ok
[INFO] [stdout] test vault::tests::block_write_then_reread_roundtrip ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 21 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "79126cb2c1a06bebec6e887c211399357ae1ea19cd07559fc3e91f3b1598fc37", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "79126cb2c1a06bebec6e887c211399357ae1ea19cd07559fc3e91f3b1598fc37", kill_on_drop: false }`
[INFO] [stdout] 79126cb2c1a06bebec6e887c211399357ae1ea19cd07559fc3e91f3b1598fc37
