[INFO] fetching crate certstream-server-rust 1.5.6...
[INFO] testing certstream-server-rust-1.5.6 against 1.100.0-beta.1 for beta-1.100-2
[INFO] extracting crate certstream-server-rust 1.5.6 into /workspace/builds/worker-0-tc2/source
[INFO] started tweaking crates.io crate certstream-server-rust 1.5.6
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate certstream-server-rust 1.5.6
[INFO] tweaked toml for crates.io crate certstream-server-rust 1.5.6 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate certstream-server-rust 1.5.6 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate certstream-server-rust 1.5.6 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.100.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-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] e4099113502f2df0bb69b3e3ea60133d481eddb2b90167f06ec87ddebfb378b1
[INFO] running `Command { std: "docker" "start" "e4099113502f2df0bb69b3e3ea60133d481eddb2b90167f06ec87ddebfb378b1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e4099113502f2df0bb69b3e3ea60133d481eddb2b90167f06ec87ddebfb378b1", 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" "e4099113502f2df0bb69b3e3ea60133d481eddb2b90167f06ec87ddebfb378b1" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e4099113502f2df0bb69b3e3ea60133d481eddb2b90167f06ec87ddebfb378b1", 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" "e4099113502f2df0bb69b3e3ea60133d481eddb2b90167f06ec87ddebfb378b1" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling flagset v0.4.7
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling der_derive v0.7.3
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling aws-lc-rs v1.17.0
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling rustls-pki-types v1.14.1
[INFO] [stderr]    Compiling bitflags v2.11.1
[INFO] [stderr]    Compiling lazy_static v1.5.0
[INFO] [stderr]    Compiling semver v1.0.28
[INFO] [stderr]    Compiling rustls v0.23.40
[INFO] [stderr]    Compiling num-bigint-dig v0.8.6
[INFO] [stderr]    Compiling darling_core v0.23.0
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling aws-lc-sys v0.41.0
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]    Compiling hybrid-array v0.4.12
[INFO] [stderr]    Compiling rusticata-macros v4.1.0
[INFO] [stderr]    Compiling tikv-jemalloc-sys v0.6.1+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7
[INFO] [stderr]    Compiling asn1-rs-derive v0.6.0
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling rustls-native-certs v0.8.3
[INFO] [stderr]    Compiling asn1-rs-impl v0.2.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling der v0.7.10
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling rfc6979 v0.4.0
[INFO] [stderr]    Compiling compression-codecs v0.4.38
[INFO] [stderr]    Compiling crypto-common v0.2.1
[INFO] [stderr]    Compiling block-buffer v0.12.0
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling spki v0.7.3
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling pkcs8 v0.10.2
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling signature v2.2.0
[INFO] [stderr]    Compiling ff v0.13.1
[INFO] [stderr]    Compiling sec1 v0.7.3
[INFO] [stderr]    Compiling group v0.13.0
[INFO] [stderr]    Compiling crypto-bigint v0.5.5
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling ed25519 v2.2.3
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling pkcs1 v0.7.5
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling rand v0.8.6
[INFO] [stderr]    Compiling num-iter v0.1.45
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling darling_macro v0.23.0
[INFO] [stderr]    Compiling ed25519-dalek v2.2.0
[INFO] [stderr]    Compiling x509-cert v0.2.5
[INFO] [stderr]    Compiling asn1-rs v0.7.2
[INFO] [stderr]    Compiling raw-cpuid v11.6.0
[INFO] [stderr]    Compiling rapidhash v4.4.1
[INFO] [stderr]    Compiling rand v0.9.4
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling darling v0.23.0
[INFO] [stderr]    Compiling utf-8 v0.7.6
[INFO] [stderr]    Compiling oid-registry v0.8.1
[INFO] [stderr]    Compiling const-oid v0.10.2
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling ref-cast v1.0.25
[INFO] [stderr]    Compiling digest v0.11.3
[INFO] [stderr]    Compiling metrics v0.24.6
[INFO] [stderr]    Compiling elliptic-curve v0.13.8
[INFO] [stderr]    Compiling tungstenite v0.28.0
[INFO] [stderr]    Compiling serde_with_macros v3.21.0
[INFO] [stderr]    Compiling halfbrown v0.4.0
[INFO] [stderr]    Compiling ecdsa v0.16.9
[INFO] [stderr]    Compiling primeorder v0.13.6
[INFO] [stderr]    Compiling rand_xoshiro v0.7.0
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling float-cmp v0.10.0
[INFO] [stderr]    Compiling inotify-sys v0.1.5
[INFO] [stderr]    Compiling md-5 v0.10.6
[INFO] [stderr]    Compiling md2 v0.10.2
[INFO] [stderr]    Compiling left-right v0.11.7
[INFO] [stderr]    Compiling ref-cast-impl v1.0.25
[INFO] [stderr]    Compiling hashbag v0.1.13
[INFO] [stderr]    Compiling p384 v0.13.1
[INFO] [stderr]    Compiling p192 v0.13.0
[INFO] [stderr]    Compiling k256 v0.13.4
[INFO] [stderr]    Compiling dsa v0.6.3
[INFO] [stderr]    Compiling rsa v0.9.10
[INFO] [stderr]    Compiling quanta v0.12.6
[INFO] [stderr]    Compiling x509-ocsp v0.2.1
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling p256 v0.13.2
[INFO] [stderr]    Compiling p521 v0.13.3
[INFO] [stderr]    Compiling p224 v0.13.2
[INFO] [stderr]    Compiling metrics-exporter-prometheus v0.18.3
[INFO] [stderr]    Compiling metrics-util v0.20.4
[INFO] [stderr]    Compiling chrono v0.4.42
[INFO] [stderr]    Compiling serde_with v3.21.0
[INFO] [stderr]    Compiling evmap v11.0.0
[INFO] [stderr]    Compiling inotify v0.11.1
[INFO] [stderr]    Compiling value-trait v0.12.1
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling der-parser v10.0.0
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling tlog_tiles v0.2.0
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling signed_note v0.2.0
[INFO] [stderr]    Compiling axum-core v0.5.5
[INFO] [stderr]    Compiling x509-verify v0.4.8
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling async-compression v0.4.42
[INFO] [stderr]    Compiling fs-err v3.3.0
[INFO] [stderr]    Compiling tokio-tungstenite v0.28.0
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling notify-types v2.1.0
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling unsafe-libyaml v0.2.11
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling simdutf8 v0.1.5
[INFO] [stderr]    Compiling dashmap v6.1.0
[INFO] [stderr]    Compiling backon v1.6.0
[INFO] [stderr]    Compiling notify v8.2.0
[INFO] [stderr]    Compiling simd-json v0.17.0
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling x509-parser v0.18.1
[INFO] [stderr]    Compiling quick_cache v0.6.22
[INFO] [stderr]    Compiling sha1 v0.11.0
[INFO] [stderr]    Compiling sha2 v0.11.0
[INFO] [stderr]    Compiling h2 v0.4.14
[INFO] [stderr]    Compiling tower-http v0.6.11
[INFO] [stderr]    Compiling tokio-stream v0.1.17
[INFO] [stderr]    Compiling static_ct_api v0.2.0
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling hyper v1.9.0
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling axum v0.8.8
[INFO] [stderr]    Compiling rustls-webpki v0.103.13
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling rustls-platform-verifier v0.7.0
[INFO] [stderr]    Compiling hyper-rustls v0.27.9
[INFO] [stderr]    Compiling axum-server v0.8.0
[INFO] [stderr]    Compiling reqwest v0.13.3
[INFO] [stderr]    Compiling tikv-jemalloc-ctl v0.6.1
[INFO] [stderr]    Compiling tikv-jemallocator v0.6.1
[INFO] [stderr]    Compiling certstream-server-rust v1.5.6 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u32>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]   --> src/middleware.rs:78:40
[INFO] [stdout]    |
[INFO] [stdout] 78 |                 self.total_connections.fetch_update(
[INFO] [stdout]    |                                        ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 78 -                 self.total_connections.fetch_update(
[INFO] [stdout] 78 +                 self.total_connections.try_update(
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u32>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]    --> src/middleware.rs:106:32
[INFO] [stdout]     |
[INFO] [stdout] 106 |         self.total_connections.fetch_update(
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 106 -         self.total_connections.fetch_update(
[INFO] [stdout] 106 +         self.total_connections.try_update(
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u32>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]   --> src/middleware.rs:78:40
[INFO] [stdout]    |
[INFO] [stdout] 78 |                 self.total_connections.fetch_update(
[INFO] [stdout]    |                                        ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 78 -                 self.total_connections.fetch_update(
[INFO] [stdout] 78 +                 self.total_connections.try_update(
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u32>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]    --> src/middleware.rs:106:32
[INFO] [stdout]     |
[INFO] [stdout] 106 |         self.total_connections.fetch_update(
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 106 -         self.total_connections.fetch_update(
[INFO] [stdout] 106 +         self.total_connections.try_update(
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: unused dependency `regex`
[INFO] [stderr]   --> Cargo.toml:67:15
[INFO] [stderr]    |
[INFO] [stderr] 67 | [dependencies.regex]
[INFO] [stderr]    |               ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `regex`
[INFO] [stderr] warning: `certstream-server-rust` (manifest) generated 1 warning
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 57s
[INFO] running `Command { std: "docker" "inspect" "e4099113502f2df0bb69b3e3ea60133d481eddb2b90167f06ec87ddebfb378b1", 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" "e4099113502f2df0bb69b3e3ea60133d481eddb2b90167f06ec87ddebfb378b1" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling yasna v0.6.0
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u32>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]   --> src/middleware.rs:78:40
[INFO] [stdout]    |
[INFO] [stdout] 78 |                 self.total_connections.fetch_update(
[INFO] [stdout]    |                                        ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 78 -                 self.total_connections.fetch_update(
[INFO] [stdout] 78 +                 self.total_connections.try_update(
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u32>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]    --> src/middleware.rs:106:32
[INFO] [stdout]     |
[INFO] [stdout] 106 |         self.total_connections.fetch_update(
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 106 -         self.total_connections.fetch_update(
[INFO] [stdout] 106 +         self.total_connections.try_update(
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u32>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]   --> src/middleware.rs:78:40
[INFO] [stdout]    |
[INFO] [stdout] 78 |                 self.total_connections.fetch_update(
[INFO] [stdout]    |                                        ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 78 -                 self.total_connections.fetch_update(
[INFO] [stdout] 78 +                 self.total_connections.try_update(
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u32>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]    --> src/middleware.rs:106:32
[INFO] [stdout]     |
[INFO] [stdout] 106 |         self.total_connections.fetch_update(
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 106 -         self.total_connections.fetch_update(
[INFO] [stdout] 106 +         self.total_connections.try_update(
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rcgen v0.14.8
[INFO] [stderr]    Compiling certstream-server-rust v1.5.6 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u32>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]   --> src/middleware.rs:78:40
[INFO] [stdout]    |
[INFO] [stdout] 78 |                 self.total_connections.fetch_update(
[INFO] [stdout]    |                                        ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 78 -                 self.total_connections.fetch_update(
[INFO] [stdout] 78 +                 self.total_connections.try_update(
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u32>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]    --> src/middleware.rs:106:32
[INFO] [stdout]     |
[INFO] [stdout] 106 |         self.total_connections.fetch_update(
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 106 -         self.total_connections.fetch_update(
[INFO] [stdout] 106 +         self.total_connections.try_update(
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u32>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]   --> src/middleware.rs:78:40
[INFO] [stdout]    |
[INFO] [stdout] 78 |                 self.total_connections.fetch_update(
[INFO] [stdout]    |                                        ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]    |
[INFO] [stdout] 78 -                 self.total_connections.fetch_update(
[INFO] [stdout] 78 +                 self.total_connections.try_update(
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `std::sync::atomic::Atomic::<u32>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stdout]    --> src/middleware.rs:106:32
[INFO] [stdout]     |
[INFO] [stdout] 106 |         self.total_connections.fetch_update(
[INFO] [stdout]     |                                ^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: replace the use of the deprecated method
[INFO] [stdout]     |
[INFO] [stdout] 106 -         self.total_connections.fetch_update(
[INFO] [stdout] 106 +         self.total_connections.try_update(
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: unused dependency `regex`
[INFO] [stderr]   --> Cargo.toml:67:15
[INFO] [stderr]    |
[INFO] [stderr] 67 | [dependencies.regex]
[INFO] [stderr]    |               ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `regex`
[INFO] [stderr] warning: `certstream-server-rust` (manifest) generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 23.82s
[INFO] running `Command { std: "docker" "inspect" "e4099113502f2df0bb69b3e3ea60133d481eddb2b90167f06ec87ddebfb378b1", 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" "e4099113502f2df0bb69b3e3ea60133d481eddb2b90167f06ec87ddebfb378b1" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: use of deprecated method `std::sync::atomic::Atomic::<u32>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stderr]   --> src/middleware.rs:78:40
[INFO] [stderr]    |
[INFO] [stderr] 78 |                 self.total_connections.fetch_update(
[INFO] [stderr]    |                                        ^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] help: replace the use of the deprecated method
[INFO] [stderr]    |
[INFO] [stderr] 78 -                 self.total_connections.fetch_update(
[INFO] [stderr] 78 +                 self.total_connections.try_update(
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated method `std::sync::atomic::Atomic::<u32>::fetch_update`: renamed to `try_update` for consistency
[INFO] [stderr]    --> src/middleware.rs:106:32
[INFO] [stderr]     |
[INFO] [stderr] 106 |         self.total_connections.fetch_update(
[INFO] [stderr]     |                                ^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: replace the use of the deprecated method
[INFO] [stderr]     |
[INFO] [stderr] 106 -         self.total_connections.fetch_update(
[INFO] [stderr] 106 +         self.total_connections.try_update(
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: `certstream-server-rust` (lib) generated 2 warnings (run `cargo fix --lib -p certstream-server-rust` to apply 2 suggestions)
[INFO] [stderr] warning: `certstream-server-rust` (bin "certstream-server-rust") generated 2 warnings (2 duplicates)
[INFO] [stderr] warning: `certstream-server-rust` (bin "certstream-server-rust" test) generated 2 warnings (2 duplicates)
[INFO] [stderr] warning: `certstream-server-rust` (lib test) generated 2 warnings (2 duplicates)
[INFO] [stderr] warning: unused dependency `regex`
[INFO] [stderr]   --> Cargo.toml:67:15
[INFO] [stderr]    |
[INFO] [stderr] 67 | [dependencies.regex]
[INFO] [stderr]    |               ^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `regex`
[INFO] [stderr] warning: `certstream-server-rust` (manifest) generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.71s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/build/certstream-server-rust/cc06dd19551523c8/out/certstream_server_rust-cc06dd19551523c8)
[INFO] [stdout] 
[INFO] [stdout] running 265 tests
[INFO] [stdout] test api::tests::log_tracker_new_is_empty ... ok
[INFO] [stdout] test api::tests::log_tracker_register_adds_log_with_healthy_status ... ok
[INFO] [stdout] test api::tests::cache_capacity_returns_correct_value ... ok
[INFO] [stdout] test api::tests::cache_push_increments_len ... ok
[INFO] [stdout] test api::tests::cache_new_is_empty ... ok
[INFO] [stdout] test api::tests::cache_eviction_when_capacity_exceeded ... ok
[INFO] [stdout] test api::tests::server_stats_new_initializes_all_counters_to_zero ... ok
[INFO] [stdout] test api::tests::normalize_hash_lowercase_hex_to_uppercase ... ok
[INFO] [stdout] test api::tests::cache_get_by_fingerprint ... ok
[INFO] [stdout] test api::tests::cache_eviction_old_cert_not_findable ... ok
[INFO] [stdout] test api::tests::normalize_hash_strips_colons ... ok
[INFO] [stdout] test api::tests::log_tracker_count_by_status ... ok
[INFO] [stdout] test api::tests::log_tracker_update_changes_fields ... ok
[INFO] [stdout] test config::tests::test_auth_config_defaults ... ok
[INFO] [stdout] test api::tests::normalize_hash_mixed_case ... ok
[INFO] [stdout] test api::tests::log_tracker_get_all_returns_correct_status_strings ... ok
[INFO] [stdout] test config::tests::test_blank_user_agent_falls_back_to_default ... ok
[INFO] [stdout] test api::tests::cache_get_by_sha1 ... ok
[INFO] [stdout] test api::tests::cache_get_by_sha256 ... ok
[INFO] [stdout] test config::tests::test_default_state_file ... ok
[INFO] [stdout] test api::tests::server_stats_uptime_seconds_returns_reasonable_value ... ok
[INFO] [stdout] test config::tests::test_ct_log_config_defaults ... ok
[INFO] [stdout] test config::tests::test_has_tls_partial ... ok
[INFO] [stdout] test config::tests::test_has_tls_both_set ... ok
[INFO] [stdout] test config::tests::test_parse_operator_list_drops_blanks_and_trims ... ok
[INFO] [stdout] test config::tests::test_custom_ct_log_deserialize_overrides ... ok
[INFO] [stdout] test config::tests::test_has_tls_none ... ok
[INFO] [stdout] test config::tests::test_connection_limit_config_defaults ... ok
[INFO] [stdout] test config::tests::test_ct_log_config_deserialize_user_agent ... ok
[INFO] [stdout] test config::tests::test_protocol_config_defaults ... ok
[INFO] [stdout] test config::tests::test_ct_log_config_deserialize_with_state_file ... ok
[INFO] [stdout] test config::tests::test_ct_log_config_deserialize_force_http1_operators ... ok
[INFO] [stdout] test config::tests::test_custom_ct_log_deserialize ... ok
[INFO] [stdout] test config::tests::test_validate_blank_user_agent_is_not_an_error ... ok
[INFO] [stdout] test config::tests::test_stream_config_deserialize_partial ... ok
[INFO] [stdout] test config::tests::test_validate_zero_port ... ok
[INFO] [stdout] test config::tests::test_stream_config_defaults ... ok
[INFO] [stdout] test config::tests::test_rate_limit_config_back_compat_aliases ... ok
[INFO] [stdout] test config::tests::test_rate_limit_config_defaults ... ok
[INFO] [stdout] test config::tests::test_yaml_config_empty_static_logs ... ok
[INFO] [stdout] test config::tests::test_yaml_config_with_streams ... ok
[INFO] [stdout] test config::tests::test_static_ct_log_deserialize ... ok
[INFO] [stdout] test config::tests::test_static_ct_log_deserialize_overrides ... ok
[INFO] [stdout] test config::tests::test_validate_user_agent_invalid_header ... ok
[INFO] [stdout] test config::tests::test_ct_log_config_disable_flags ... ok
[INFO] [stdout] test config::tests::test_yaml_config_with_static_logs ... ok
[INFO] [stdout] test config::tests::test_user_agent_override_is_trimmed ... ok
[INFO] [stdout] test config::tests::test_protocol_config_yaml_omitting_sse_keeps_it_disabled ... ok
[INFO] [stdout] test config::tests::test_validate_start_overlap_leaves_bound ... ok
[INFO] [stdout] test config::tests::test_validate_zero_buffer_size ... ok
[INFO] [stdout] test config::tests::test_static_log_tree_size_source_parses_and_defaults ... ok
[INFO] [stdout] test ct::catalog::tests::google_usable_authoritative_by_default_when_verified ... ok
[INFO] [stdout] test ct::catalog::tests::registry_ids_match_pinned_set ... ok
[INFO] [stdout] test ct::catalog::tests::apple_is_unverified_and_never_authoritative ... ok
[INFO] [stdout] test ct::catalog::tests::google_all_non_authoritative_until_overridden ... ok
[INFO] [stdout] test config::tests::test_stream_config_deserialize_all_disabled ... ok
[INFO] [stdout] test ct::broadcast_tests::receiver_count_guard_skips_serialise_when_no_subs ... ok
[INFO] [stdout] test ct::log_list::tests::inherit_operators_takes_the_replaced_logs_operator ... ok
[INFO] [stdout] test config::tests::test_validate_valid_config ... ok
[INFO] [stdout] test ct::log_list::tests::test_from_custom_ct_log_preserves_overrides ... ok
[INFO] [stdout] test ct::log_list::tests::test_from_custom_ct_log ... ok
[INFO] [stdout] test ct::log_list::tests::local_override_conflicts_detects_identity_mismatch ... ok
[INFO] [stdout] test ct::log_list::tests::local_override_conflicts_allows_deliberate_get_sth_hybrid ... ok
[INFO] [stdout] test ct::broadcast_tests::broadcast_cert_increments_when_subscribed ... ok
[INFO] [stdout] test ct::log_list::tests::local_override_conflicts_checks_declared_log_origin ... ok
[INFO] [stdout] test ct::log_list::tests::test_is_usable_both_retired_and_rejected ... ok
[INFO] [stdout] test ct::log_list::tests::test_is_usable_no_state ... ok
[INFO] [stdout] test ct::catalog::verify::tests::rejects_garbage_pem ... ok
[INFO] [stdout] test ct::log_list::tests::test_is_usable_retired ... ok
[INFO] [stdout] test ct::catalog::tls_pin::tests::non_cert_der_yields_none ... ok
[INFO] [stdout] test ct::log_list::tests::test_is_usable_usable_state ... ok
[INFO] [stdout] test ct::log_list::tests::parse_list_malformed_yields_empty ... ok
[INFO] [stdout] test ct::catalog::verify::tests::embedded_key_fingerprint_matches_rfc_record ... ok
[INFO] [stdout] test ct::log_list::tests::test_log_type_equality ... ok
[INFO] [stdout] test ct::log_list::tests::test_normalized_url_with_trailing_slash ... ok
[INFO] [stdout] test ct::log_list::tests::test_normalized_url_with_https ... ok
[INFO] [stdout] test ct::catalog::tls_pin::tests::fixture_issuer_spki_matches_pin ... ok
[INFO] [stdout] test ct::log_list::tests::parse_list_normalizes_and_tolerates_unknown ... ok
[INFO] [stdout] test ct::log_list::tests::test_from_static_ct_log ... ok
[INFO] [stdout] test ct::log_list::tests::test_is_usable_rejected ... ok
[INFO] [stdout] test ct::log_list::tests::test_from_static_ct_log_preserves_overrides ... ok
[INFO] [stdout] test ct::log_list::tests::test_normalized_url_without_scheme_trailing_slash ... ok
[INFO] [stdout] test ct::log_list::tests::test_parse_legacy_google_v3_no_tiled_logs ... ok
[INFO] [stdout] test ct::log_list::tests::test_parse_apple_style_log_list ... ok
[INFO] [stdout] test ct::log_list::tests::test_normalized_url_without_scheme ... ok
[INFO] [stdout] test ct::normalize::tests::http_date_form_uses_default_rate_limit_backoff ... ok
[INFO] [stdout] test ct::catalog::tls_pin::tests::chain_membership_accept_and_reject ... ok
[INFO] [stdout] test ct::normalize::tests::normalize_operator_punctuation_only_falls_back_to_trimmed_lower ... ok
[INFO] [stdout] test ct::normalize::tests::source_id_prefers_non_empty_log_id ... ok
[INFO] [stdout] test ct::normalize::tests::valid_integer_seconds_converted_to_milliseconds ... ok
[INFO] [stdout] test ct::normalize::tests::absent_header_uses_default_rate_limit_backoff ... ok
[INFO] [stdout] test ct::normalize::tests::zero_clamps_to_minimum_floor ... ok
[INFO] [stdout] test ct::normalize::tests::value_over_cap_clamps_to_maximum ... ok
[INFO] [stdout] test ct::parser::tests::test_calculate_sha1_known_value ... ok
[INFO] [stdout] test ct::parser::tests::test_calculate_sha1_nonempty ... ok
[INFO] [stdout] test ct::parser::tests::test_calculate_sha256_known_value ... ok
[INFO] [stdout] test ct::parser::tests::test_format_key_id_empty ... ok
[INFO] [stdout] test ct::parser::tests::test_format_key_id_single_byte ... ok
[INFO] [stdout] test ct::normalize::tests::normalize_operator_collapses_case_whitespace_punctuation ... ok
[INFO] [stdout] test ct::normalize::tests::parse_catalog_state_known_and_unknown ... ok
[INFO] [stdout] test ct::normalize::tests::source_id_falls_back_to_url_when_log_id_absent_or_empty ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_certificate_empty_bytes ... ok
[INFO] [stdout] test ct::normalize::tests::normalize_log_origin_strips_scheme_and_slash ... ok
[INFO] [stdout] test ct::log_list::tests::test_normalized_url_http ... ok
[INFO] [stdout] test ct::normalize::tests::normalize_url_adds_scheme_and_strips_trailing_slash ... ok
[INFO] [stdout] test ct::parser::tests::test_format_key_id_multiple_bytes ... ok
[INFO] [stdout] test ct::parser::tests::test_format_serial_number_basic ... ok
[INFO] [stdout] test ct::parser::tests::test_format_serial_number_empty ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_chain_from_bytes_empty ... ok
[INFO] [stdout] test ct::parser::tests::test_format_serial_number_single_byte ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_certificate_garbage ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_leaf_input_too_short ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_ip_address_invalid_length ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_ip_address_ipv4 ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_ip_address_ipv6 ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_leaf_input_x509_entry_type_invalid_cert ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_leaf_input_unknown_entry_type ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_chain_from_bytes_too_short ... ok
[INFO] [stdout] test ct::static_ct::tests::accept_enforce_accepts_unverifiable ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_ip_address_empty ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_leaf_input_invalid_base64 ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_certificate_hashes_deterministic ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_certificate_ca_cert ... ok
[INFO] [stdout] test ct::static_ct::tests::test_decompress_tile_passthrough ... ok
[INFO] [stdout] test ct::static_ct::tests::test_decompress_tile_corrupt_gzip ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_certificate_with_sans ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_chain_from_bytes_with_one_cert ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_certificate_valid_der ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_certificate_no_der ... ok
[INFO] [stdout] test ct::static_ct::tests::test_fingerprint_hex ... ok
[INFO] [stdout] test ct::static_ct::tests::test_fingerprint_hex_all_ff ... ok
[INFO] [stdout] test ct::static_ct::tests::test_issuer_cache_multiple_entries ... ok
[INFO] [stdout] test ct::static_ct::tests::test_issuer_cache_negative_entry ... ok
[INFO] [stdout] test ct::static_ct::tests::test_fingerprint_hex_mixed ... ok
[INFO] [stdout] test ct::static_ct::tests::test_issuer_cache_new ... ok
[INFO] [stdout] test ct::static_ct::tests::test_encode_tile_path ... ok
[INFO] [stdout] test ct::static_ct::tests::test_issuer_cache_overwrite ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_checkpoint ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_checkpoint_large_tree_size ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_checkpoint_origin_mismatch ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_checkpoint_zero_tree_size ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_leaf_index_ext_empty ... ok
[INFO] [stdout] test ct::static_ct::tests::test_full_tile_floor_holds_head_at_last_complete_tile ... ok
[INFO] [stdout] test ct::static_ct::tests::test_fingerprint_hex_zeros ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_leaf_index_ext_max_40bit ... ok
[INFO] [stdout] test ct::static_ct::tests::test_issuer_cache_get_missing ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_checkpoint_empty_string ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_checkpoint_invalid ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_leaf_index_ext_skip_unknown_then_match ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_leaf_index_ext_unknown_only ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_leaf_index_ext_zero ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_tile_leaves_empty ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_leaf_index_ext_present ... ok
[INFO] [stdout] test ct::static_ct::tests::test_issuer_cache_insert_and_get ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_tile_leaves_single_precert ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_tile_leaves_single_x509 ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_tile_leaves_truncated ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_tile_leaves_x509_with_leaf_index ... ok
[INFO] [stdout] test ct::static_ct::tests::test_read_chain_fingerprints_rejects_non_aligned_length ... ok
[INFO] [stdout] test ct::static_ct::tests::test_read_u24 ... ok
[INFO] [stdout] test ct::static_ct::tests::test_tail_start_seeds_overlap_behind_head ... ok
[INFO] [stdout] test ct::static_ct::tests::test_tail_start_small_log_floors_at_zero ... ok
[INFO] [stdout] test ct::static_ct::tests::test_tile_url_full ... ok
[INFO] [stdout] test ct::static_ct::tests::test_decompress_tile_gzip ... ok
[INFO] [stdout] test ct::static_ct::tests::test_tile_url_full_256_is_not_partial ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_tile_leaves_truncated_ext_data_returns_none ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_tile_leaves_x509_no_chain ... ok
[INFO] [stdout] test ct::static_ct::tests::accept_enforce_rejects_failed_signature ... ok
[INFO] [stdout] test ct::static_ct::tests::verify_checkpoint_signature_no_key_unverifiable ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_tile_leaves_long_chain_recovers_full_count ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_tile_leaves_multiple_entries ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_tile_leaves_precert_no_chain ... ok
[INFO] [stdout] test ct::static_ct::tests::test_tile_url_partial ... ok
[INFO] [stdout] test ct::static_ct::tests::verify_checkpoint_signature_bad_base64_unverifiable ... ok
[INFO] [stdout] test ct::watcher::tests::test_circuit_opens_on_unhealthy ... ok
[INFO] [stdout] test ct::static_ct::tests::verify_checkpoint_signature_non_p256_key_unverifiable ... ok
[INFO] [stdout] test ct::watcher::tests::test_log_health_initial_state ... ok
[INFO] [stdout] test ct::static_ct::tests::verify_checkpoint_signature_wrong_key_fails ... ok
[INFO] [stdout] test ct::static_ct::tests::verify_checkpoint_signature_wrong_origin_fails ... ok
[INFO] [stdout] test ct::watcher::tests::test_half_open_recovers_on_success ... ok
[INFO] [stdout] test ct::watcher::tests::test_backoff_caps_at_max ... ok
[INFO] [stdout] test ct::watcher::tests::test_backoff_increases_exponentially ... ok
[INFO] [stdout] test ct::static_ct::tests::test_tile_url_large_index ... ok
[INFO] [stdout] test ct::watcher::tests::test_record_failure_transitions_to_unhealthy ... ok
[INFO] [stdout] test ct::watcher::tests::test_unhealthy_threshold_1_degraded_at_1 ... ok
[INFO] [stdout] test ct::watcher::tests::test_total_errors_accumulate ... ok
[INFO] [stdout] test ct::watcher::tests::test_record_failure_transitions_to_degraded ... ok
[INFO] [stdout] test ct::watcher::tests::test_success_recovers_from_degraded ... ok
[INFO] [stdout] test ct::watcher::tests::test_record_success_resets_failures ... ok
[INFO] [stdout] test ct::watcher::tests::test_success_resets_backoff ... ok
[INFO] [stdout] test dedup::tests::test_cleanup_keeps_fresh_entries ... ok
[INFO] [stdout] test dedup::tests::test_cleanup_under_capacity_keeps_full_ttl ... ok
[INFO] [stdout] test dedup::tests::test_is_new_different_keys ... ok
[INFO] [stdout] test ct::static_ct::tests::accept_verified_signature ... ok
[INFO] [stdout] test dedup::tests::test_is_new_first_seen ... ok
[INFO] [stdout] test ct::static_ct::tests::accept_warn_accepts_failed_signature ... ok
[INFO] [stdout] test dedup::tests::test_zero_key ... ok
[INFO] [stdout] test hot_reload::tests::test_load_empty_yaml_keeps_current ... ok
[INFO] [stdout] test dedup::tests::test_len ... ok
[INFO] [stdout] test hot_reload::tests::test_load_invalid_yaml ... ok
[INFO] [stdout] test ct::static_ct::tests::verify_checkpoint_signature_tampered_tree_size_fails ... ok
[INFO] [stdout] test hot_reload::tests::test_new_returns_initial_config ... ok
[INFO] [stdout] test hot_reload::tests::test_load_missing_file ... ok
[INFO] [stdout] test ct::static_ct::tests::verify_checkpoint_signature_valid ... ok
[INFO] [stdout] test dedup::tests::test_is_new_capacity_overflow_no_wipe ... ok
[INFO] [stdout] test hot_reload::tests::test_update_changes_config ... ok
[INFO] [stdout] test hot_reload::tests::test_partial_yaml_only_overrides_specified_sections ... ok
[INFO] [stdout] test middleware::tests::auth_bearer_prefix_stripped ... ok
[INFO] [stdout] test dedup::tests::test_is_new_duplicate ... ok
[INFO] [stdout] test hot_reload::tests::test_load_valid_yaml ... ok
[INFO] [stdout] test middleware::tests::auth_none_token_rejected ... ok
[INFO] [stdout] test middleware::tests::auth_invalid_token_rejected ... ok
[INFO] [stdout] test middleware::tests::auth_valid_token_accepted ... ok
[INFO] [stdout] test middleware::tests::auth_is_enabled_returns_correct_value ... ok
[INFO] [stdout] test middleware::tests::limiter_acquire_within_limits ... ok
[INFO] [stdout] test middleware::tests::limiter_disabled_always_allows ... ok
[INFO] [stdout] test middleware::tests::limiter_disabled_does_not_track_connections ... ok
[INFO] [stdout] test middleware::tests::limiter_per_ip_limit_enforcement ... ok
[INFO] [stdout] test middleware::tests::limiter_rejects_at_max_connections ... ok
[INFO] [stdout] test middleware::tests::limiter_current_connections_tracks_correctly ... ok
[INFO] [stdout] test middleware::tests::limiter_release_frees_total_slot ... ok
[INFO] [stdout] test models::certificate::tests::test_build_aggregated_all_fields ... ok
[INFO] [stdout] test models::certificate::tests::test_build_aggregated_empty_subject ... ok
[INFO] [stdout] test models::certificate::tests::test_build_aggregated_only_cn ... ok
[INFO] [stdout] test middleware::tests::auth_disabled_always_validates ... ok
[INFO] [stdout] test models::certificate::tests::test_pre_serialize_domains_contains_dns_entries ... ok
[INFO] [stdout] test models::certificate::tests::test_pre_serialize_lite_does_not_contain_chain ... ok
[INFO] [stdout] test models::certificate::tests::test_to_domains_only_message_type ... ok
[INFO] [stdout] test middleware::tests::limiter_release_decrements_and_reallows ... ok
[INFO] [stdout] test models::certificate::tests::test_is_false_with_false_value ... ok
[INFO] [stdout] test models::certificate::tests::test_pre_serialize_returns_some ... ok
[INFO] [stdout] test models::certificate::tests::test_is_false_with_true_value ... ok
[INFO] [stdout] test rate_limit::tests::test_check_eventually_rejected ... ok
[INFO] [stdout] test rate_limit::tests::test_check_first_request_allowed ... ok
[INFO] [stdout] test rate_limit::tests::test_cleanup_stale_keeps_fresh_entries ... ok
[INFO] [stdout] test models::certificate::tests::test_to_domains_only_contains_correct_domains ... ok
[INFO] [stdout] test state::tests::test_dirty_flag ... ok
[INFO] [stdout] test rate_limit::tests::test_cleanup_stale_removes_old_entries ... ok
[INFO] [stdout] test state::tests::test_get_tree_size_after_reload ... ok
[INFO] [stdout] test state::tests::test_load_corrupt_file ... ok
[INFO] [stdout] test state::tests::test_new_with_nonexistent_file ... ok
[INFO] [stdout] test state::tests::test_new_without_file ... ok
[INFO] [stdout] test state::tests::test_multiple_logs_state ... ok
[INFO] [stdout] test state::tests::test_load_valid_state_file ... ok
[INFO] [stdout] test models::certificate::tests::test_pre_serialize_full_contains_certificate_update ... ok
[INFO] [stdout] test rate_limit::tests::test_check_different_ips_independent ... ok
[INFO] [stdout] test rate_limit::tests::test_check_disabled_always_allowed ... ok
[INFO] [stdout] test websocket::server::tests::broadcast_emits_lagged_when_receiver_falls_behind ... ok
[INFO] [stdout] test websocket::server::tests::lag_counter_disconnects_at_threshold ... ok
[INFO] [stdout] test state::tests::test_save_if_dirty_skips_when_clean ... ok
[INFO] [stdout] test state::tests::test_update_and_get_index ... ok
[INFO] [stdout] test websocket::server::tests::lag_policy_disconnect_threshold_is_sane ... ok
[INFO] [stdout] test dedup::tests::test_is_new_atomic_under_contention ... ok
[INFO] [stdout] test state::tests::test_atomic_write_no_partial_file ... ok
[INFO] [stdout] test state::tests::test_save_and_load_roundtrip ... ok
[INFO] [stdout] test state::tests::test_save_clears_dirty_flag ... ok
[INFO] [stdout] test dedup::tests::test_cleanup_removes_expired ... ok
[INFO] [stdout] test dedup::tests::test_is_new_ttl_expiry ... ok
[INFO] [stdout] test ct::catalog::verify::tests::real_google_fixture_verifies_against_embedded_key ... ok
[INFO] [stdout] test ct::broadcast_tests::operator_limiter_burst_allows_n_then_throttles ... ok
[INFO] [stdout] test ct::broadcast_tests::operator_limiter_enforces_min_interval ... ok
[INFO] [stdout] test dedup::tests::test_cleanup_task_stops_on_cancellation ... ok
[INFO] [stdout] test dedup::tests::test_cleanup_over_capacity_narrows_window ... ok
[INFO] [stdout] test ct::static_ct::tests::issuer_fetch_hits_network_at_most_once_per_fingerprint ... ok
[INFO] [stdout] test state::tests::test_periodic_save_stops_on_cancel ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 265 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.28s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/build/certstream-server-rust/410145766efac9ef/out/certstream_server_rust-410145766efac9ef)
[INFO] [stdout] 
[INFO] [stdout] running 269 tests
[INFO] [stdout] test api::tests::log_tracker_get_all_returns_correct_status_strings ... ok
[INFO] [stdout] test api::tests::cache_get_by_sha1 ... ok
[INFO] [stdout] test api::tests::cache_get_by_fingerprint ... ok
[INFO] [stdout] test api::tests::cache_get_by_sha256 ... ok
[INFO] [stdout] test api::tests::cache_eviction_old_cert_not_findable ... ok
[INFO] [stdout] test api::tests::log_tracker_count_by_status ... ok
[INFO] [stdout] test api::tests::cache_capacity_returns_correct_value ... ok
[INFO] [stdout] test api::tests::log_tracker_new_is_empty ... ok
[INFO] [stdout] test api::tests::log_tracker_register_adds_log_with_healthy_status ... ok
[INFO] [stdout] test api::tests::cache_new_is_empty ... ok
[INFO] [stdout] test api::tests::cache_push_increments_len ... ok
[INFO] [stdout] test api::tests::cache_eviction_when_capacity_exceeded ... ok
[INFO] [stdout] test api::tests::log_tracker_update_changes_fields ... ok
[INFO] [stdout] test api::tests::normalize_hash_lowercase_hex_to_uppercase ... ok
[INFO] [stdout] test api::tests::server_stats_new_initializes_all_counters_to_zero ... ok
[INFO] [stdout] test api::tests::normalize_hash_mixed_case ... ok
[INFO] [stdout] test api::tests::normalize_hash_strips_colons ... ok
[INFO] [stdout] test config::tests::test_auth_config_defaults ... ok
[INFO] [stdout] test api::tests::server_stats_uptime_seconds_returns_reasonable_value ... ok
[INFO] [stdout] test config::tests::test_blank_user_agent_falls_back_to_default ... ok
[INFO] [stdout] test config::tests::test_connection_limit_config_defaults ... ok
[INFO] [stdout] test config::tests::test_ct_log_config_defaults ... ok
[INFO] [stdout] test config::tests::test_ct_log_config_deserialize_force_http1_operators ... ok
[INFO] [stdout] test config::tests::test_ct_log_config_deserialize_user_agent ... ok
[INFO] [stdout] test config::tests::test_ct_log_config_disable_flags ... ok
[INFO] [stdout] test config::tests::test_ct_log_config_deserialize_with_state_file ... ok
[INFO] [stdout] test config::tests::test_default_state_file ... ok
[INFO] [stdout] test config::tests::test_has_tls_both_set ... ok
[INFO] [stdout] test config::tests::test_custom_ct_log_deserialize_overrides ... ok
[INFO] [stdout] test config::tests::test_has_tls_none ... ok
[INFO] [stdout] test config::tests::test_custom_ct_log_deserialize ... ok
[INFO] [stdout] test config::tests::test_parse_operator_list_drops_blanks_and_trims ... ok
[INFO] [stdout] test config::tests::test_protocol_config_defaults ... ok
[INFO] [stdout] test config::tests::test_rate_limit_config_back_compat_aliases ... ok
[INFO] [stdout] test config::tests::test_protocol_config_yaml_omitting_sse_keeps_it_disabled ... ok
[INFO] [stdout] test config::tests::test_has_tls_partial ... ok
[INFO] [stdout] test config::tests::test_rate_limit_config_defaults ... ok
[INFO] [stdout] test config::tests::test_static_ct_log_deserialize ... ok
[INFO] [stdout] test config::tests::test_static_ct_log_deserialize_overrides ... ok
[INFO] [stdout] test config::tests::test_stream_config_defaults ... ok
[INFO] [stdout] test config::tests::test_stream_config_deserialize_partial ... ok
[INFO] [stdout] test config::tests::test_stream_config_deserialize_all_disabled ... ok
[INFO] [stdout] test config::tests::test_user_agent_override_is_trimmed ... ok
[INFO] [stdout] test config::tests::test_static_log_tree_size_source_parses_and_defaults ... ok
[INFO] [stdout] test config::tests::test_validate_start_overlap_leaves_bound ... ok
[INFO] [stdout] test config::tests::test_validate_blank_user_agent_is_not_an_error ... ok
[INFO] [stdout] test config::tests::test_validate_user_agent_invalid_header ... ok
[INFO] [stdout] test config::tests::test_validate_valid_config ... ok
[INFO] [stdout] test config::tests::test_validate_zero_port ... ok
[INFO] [stdout] test config::tests::test_validate_zero_buffer_size ... ok
[INFO] [stdout] test config::tests::test_yaml_config_empty_static_logs ... ok
[INFO] [stdout] test config::tests::test_yaml_config_with_static_logs ... ok
[INFO] [stdout] test config::tests::test_yaml_config_with_streams ... ok
[INFO] [stdout] test ct::broadcast_tests::receiver_count_guard_skips_serialise_when_no_subs ... ok
[INFO] [stdout] test ct::broadcast_tests::broadcast_cert_increments_when_subscribed ... ok
[INFO] [stdout] test ct::catalog::tests::apple_is_unverified_and_never_authoritative ... ok
[INFO] [stdout] test ct::catalog::tests::google_usable_authoritative_by_default_when_verified ... ok
[INFO] [stdout] test ct::catalog::tests::google_all_non_authoritative_until_overridden ... ok
[INFO] [stdout] test ct::catalog::tests::registry_ids_match_pinned_set ... ok
[INFO] [stdout] test ct::catalog::tls_pin::tests::non_cert_der_yields_none ... ok
[INFO] [stdout] test ct::catalog::tls_pin::tests::fixture_issuer_spki_matches_pin ... ok
[INFO] [stdout] test ct::catalog::tls_pin::tests::chain_membership_accept_and_reject ... ok
[INFO] [stdout] test ct::catalog::verify::tests::rejects_garbage_pem ... ok
[INFO] [stdout] test ct::catalog::verify::tests::embedded_key_fingerprint_matches_rfc_record ... ok
[INFO] [stdout] test ct::log_list::tests::local_override_conflicts_allows_deliberate_get_sth_hybrid ... ok
[INFO] [stdout] test ct::log_list::tests::inherit_operators_takes_the_replaced_logs_operator ... ok
[INFO] [stdout] test ct::log_list::tests::local_override_conflicts_checks_declared_log_origin ... ok
[INFO] [stdout] test ct::log_list::tests::local_override_conflicts_detects_identity_mismatch ... ok
[INFO] [stdout] test ct::log_list::tests::parse_list_malformed_yields_empty ... ok
[INFO] [stdout] test ct::log_list::tests::test_from_custom_ct_log ... ok
[INFO] [stdout] test ct::log_list::tests::test_from_custom_ct_log_preserves_overrides ... ok
[INFO] [stdout] test ct::log_list::tests::parse_list_normalizes_and_tolerates_unknown ... ok
[INFO] [stdout] test ct::log_list::tests::test_from_static_ct_log_preserves_overrides ... ok
[INFO] [stdout] test ct::log_list::tests::test_from_static_ct_log ... ok
[INFO] [stdout] test ct::log_list::tests::test_is_usable_no_state ... ok
[INFO] [stdout] test ct::log_list::tests::test_is_usable_both_retired_and_rejected ... ok
[INFO] [stdout] test ct::log_list::tests::test_is_usable_rejected ... ok
[INFO] [stdout] test ct::log_list::tests::test_is_usable_retired ... ok
[INFO] [stdout] test ct::log_list::tests::test_is_usable_usable_state ... ok
[INFO] [stdout] test ct::log_list::tests::test_log_type_equality ... ok
[INFO] [stdout] test ct::log_list::tests::test_normalized_url_http ... ok
[INFO] [stdout] test ct::log_list::tests::test_normalized_url_with_https ... ok
[INFO] [stdout] test ct::log_list::tests::test_normalized_url_without_scheme ... ok
[INFO] [stdout] test ct::log_list::tests::test_normalized_url_without_scheme_trailing_slash ... ok
[INFO] [stdout] test ct::normalize::tests::normalize_operator_collapses_case_whitespace_punctuation ... ok
[INFO] [stdout] test ct::log_list::tests::test_parse_legacy_google_v3_no_tiled_logs ... ok
[INFO] [stdout] test ct::normalize::tests::normalize_log_origin_strips_scheme_and_slash ... ok
[INFO] [stdout] test ct::log_list::tests::test_parse_apple_style_log_list ... ok
[INFO] [stdout] test ct::normalize::tests::parse_catalog_state_known_and_unknown ... ok
[INFO] [stdout] test ct::normalize::tests::absent_header_uses_default_rate_limit_backoff ... ok
[INFO] [stdout] test ct::normalize::tests::source_id_prefers_non_empty_log_id ... ok
[INFO] [stdout] test ct::log_list::tests::test_normalized_url_with_trailing_slash ... ok
[INFO] [stdout] test ct::normalize::tests::valid_integer_seconds_converted_to_milliseconds ... ok
[INFO] [stdout] test ct::normalize::tests::value_over_cap_clamps_to_maximum ... ok
[INFO] [stdout] test ct::normalize::tests::source_id_falls_back_to_url_when_log_id_absent_or_empty ... ok
[INFO] [stdout] test ct::normalize::tests::normalize_url_adds_scheme_and_strips_trailing_slash ... ok
[INFO] [stdout] test ct::parser::tests::test_calculate_sha1_known_value ... ok
[INFO] [stdout] test ct::parser::tests::test_calculate_sha1_nonempty ... ok
[INFO] [stdout] test ct::normalize::tests::zero_clamps_to_minimum_floor ... ok
[INFO] [stdout] test ct::normalize::tests::http_date_form_uses_default_rate_limit_backoff ... ok
[INFO] [stdout] test ct::normalize::tests::normalize_operator_punctuation_only_falls_back_to_trimmed_lower ... ok
[INFO] [stdout] test ct::parser::tests::test_format_key_id_empty ... ok
[INFO] [stdout] test ct::parser::tests::test_calculate_sha256_known_value ... ok
[INFO] [stdout] test ct::parser::tests::test_format_key_id_multiple_bytes ... ok
[INFO] [stdout] test ct::parser::tests::test_format_key_id_single_byte ... ok
[INFO] [stdout] test ct::parser::tests::test_format_serial_number_empty ... ok
[INFO] [stdout] test ct::parser::tests::test_format_serial_number_single_byte ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_certificate_empty_bytes ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_certificate_garbage ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_certificate_ca_cert ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_chain_from_bytes_too_short ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_certificate_valid_der ... ok
[INFO] [stdout] test ct::parser::tests::test_format_serial_number_basic ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_certificate_hashes_deterministic ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_chain_from_bytes_empty ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_certificate_with_sans ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_certificate_no_der ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_ip_address_empty ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_ip_address_invalid_length ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_chain_from_bytes_with_one_cert ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_leaf_input_invalid_base64 ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_ip_address_ipv6 ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_ip_address_ipv4 ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_leaf_input_x509_entry_type_invalid_cert ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_leaf_input_unknown_entry_type ... ok
[INFO] [stdout] test ct::parser::tests::test_parse_leaf_input_too_short ... ok
[INFO] [stdout] test ct::static_ct::tests::accept_enforce_accepts_unverifiable ... ok
[INFO] [stdout] test ct::static_ct::tests::test_decompress_tile_corrupt_gzip ... ok
[INFO] [stdout] test ct::static_ct::tests::test_decompress_tile_gzip ... ok
[INFO] [stdout] test ct::static_ct::tests::test_decompress_tile_passthrough ... ok
[INFO] [stdout] test ct::static_ct::tests::test_fingerprint_hex_all_ff ... ok
[INFO] [stdout] test ct::static_ct::tests::test_fingerprint_hex ... ok
[INFO] [stdout] test ct::static_ct::tests::test_encode_tile_path ... ok
[INFO] [stdout] test ct::static_ct::tests::test_full_tile_floor_holds_head_at_last_complete_tile ... ok
[INFO] [stdout] test ct::static_ct::tests::test_fingerprint_hex_zeros ... ok
[INFO] [stdout] test ct::static_ct::tests::test_issuer_cache_insert_and_get ... ok
[INFO] [stdout] test ct::static_ct::tests::test_issuer_cache_overwrite ... ok
[INFO] [stdout] test ct::static_ct::tests::test_issuer_cache_get_missing ... ok
[INFO] [stdout] test ct::static_ct::tests::test_fingerprint_hex_mixed ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_checkpoint ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_checkpoint_empty_string ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_checkpoint_large_tree_size ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_leaf_index_ext_empty ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_checkpoint_zero_tree_size ... ok
[INFO] [stdout] test ct::static_ct::tests::test_issuer_cache_multiple_entries ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_leaf_index_ext_max_40bit ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_checkpoint_origin_mismatch ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_leaf_index_ext_present ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_leaf_index_ext_skip_unknown_then_match ... ok
[INFO] [stdout] test ct::static_ct::tests::test_issuer_cache_negative_entry ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_leaf_index_ext_unknown_only ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_leaf_index_ext_zero ... ok
[INFO] [stdout] test ct::static_ct::tests::test_issuer_cache_new ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_tile_leaves_empty ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_tile_leaves_single_precert ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_tile_leaves_long_chain_recovers_full_count ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_tile_leaves_multiple_entries ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_checkpoint_invalid ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_tile_leaves_single_x509 ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_tile_leaves_truncated ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_tile_leaves_truncated_ext_data_returns_none ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_tile_leaves_x509_no_chain ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_tile_leaves_x509_with_leaf_index ... ok
[INFO] [stdout] test ct::static_ct::tests::test_parse_tile_leaves_precert_no_chain ... ok
[INFO] [stdout] test ct::static_ct::tests::test_read_chain_fingerprints_rejects_non_aligned_length ... ok
[INFO] [stdout] test ct::static_ct::tests::test_tail_start_small_log_floors_at_zero ... ok
[INFO] [stdout] test ct::static_ct::tests::accept_verified_signature ... ok
[INFO] [stdout] test ct::static_ct::tests::test_tile_url_partial ... ok
[INFO] [stdout] test ct::static_ct::tests::verify_checkpoint_signature_bad_base64_unverifiable ... ok
[INFO] [stdout] test ct::static_ct::tests::test_tail_start_seeds_overlap_behind_head ... ok
[INFO] [stdout] test ct::static_ct::tests::test_tile_url_full_256_is_not_partial ... ok
[INFO] [stdout] test ct::static_ct::tests::test_read_u24 ... ok
[INFO] [stdout] test ct::static_ct::tests::test_tile_url_full ... ok
[INFO] [stdout] test ct::static_ct::tests::verify_checkpoint_signature_no_key_unverifiable ... ok
[INFO] [stdout] test ct::static_ct::tests::verify_checkpoint_signature_wrong_key_fails ... ok
[INFO] [stdout] test ct::static_ct::tests::verify_checkpoint_signature_non_p256_key_unverifiable ... ok
[INFO] [stdout] test ct::static_ct::tests::verify_checkpoint_signature_wrong_origin_fails ... ok
[INFO] [stdout] test ct::watcher::tests::test_backoff_increases_exponentially ... ok
[INFO] [stdout] test ct::watcher::tests::test_backoff_caps_at_max ... ok
[INFO] [stdout] test ct::watcher::tests::test_circuit_opens_on_unhealthy ... ok
[INFO] [stdout] test ct::watcher::tests::test_record_failure_transitions_to_degraded ... ok
[INFO] [stdout] test ct::watcher::tests::test_record_failure_transitions_to_unhealthy ... ok
[INFO] [stdout] test ct::watcher::tests::test_record_success_resets_failures ... ok
[INFO] [stdout] test ct::watcher::tests::test_log_health_initial_state ... ok
[INFO] [stdout] test ct::watcher::tests::test_success_recovers_from_degraded ... ok
[INFO] [stdout] test ct::watcher::tests::test_success_resets_backoff ... ok
[INFO] [stdout] test ct::watcher::tests::test_total_errors_accumulate ... ok
[INFO] [stdout] test ct::watcher::tests::test_half_open_recovers_on_success ... ok
[INFO] [stdout] test ct::static_ct::tests::accept_enforce_rejects_failed_signature ... ok
[INFO] [stdout] test ct::watcher::tests::test_unhealthy_threshold_1_degraded_at_1 ... ok
[INFO] [stdout] test ct::static_ct::tests::accept_warn_accepts_failed_signature ... ok
[INFO] [stdout] test dedup::tests::test_cleanup_keeps_fresh_entries ... ok
[INFO] [stdout] test ct::static_ct::tests::test_tile_url_large_index ... ok
[INFO] [stdout] test dedup::tests::test_is_new_capacity_overflow_no_wipe ... ok
[INFO] [stdout] test ct::static_ct::tests::verify_checkpoint_signature_valid ... ok
[INFO] [stdout] test ct::static_ct::tests::verify_checkpoint_signature_tampered_tree_size_fails ... ok
[INFO] [stdout] test dedup::tests::test_is_new_different_keys ... ok
[INFO] [stdout] test dedup::tests::test_is_new_duplicate ... ok
[INFO] [stdout] test dedup::tests::test_cleanup_under_capacity_keeps_full_ttl ... ok
[INFO] [stdout] test dedup::tests::test_zero_key ... ok
[INFO] [stdout] test hot_reload::tests::test_load_empty_yaml_keeps_current ... ok
[INFO] [stdout] test dedup::tests::test_len ... ok
[INFO] [stdout] test dedup::tests::test_is_new_first_seen ... ok
[INFO] [stdout] test hot_reload::tests::test_new_returns_initial_config ... ok
[INFO] [stdout] test hot_reload::tests::test_partial_yaml_only_overrides_specified_sections ... ok
[INFO] [stdout] test middleware::tests::auth_bearer_prefix_stripped ... ok
[INFO] [stdout] test hot_reload::tests::test_load_missing_file ... ok
[INFO] [stdout] test hot_reload::tests::test_update_changes_config ... ok
[INFO] [stdout] test hot_reload::tests::test_load_valid_yaml ... ok
[INFO] [stdout] test middleware::tests::auth_is_enabled_returns_correct_value ... ok
[INFO] [stdout] test middleware::tests::auth_disabled_always_validates ... ok
[INFO] [stdout] test middleware::tests::auth_valid_token_accepted ... ok
[INFO] [stdout] test middleware::tests::auth_none_token_rejected ... ok
[INFO] [stdout] test hot_reload::tests::test_load_invalid_yaml ... ok
[INFO] [stdout] test middleware::tests::limiter_current_connections_tracks_correctly ... ok
[INFO] [stdout] test middleware::tests::limiter_disabled_does_not_track_connections ... ok
[INFO] [stdout] test middleware::tests::limiter_acquire_within_limits ... ok
[INFO] [stdout] test middleware::tests::limiter_per_ip_limit_enforcement ... ok
[INFO] [stdout] test middleware::tests::limiter_disabled_always_allows ... ok
[INFO] [stdout] test ct::catalog::verify::tests::real_google_fixture_verifies_against_embedded_key ... ok
[INFO] [stdout] test middleware::tests::limiter_rejects_at_max_connections ... ok
[INFO] [stdout] test middleware::tests::limiter_release_decrements_and_reallows ... ok
[INFO] [stdout] test models::certificate::tests::test_build_aggregated_all_fields ... ok
[INFO] [stdout] test models::certificate::tests::test_is_false_with_false_value ... ok
[INFO] [stdout] test models::certificate::tests::test_build_aggregated_empty_subject ... ok
[INFO] [stdout] test models::certificate::tests::test_pre_serialize_full_contains_certificate_update ... ok
[INFO] [stdout] test models::certificate::tests::test_is_false_with_true_value ... ok
[INFO] [stdout] test middleware::tests::limiter_release_frees_total_slot ... ok
[INFO] [stdout] test models::certificate::tests::test_pre_serialize_lite_does_not_contain_chain ... ok
[INFO] [stdout] test models::certificate::tests::test_pre_serialize_domains_contains_dns_entries ... ok
[INFO] [stdout] test models::certificate::tests::test_to_domains_only_contains_correct_domains ... ok
[INFO] [stdout] test middleware::tests::auth_invalid_token_rejected ... ok
[INFO] [stdout] test models::certificate::tests::test_pre_serialize_returns_some ... ok
[INFO] [stdout] test models::certificate::tests::test_to_domains_only_message_type ... ok
[INFO] [stdout] test rate_limit::tests::test_check_disabled_always_allowed ... ok
[INFO] [stdout] test rate_limit::tests::test_check_different_ips_independent ... ok
[INFO] [stdout] test rate_limit::tests::test_cleanup_stale_removes_old_entries ... ok
[INFO] [stdout] test rate_limit::tests::test_check_first_request_allowed ... ok
[INFO] [stdout] test rate_limit::tests::test_check_eventually_rejected ... ok
[INFO] [stdout] test state::tests::test_dirty_flag ... ok
[INFO] [stdout] test rate_limit::tests::test_cleanup_stale_keeps_fresh_entries ... ok
[INFO] [stdout] test state::tests::test_new_without_file ... ok
[INFO] [stdout] test state::tests::test_get_tree_size_after_reload ... ok
[INFO] [stdout] test state::tests::test_multiple_logs_state ... ok
[INFO] [stdout] test state::tests::test_new_with_nonexistent_file ... ok
[INFO] [stdout] test state::tests::test_load_corrupt_file ... ok
[INFO] [stdout] test state::tests::test_load_valid_state_file ... ok
[INFO] [stdout] test state::tests::test_save_if_dirty_skips_when_clean ... ok
[INFO] [stdout] test models::certificate::tests::test_build_aggregated_only_cn ... ok
[INFO] [stdout] test state::tests::test_atomic_write_no_partial_file ... ok
[INFO] [stdout] test state::tests::test_update_and_get_index ... ok
[INFO] [stdout] test dedup::tests::test_is_new_atomic_under_contention ... ok
[INFO] [stdout] test websocket::server::tests::lag_counter_disconnects_at_threshold ... ok
[INFO] [stdout] test tests::transport_without_listed_operators_builds_no_client ... ok
[INFO] [stdout] test tests::unmatched_operator_keys_reports_only_misses ... ok
[INFO] [stdout] test websocket::server::tests::broadcast_emits_lagged_when_receiver_falls_behind ... ok
[INFO] [stdout] test websocket::server::tests::lag_policy_disconnect_threshold_is_sane ... ok
[INFO] [stdout] test state::tests::test_save_clears_dirty_flag ... ok
[INFO] [stdout] test state::tests::test_save_and_load_roundtrip ... ok
[INFO] [stdout] test dedup::tests::test_cleanup_removes_expired ... ok
[INFO] [stdout] test ct::static_ct::tests::issuer_fetch_hits_network_at_most_once_per_fingerprint ... ok
[INFO] [stdout] test ct::broadcast_tests::operator_limiter_enforces_min_interval ... ok
[INFO] [stdout] test ct::broadcast_tests::operator_limiter_burst_allows_n_then_throttles ... ok
[INFO] [stdout] test dedup::tests::test_is_new_ttl_expiry ... ok
[INFO] [stdout] test tests::transport_matches_operators_by_canonical_name ... ok
[INFO] [stdout] test dedup::tests::test_cleanup_task_stops_on_cancellation ... ok
[INFO] [stdout] test dedup::tests::test_cleanup_over_capacity_narrows_window ... ok
[INFO] [stdout] test tests::transport_returns_shared_client_for_unlisted_operators ... ok
[INFO] [stdout] test state::tests::test_periodic_save_stops_on_cancel ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 269 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.29s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/parser_smoke.rs (/opt/rustwide/target/debug/build/certstream-server-rust/ef72c729620219bc/out/parser_smoke-ef72c729620219bc)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test random_bytes_return_none_not_panic ... ok
[INFO] [stdout] test empty_input_returns_none ... ok
[INFO] [stdout] test round_trips_a_self_signed_cert ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/parser_snapshot.rs (/opt/rustwide/target/debug/build/certstream-server-rust/90e997734f9ee9d0/out/parser_snapshot-90e997734f9ee9d0)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test regenerate_live_ct_fixtures ... ignored, fetches from live CT logs; refresh corpus by invoking explicitly
[INFO] [stdout] test regenerate_synthetic_fixtures ... ignored, writes fixture files; refresh corpus by invoking explicitly
[INFO] [stdout] test snapshot_synthetic_corpus_matches ... ok
[INFO] [stdout] test parse_extensions_skip_preserves_domains_only_synthetic ... ok
[INFO] [stdout] test snapshot_live_ct_corpus_matches ... ok
[INFO] [stdout] test parse_extensions_skip_preserves_domains_only_live_ct ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/server_e2e.rs (/opt/rustwide/target/debug/build/certstream-server-rust/2b9a9216102c22bf/out/server_e2e-2b9a9216102c22bf)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test server_serves_health_and_metrics ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/server_failure_modes.rs (/opt/rustwide/target/debug/build/certstream-server-rust/1942ad9799d20961/out/server_failure_modes-1942ad9799d20961)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test bad_tls_cert_path_no_panic ... ok
[INFO] [stdout] test garbage_config_no_panic ... ok
[INFO] [stdout] test occupied_port_no_panic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests certstream_server_rust
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "e4099113502f2df0bb69b3e3ea60133d481eddb2b90167f06ec87ddebfb378b1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e4099113502f2df0bb69b3e3ea60133d481eddb2b90167f06ec87ddebfb378b1", kill_on_drop: false }`
[INFO] [stdout] e4099113502f2df0bb69b3e3ea60133d481eddb2b90167f06ec87ddebfb378b1
