[INFO] fetching crate reinhardt-utils 0.4.0-alpha.18...
[INFO] testing reinhardt-utils-0.4.0-alpha.18 against 1.100.0-beta.1 for beta-1.100-2
[INFO] extracting crate reinhardt-utils 0.4.0-alpha.18 into /workspace/builds/worker-7-tc2/source
[INFO] started tweaking crates.io crate reinhardt-utils 0.4.0-alpha.18
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate reinhardt-utils 0.4.0-alpha.18
[INFO] tweaked toml for crates.io crate reinhardt-utils 0.4.0-alpha.18 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate reinhardt-utils 0.4.0-alpha.18 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 reinhardt-utils 0.4.0-alpha.18 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-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:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] c95fea217a6ba62e1695eec439e320fbd3110a2895d0b70c88867ad1a324684b
[INFO] running `Command { std: "docker" "start" "c95fea217a6ba62e1695eec439e320fbd3110a2895d0b70c88867ad1a324684b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c95fea217a6ba62e1695eec439e320fbd3110a2895d0b70c88867ad1a324684b", 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" "c95fea217a6ba62e1695eec439e320fbd3110a2895d0b70c88867ad1a324684b" "/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" "c95fea217a6ba62e1695eec439e320fbd3110a2895d0b70c88867ad1a324684b", 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" "c95fea217a6ba62e1695eec439e320fbd3110a2895d0b70c88867ad1a324684b" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling futures-core v0.3.34
[INFO] [stderr]    Compiling bytes v1.12.1
[INFO] [stderr]    Compiling futures-sink v0.3.34
[INFO] [stderr]    Compiling syn v3.0.6
[INFO] [stderr]    Compiling find-msvc-tools v0.1.14
[INFO] [stderr]    Compiling smallvec v1.16.2
[INFO] [stderr]    Compiling jobserver v0.1.35
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling futures-channel v0.3.34
[INFO] [stderr]    Compiling mio v1.2.3
[INFO] [stderr]    Compiling socket2 v0.6.5
[INFO] [stderr]    Compiling cc v1.5.1
[INFO] [stderr]    Compiling litemap v0.8.3
[INFO] [stderr]    Compiling pkg-config v0.3.34
[INFO] [stderr]    Compiling writeable v0.6.4
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling futures-task v0.3.34
[INFO] [stderr]    Compiling http v1.5.0
[INFO] [stderr]    Compiling icu_properties_data v2.3.0
[INFO] [stderr]    Compiling futures-io v0.3.34
[INFO] [stderr]    Compiling icu_normalizer_data v2.3.0
[INFO] [stderr]    Compiling zeroize v1.9.0
[INFO] [stderr]    Compiling aws-lc-rs v1.18.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling bitflags v2.13.2
[INFO] [stderr]    Compiling getrandom v0.4.3
[INFO] [stderr]    Compiling rustls-pki-types v1.15.1
[INFO] [stderr]    Compiling ipnet v2.12.2
[INFO] [stderr]    Compiling zerocopy v0.8.59
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]    Compiling http-body v1.1.0
[INFO] [stderr]    Compiling rustix v1.1.5
[INFO] [stderr]    Compiling io-lifetimes v2.0.4
[INFO] [stderr]    Compiling rustls v0.23.45
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling anyhow v1.0.104
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling sha1_smol v1.0.1
[INFO] [stderr]    Compiling either v1.18.0
[INFO] [stderr]    Compiling aws-lc-sys v0.45.0
[INFO] [stderr]    Compiling uuid v1.26.1
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]    Compiling multer v3.1.0
[INFO] [stderr]    Compiling aho-corasick v1.1.5
[INFO] [stderr]    Compiling io-extras v0.18.4
[INFO] [stderr]    Compiling synstructure v0.14.0
[INFO] [stderr]    Compiling thiserror v2.0.21
[INFO] [stderr]    Compiling reinhardt-core v0.4.0-alpha.18
[INFO] [stderr]    Compiling regex-automata v0.4.18
[INFO] [stderr]    Compiling rmp v0.8.15
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling spin v0.9.9
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling prost-derive v0.14.4
[INFO] [stderr]    Compiling siphasher v1.0.4
[INFO] [stderr]    Compiling zerofrom-derive v0.1.8
[INFO] [stderr]    Compiling yoke-derive v0.8.3
[INFO] [stderr]    Compiling zerovec-derive v0.11.6
[INFO] [stderr]    Compiling displaydoc v0.2.7
[INFO] [stderr]    Compiling tokio-macros v2.7.2
[INFO] [stderr]    Compiling futures-macro v0.3.34
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling tokio v1.53.1
[INFO] [stderr]    Compiling zerovec v0.11.8
[INFO] [stderr]    Compiling zerotrie v0.2.5
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling futures-util v0.3.34
[INFO] [stderr]    Compiling thiserror-impl v2.0.21
[INFO] [stderr]    Compiling unicase v2.9.0
[INFO] [stderr]    Compiling cap-primitives v3.4.6
[INFO] [stderr]    Compiling tinystr v0.8.4
[INFO] [stderr]    Compiling potential_utf v0.1.6
[INFO] [stderr]    Compiling icu_collections v2.3.0
[INFO] [stderr]    Compiling icu_locale_core v2.3.0
[INFO] [stderr]    Compiling base64 v0.23.1
[INFO] [stderr]    Compiling rustls-native-certs v0.8.4
[INFO] [stderr]    Compiling mime_guess v2.0.5
[INFO] [stderr]    Compiling rand v0.9.5
[INFO] [stderr]    Compiling prost v0.14.4
[INFO] [stderr]    Compiling icu_provider v2.3.1
[INFO] [stderr]    Compiling regex v1.13.1
[INFO] [stderr]    Compiling icu_properties v2.3.0
[INFO] [stderr]    Compiling icu_normalizer v2.3.0
[INFO] [stderr]    Compiling phf_shared v0.12.1
[INFO] [stderr]    Compiling async-trait v0.1.92
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling rustix-linux-procfs v0.1.1
[INFO] [stderr]    Compiling fs-set-times v0.20.3
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling chrono v0.4.45
[INFO] [stderr]    Compiling rmp-serde v1.3.1
[INFO] [stderr]    Compiling outref v0.5.2
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling ambient-authority v0.0.2
[INFO] [stderr]    Compiling chrono-tz v0.10.4
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling vsimd v0.8.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling futures-executor v0.3.34
[INFO] [stderr]    Compiling maybe-owned v0.3.4
[INFO] [stderr]    Compiling cap-std v3.4.6
[INFO] [stderr]    Compiling urlencoding v2.1.3
[INFO] [stderr]    Compiling inventory v0.3.24
[INFO] [stderr]    Compiling typed-arena v2.0.2
[INFO] [stderr]    Compiling futures v0.3.34
[INFO] [stderr]    Compiling base64-simd v0.8.0
[INFO] [stderr]    Compiling bitvec v1.1.1
[INFO] [stderr]    Compiling debugid v0.8.0
[INFO] [stderr]    Compiling tokio-util v0.7.19
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling phf v0.12.1
[INFO] [stderr]    Compiling tower-http v0.6.11
[INFO] [stderr]    Compiling http-body-util v0.1.5
[INFO] [stderr]    Compiling unicode-id-start v1.5.0
[INFO] [stderr]    Compiling data-encoding v2.11.1
[INFO] [stderr]    Compiling if_chain v1.0.3
[INFO] [stderr]    Compiling fastrand v2.5.0
[INFO] [stderr]    Compiling rustc-hash v2.1.3
[INFO] [stderr]    Compiling h2 v0.4.19
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling glob v0.3.4
[INFO] [stderr]    Compiling sourcemap v9.3.2
[INFO] [stderr]    Compiling hyper v1.11.1
[INFO] [stderr]    Compiling hyper-util v0.1.21
[INFO] [stderr]    Compiling reinhardt-http v0.4.0-alpha.18
[INFO] [stderr]    Compiling rustls-webpki v0.103.15
[INFO] [stderr]    Compiling tokio-rustls v0.26.6
[INFO] [stderr]    Compiling rustls-platform-verifier v0.7.1
[INFO] [stderr]    Compiling hyper-rustls v0.27.10
[INFO] [stderr]    Compiling reqwest v0.13.5
[INFO] [stderr]    Compiling reinhardt-utils v0.4.0-alpha.18 (/opt/rustwide/workdir)
[INFO] [stderr] warning: unused dependency `glob`
[INFO] [stderr]   --> Cargo.toml:52:15
[INFO] [stderr]    |
[INFO] [stderr] 52 | [dependencies.glob]
[INFO] [stderr]    |               ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `glob`
[INFO] [stderr] warning: unused dependency `sourcemap`
[INFO] [stderr]    --> Cargo.toml:177:15
[INFO] [stderr]     |
[INFO] [stderr] 177 | [dependencies.sourcemap]
[INFO] [stderr]     |               ^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: consider removing the dependency on `sourcemap`
[INFO] [stderr] warning: unused dependency `walkdir`
[INFO] [stderr]    --> Cargo.toml:206:15
[INFO] [stderr]     |
[INFO] [stderr] 206 | [dependencies.walkdir]
[INFO] [stderr]     |               ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: consider removing the dependency on `walkdir`
[INFO] [stderr] warning: `reinhardt-utils` (manifest) generated 3 warnings
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 59s
[INFO] running `Command { std: "docker" "inspect" "c95fea217a6ba62e1695eec439e320fbd3110a2895d0b70c88867ad1a324684b", 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" "c95fea217a6ba62e1695eec439e320fbd3110a2895d0b70c88867ad1a324684b" "/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 serde_core v1.0.229
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling getrandom v0.4.3
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling rustls v0.23.45
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling memchr v2.8.3
[INFO] [stderr]    Compiling tokio v1.53.1
[INFO] [stderr]    Compiling axum-core v0.5.6
[INFO] [stderr]    Compiling aho-corasick v1.1.5
[INFO] [stderr]    Compiling num-integer v0.1.47
[INFO] [stderr]    Compiling darling_core v0.24.1
[INFO] [stderr]    Compiling ureq-proto v0.6.4
[INFO] [stderr]    Compiling bollard-buildkit-proto v0.7.0
[INFO] [stderr]    Compiling regex-automata v0.4.18
[INFO] [stderr]    Compiling portable-atomic v1.15.0
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling utf8-zero v0.8.1
[INFO] [stderr]    Compiling deranged v0.5.8
[INFO] [stderr]    Compiling uuid v1.26.1
[INFO] [stderr]    Compiling regex v1.13.1
[INFO] [stderr]    Compiling num-bigint v0.4.8
[INFO] [stderr]    Compiling cpufeatures v0.3.1
[INFO] [stderr]    Compiling chrono v0.4.45
[INFO] [stderr]    Compiling darling_macro v0.24.1
[INFO] [stderr]    Compiling rustls-webpki v0.103.15
[INFO] [stderr]    Compiling darling v0.24.1
[INFO] [stderr]    Compiling tokio-util v0.7.19
[INFO] [stderr]    Compiling tokio-stream v0.1.19
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling prost-derive v0.14.4
[INFO] [stderr]    Compiling pin-project-internal v1.1.13
[INFO] [stderr]    Compiling structmeta-derive v0.3.0
[INFO] [stderr]    Compiling async-stream-impl v0.3.6
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling structmeta v0.3.0
[INFO] [stderr]    Compiling chacha20 v0.10.2
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling pin-project v1.1.13
[INFO] [stderr]    Compiling num-iter v0.1.46
[INFO] [stderr]    Compiling h2 v0.4.19
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling rmp v0.8.15
[INFO] [stderr]    Compiling prost v0.14.4
[INFO] [stderr]    Compiling serde_repr v0.1.21
[INFO] [stderr]    Compiling toml_edit v0.25.15+spec-1.1.0
[INFO] [stderr]    Compiling rmp-serde v1.3.1
[INFO] [stderr]    Compiling prost-types v0.14.4
[INFO] [stderr]    Compiling num v0.4.3
[INFO] [stderr]    Compiling rstest_macros v0.26.1
[INFO] [stderr]    Compiling rand v0.10.3
[INFO] [stderr]    Compiling parse-display-derive v0.9.1
[INFO] [stderr]    Compiling axum v0.8.9
[INFO] [stderr]    Compiling async-stream v0.3.6
[INFO] [stderr]    Compiling serde_with_macros v3.24.0
[INFO] [stderr]    Compiling xattr v1.6.1
[INFO] [stderr]    Compiling either v1.18.0
[INFO] [stderr]    Compiling astral-tokio-tar v0.6.4
[INFO] [stderr]    Compiling serde_with v3.24.0
[INFO] [stderr]    Compiling tokio-rustls v0.26.6
[INFO] [stderr]    Compiling ureq v3.4.2
[INFO] [stderr]    Compiling parse-display v0.9.1
[INFO] [stderr]    Compiling rustls-platform-verifier v0.7.1
[INFO] [stderr]    Compiling hyper v1.11.1
[INFO] [stderr]    Compiling ferroid v2.0.0
[INFO] [stderr]    Compiling proc-macro-crate v3.5.0
[INFO] [stderr]    Compiling tower-http v0.6.11
[INFO] [stderr]    Compiling debugid v0.8.0
[INFO] [stderr]    Compiling docker_credential v1.4.0
[INFO] [stderr]    Compiling toml_datetime v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling serde_spanned v1.1.1
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling etcetera v0.11.0
[INFO] [stderr]    Compiling hyper-util v0.1.21
[INFO] [stderr]    Compiling reinhardt-core v0.4.0-alpha.18
[INFO] [stderr]    Compiling bit-vec v0.8.0
[INFO] [stderr]    Compiling deadpool-runtime v0.1.4
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling sourcemap v9.3.2
[INFO] [stderr]    Compiling bit-set v0.8.0
[INFO] [stderr]    Compiling rusty-fork v0.3.1
[INFO] [stderr]    Compiling deadpool v0.12.3
[INFO] [stderr]    Compiling chrono-tz v0.10.4
[INFO] [stderr]    Compiling serial_test_derive v3.5.0
[INFO] [stderr]    Compiling hyper-timeout v0.5.2
[INFO] [stderr]    Compiling tonic v0.14.6
[INFO] [stderr]    Compiling hyper-rustls v0.27.10
[INFO] [stderr]    Compiling hyperlocal v0.9.1
[INFO] [stderr]    Compiling reqwest v0.13.5
[INFO] [stderr]    Compiling reinhardt-http v0.4.0-alpha.18
[INFO] [stderr]    Compiling assert-json-diff v2.0.2
[INFO] [stderr]    Compiling rand_xorshift v0.4.0
[INFO] [stderr]    Compiling console v0.16.6
[INFO] [stderr]    Compiling unarray v0.1.4
[INFO] [stderr]    Compiling proptest v1.11.0
[INFO] [stderr]    Compiling insta v1.48.0
[INFO] [stderr]    Compiling tonic-prost v0.14.6
[INFO] [stderr]    Compiling wiremock v0.6.5
[INFO] [stderr]    Compiling rstest v0.26.1
[INFO] [stderr]    Compiling serial_test v3.5.0
[INFO] [stderr]    Compiling tokio-test v0.4.6
[INFO] [stderr]    Compiling bollard-stubs v1.52.1-rc.29.1.3
[INFO] [stderr]    Compiling reinhardt-utils v0.4.0-alpha.18 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling bollard v0.20.2
[INFO] [stderr]    Compiling testcontainers v0.27.3
[INFO] [stderr]    Compiling testcontainers-modules v0.15.0
[INFO] [stderr] warning: unused dependency `glob`
[INFO] [stderr]   --> Cargo.toml:52:15
[INFO] [stderr]    |
[INFO] [stderr] 52 | [dependencies.glob]
[INFO] [stderr]    |               ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `glob`
[INFO] [stderr] warning: unused dependency `sourcemap`
[INFO] [stderr]    --> Cargo.toml:177:15
[INFO] [stderr]     |
[INFO] [stderr] 177 | [dependencies.sourcemap]
[INFO] [stderr]     |               ^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: consider removing the dependency on `sourcemap`
[INFO] [stderr] warning: unused dependency `walkdir`
[INFO] [stderr]    --> Cargo.toml:206:15
[INFO] [stderr]     |
[INFO] [stderr] 206 | [dependencies.walkdir]
[INFO] [stderr]     |               ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: consider removing the dependency on `walkdir`
[INFO] [stderr] warning: `reinhardt-utils` (manifest) generated 3 warnings
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 3m 22s
[INFO] running `Command { std: "docker" "inspect" "c95fea217a6ba62e1695eec439e320fbd3110a2895d0b70c88867ad1a324684b", 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" "c95fea217a6ba62e1695eec439e320fbd3110a2895d0b70c88867ad1a324684b" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: unused dependency `glob`
[INFO] [stderr]   --> Cargo.toml:52:15
[INFO] [stderr]    |
[INFO] [stderr] 52 | [dependencies.glob]
[INFO] [stderr]    |               ^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `glob`
[INFO] [stderr] warning: unused dependency `sourcemap`
[INFO] [stderr]    --> Cargo.toml:177:15
[INFO] [stderr]     |
[INFO] [stderr] 177 | [dependencies.sourcemap]
[INFO] [stderr]     |               ^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: consider removing the dependency on `sourcemap`
[INFO] [stderr] warning: unused dependency `walkdir`
[INFO] [stderr]    --> Cargo.toml:206:15
[INFO] [stderr]     |
[INFO] [stderr] 206 | [dependencies.walkdir]
[INFO] [stderr]     |               ^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr] help: consider removing the dependency on `walkdir`
[INFO] [stderr] warning: `reinhardt-utils` (manifest) generated 3 warnings
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.79s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/build/reinhardt-utils/7029bf0aefc84fde/out/reinhardt_utils-7029bf0aefc84fde)
[INFO] [stdout] 
[INFO] [stdout] running 609 tests
[INFO] [stdout] test cache::hybrid::tests::test_hybrid_cache_delete_both ... ok
[INFO] [stdout] test cache::hybrid::tests::test_hybrid_cache_decr ... ok
[INFO] [stdout] test cache::hybrid::tests::test_hybrid_cache_delete_many ... ok
[INFO] [stdout] test cache::hybrid::tests::test_hybrid_cache_get_many_l1_hit ... ok
[INFO] [stdout] test cache::hybrid::tests::test_hybrid_cache_get_many_l2_promotion ... ok
[INFO] [stdout] test cache::hybrid::tests::test_hybrid_cache_has_key ... ok
[INFO] [stdout] test cache::hybrid::tests::test_hybrid_cache_clear_both ... ok
[INFO] [stdout] test cache::hybrid::tests::test_hybrid_cache_incr ... ok
[INFO] [stdout] test cache::hybrid::tests::test_hybrid_cache_l1_hit ... ok
[INFO] [stdout] test cache::hybrid::tests::test_hybrid_cache_l1_l2_access ... ok
[INFO] [stdout] test cache::file_backend::tests::test_file_cache_persistence ... ok
[INFO] [stdout] test cache::file_backend::tests::test_file_cache_basic ... ok
[INFO] [stdout] test cache::hybrid::tests::test_hybrid_cache_write_through ... ok
[INFO] [stdout] test cache::hybrid::tests::test_hybrid_cache_set_many ... ok
[INFO] [stdout] test cache::in_memory::tests::test_cache_statistics_basic ... ok
[INFO] [stdout] test cache::hybrid::tests::test_hybrid_cache_l2_hit_promotion ... ok
[INFO] [stdout] test cache::hybrid::tests::test_hybrid_cache_miss ... ok
[INFO] [stdout] test cache::file_backend::tests::test_file_cache_clear ... ok
[INFO] [stdout] test cache::in_memory::tests::test_cache_statistics_hit_miss_rate ... ok
[INFO] [stdout] test cache::in_memory::tests::test_cache_statistics_memory_usage ... ok
[INFO] [stdout] test cache::in_memory::tests::test_in_memory_cache_basic ... ok
[INFO] [stdout] test cache::in_memory::tests::test_in_memory_cache_clear ... ok
[INFO] [stdout] test cache::in_memory::tests::test_in_memory_cache_many ... ok
[INFO] [stdout] test cache::in_memory::tests::test_in_memory_cache_incr_decr ... ok
[INFO] [stdout] test cache::in_memory::tests::test_inspect_entry_basic ... ok
[INFO] [stdout] test cache::in_memory::tests::test_cache_statistics_expired_counts_as_miss ... ok
[INFO] [stdout] test cache::in_memory::tests::test_inspect_entry_size ... ok
[INFO] [stdout] test cache::in_memory::tests::test_inspect_entry_with_ttl ... ok
[INFO] [stdout] test cache::in_memory::tests::test_inspect_entry_expired ... ok
[INFO] [stdout] test cache::in_memory::tests::test_layered_cache_basic ... ok
[INFO] [stdout] test cache::in_memory::tests::test_layered_cache_statistics ... ok
[INFO] [stdout] test cache::in_memory::tests::test_auto_cleanup_preserves_non_expired ... ok
[INFO] [stdout] test cache::in_memory::tests::test_layered_inspect_entry ... ok
[INFO] [stdout] test cache::file_backend::tests::test_file_cache_cleanup_expired ... ok
[INFO] [stdout] test cache::in_memory::tests::test_cache_cleanup_expired ... ok
[INFO] [stdout] test cache::in_memory::tests::test_layered_list_keys ... ok
[INFO] [stdout] test cache::in_memory::tests::test_custom_layered_cleanup ... ok
[INFO] [stdout] test cache::file_backend::tests::test_file_cache_ttl ... ok
[INFO] [stdout] test cache::in_memory::tests::test_in_memory_cache_ttl ... ok
[INFO] [stdout] test cache::in_memory::tests::test_list_keys ... ok
[INFO] [stdout] test cache::in_memory::tests::test_list_keys_includes_expired ... ok
[INFO] [stdout] test cache::key_builder::tests::test_cache_key_builder ... ok
[INFO] [stdout] test cache::in_memory::tests::test_layered_cleanup_expired ... ok
[INFO] [stdout] test cache::in_memory::tests::test_layered_cache_ttl ... ok
[INFO] [stdout] test cache::layered::tests::test_basic_operations ... ok
[INFO] [stdout] test cache::in_memory::tests::test_layered_large_dataset ... ok
[INFO] [stdout] test cache::layered::tests::test_keys_listing ... ok
[INFO] [stdout] test cache::in_memory::tests::test_with_auto_cleanup ... ok
[INFO] [stdout] test cache::in_memory::tests::test_start_auto_cleanup_replaces_previous ... ok
[INFO] [stdout] test cache::in_memory::tests::test_start_auto_cleanup ... ok
[INFO] [stdout] test cache::layered::tests::test_active_sampling_basic ... ok
[INFO] [stdout] test cache::statistics::tests::test_statistics_hit_miss_rate_zero_requests ... ok
[INFO] [stdout] test cache::tags::tests::test_tagged_cache_basic ... ok
[INFO] [stdout] test cache::layered::tests::test_active_sampling_threshold ... ok
[INFO] [stdout] test cache::tags::tests::test_tagged_cache_delete ... ok
[INFO] [stdout] test cache::tags::tests::test_tagged_cache_get_keys_for_tag ... ok
[INFO] [stdout] test cache::tags::tests::test_tagged_cache_invalidate_tag ... ok
[INFO] [stdout] test cache::tags::tests::test_tagged_cache_invalidate_multiple_tags ... ok
[INFO] [stdout] test cache::tags::tests::test_tagged_cache_overlapping_tags ... ok
[INFO] [stdout] test cache::warming::tests::test_basic_warmer ... ok
[INFO] [stdout] test cache::warming::tests::test_function_warmer ... ok
[INFO] [stdout] test cache::warming::tests::test_parallel_warmer ... ok
[INFO] [stdout] test logging::params::tests::test_byte_index_at_char_with_ascii ... ok
[INFO] [stdout] test logging::params::tests::test_byte_index_at_char_with_multibyte ... ok
[INFO] [stdout] test logging::params::tests::test_repr_array_with_multibyte_utf8_does_not_panic ... ok
[INFO] [stdout] test cache::warming::tests::test_batch_warmer ... ok
[INFO] [stdout] test cache::layered::tests::test_combined_cleanup ... ok
[INFO] [stdout] test logging::params::tests::test_repr_object_with_multibyte_utf8_does_not_panic ... ok
[INFO] [stdout] test logging::params::tests::test_repr_object_huge_with_multibyte_utf8_does_not_panic ... ok
[INFO] [stdout] test logging::params::tests::test_repr_params_large_list_of_dict ... ok
[INFO] [stdout] test logging::params::tests::test_repr_params_named_dict ... ok
[INFO] [stdout] test logging::params::tests::test_repr_params_ismulti_named_dict ... ok
[INFO] [stdout] test logging::params::tests::test_repr_params_huge_named_dict ... ok
[INFO] [stdout] test cache::layered::tests::test_passive_expiration ... ok
[INFO] [stdout] test logging::params::tests::test_truncate_param ... ok
[INFO] [stdout] test logging::params::tests::test_truncate_param_multibyte_produces_valid_utf8_regression::case_1 ... ok
[INFO] [stdout] test logging::params::tests::test_truncate_param_multibyte_produces_valid_utf8_regression::case_2 ... ok
[INFO] [stdout] test logging::params::tests::test_truncate_param_multibyte_produces_valid_utf8_regression::case_3 ... ok
[INFO] [stdout] test logging::params::tests::test_repr_params_positional_array ... ok
[INFO] [stdout] test logging::params::tests::test_repr_params_unknown_list ... ok
[INFO] [stdout] test logging::params::tests::test_truncate_param_ascii_then_multibyte_split_regression ... ok
[INFO] [stdout] test logging::params::tests::test_truncate_param_multibyte_produces_valid_utf8_regression::case_4 ... ok
[INFO] [stdout] test logging::params::tests::test_truncate_param_small ... ok
[INFO] [stdout] test logging::params::tests::test_truncate_param_with_multibyte_utf8_does_not_panic ... ok
[INFO] [stdout] test logging::security::tests::test_auth_event_failure_logged_at_warning ... ok
[INFO] [stdout] test logging::security::tests::test_rate_limit_logged_at_warning ... ok
[INFO] [stdout] test logging::params::tests::test_truncate_param_with_mixed_ascii_and_multibyte ... ok
[INFO] [stdout] test logging::security::tests::test_security_error_display ... ok
[INFO] [stdout] test logging::security::tests::test_auth_event_success_logged_at_info ... ok
[INFO] [stdout] test staticfiles::caching::tests::test_cache_policy_long_term ... ok
[INFO] [stdout] test staticfiles::caching::tests::test_cache_policy_no_cache ... ok
[INFO] [stdout] test staticfiles::caching::tests::test_cache_policy_short_term ... ok
[INFO] [stdout] test logging::security::tests::test_csrf_violation_logged_at_error ... ok
[INFO] [stdout] test staticfiles::caching::tests::test_css_file_gets_long_term_cache ... ok
[INFO] [stdout] test staticfiles::caching::tests::test_disabled_middleware ... ok
[INFO] [stdout] test staticfiles::caching::tests::test_html_file_gets_short_term_cache ... ok
[INFO] [stdout] test staticfiles::caching::tests::test_font_files_get_long_term_cache ... ok
[INFO] [stdout] test staticfiles::caching::tests::test_image_files_get_long_term_cache ... ok
[INFO] [stdout] test staticfiles::caching::tests::test_multiple_directives ... ok
[INFO] [stdout] test cache::layered::tests::test_ttl_index_partial_cleanup ... ok
[INFO] [stdout] test staticfiles::caching::tests::test_js_file_gets_long_term_cache ... ok
[INFO] [stdout] test staticfiles::caching::tests::test_s_maxage ... ok
[INFO] [stdout] test staticfiles::caching::tests::test_unknown_extension_gets_default_policy ... ok
[INFO] [stdout] test staticfiles::caching::tests::test_non_success_response_not_cached ... ok
[INFO] [stdout] test staticfiles::caching::tests::test_vary_header ... ok
[INFO] [stdout] test staticfiles::cdn::tests::test_cdn_config_creation ... ok
[INFO] [stdout] test staticfiles::caching::tests::test_wasm_file_gets_long_term_cache ... ok
[INFO] [stdout] test staticfiles::cdn::tests::test_add_paths_to_invalidation_request ... ok
[INFO] [stdout] test staticfiles::cdn::tests::test_cdn_url_generation_without_https ... ok
[INFO] [stdout] test staticfiles::cdn::tests::test_custom_headers ... ok
[INFO] [stdout] test staticfiles::cdn::tests::test_custom_provider ... ok
[INFO] [stdout] test staticfiles::cdn::tests::test_disabled_cdn_returns_original_path ... ok
[INFO] [stdout] test staticfiles::cdn::tests::test_invalidation_request_creation ... ok
[INFO] [stdout] test staticfiles::cdn::tests::test_invalidation_request_with_caller_reference ... ok
[INFO] [stdout] test staticfiles::cdn::tests::test_multiple_urls_generation ... ok
[INFO] [stdout] test staticfiles::cdn::tests::test_purge_endpoints ... ok
[INFO] [stdout] test staticfiles::cdn::tests::test_purge_helper_creates_request ... ok
[INFO] [stdout] test staticfiles::cdn::tests::test_versioned_url_generation ... ok
[INFO] [stdout] test staticfiles::cdn::tests::test_cdn_url_generation ... ok
[INFO] [stdout] test staticfiles::cdn::tests::test_wildcard_invalidation ... ok
[INFO] [stdout] test staticfiles::cdn::tests::test_cdn_url_generation_with_prefix ... ok
[INFO] [stdout] test staticfiles::checks::tests::test_check_static_root_in_staticfiles_dirs ... ok
[INFO] [stdout] test staticfiles::checks::tests::test_check_static_url_empty ... ok
[INFO] [stdout] test staticfiles::checks::tests::test_check_static_root_subdirectory ... ok
[INFO] [stdout] test staticfiles::checks::tests::test_check_static_url_no_trailing_slash ... ok
[INFO] [stdout] test staticfiles::checks::tests::test_check_static_root_not_set ... ok
[INFO] [stdout] test staticfiles::checks::tests::test_check_static_url_no_leading_slash ... ok
[INFO] [stdout] test staticfiles::caching::tests::test_custom_type_policy ... ok
[INFO] [stdout] test staticfiles::checks::tests::test_check_staticfiles_dirs_not_exist ... ok
[INFO] [stdout] test staticfiles::caching::tests::test_default_config_includes_wasm ... ok
[INFO] [stdout] test staticfiles::checks::tests::test_media_url_no_leading_slash ... ok
[INFO] [stdout] test staticfiles::checks::tests::test_media_url_prefix_conflict ... ok
[INFO] [stdout] test staticfiles::checks::tests::test_media_url_no_trailing_slash ... ok
[INFO] [stdout] test staticfiles::checks::tests::test_check_staticfiles_dirs_empty ... ok
[INFO] [stdout] test staticfiles::checks::tests::test_media_url_none ... ok
[INFO] [stdout] test staticfiles::checks::tests::test_media_url_same_as_static_url ... ok
[INFO] [stdout] test staticfiles::checks::tests::test_media_url_valid ... ok
[INFO] [stdout] test staticfiles::dependency_resolver::tests::test_add_file ... ok
[INFO] [stdout] test staticfiles::dependency_resolver::tests::test_default ... ok
[INFO] [stdout] test staticfiles::dependency_resolver::tests::test_new_graph ... ok
[INFO] [stdout] test staticfiles::dependency_resolver::tests::test_resolve_order_multiple_roots ... ok
[INFO] [stdout] test staticfiles::dependency_resolver::tests::test_resolve_order_no_dependencies ... ok
[INFO] [stdout] test staticfiles::dependency_resolver::tests::test_resolve_order_with_dependencies ... ok
[INFO] [stdout] test staticfiles::checks::tests::test_check_staticfiles_dirs_duplicate ... ok
[INFO] [stdout] test staticfiles::dependency_resolver::tests::test_resolve_order_chain ... ok
[INFO] [stdout] test staticfiles::media::tests::test_add_js ... ok
[INFO] [stdout] test staticfiles::media::tests::test_get_js_files ... ok
[INFO] [stdout] test staticfiles::media::tests::test_get_css_files ... ok
[INFO] [stdout] test staticfiles::media::tests::test_has_media_trait ... ok
[INFO] [stdout] test staticfiles::media::tests::test_merge_avoids_duplicates ... ok
[INFO] [stdout] test staticfiles::media::tests::test_merge_media ... ok
[INFO] [stdout] test staticfiles::media::tests::test_render_css ... ok
[INFO] [stdout] test staticfiles::media::tests::test_render_js ... ok
[INFO] [stdout] test staticfiles::checks::tests::test_valid_configuration ... ok
[INFO] [stdout] test staticfiles::dependency_resolver::tests::test_add_dependency ... ok
[INFO] [stdout] test staticfiles::media::tests::test_add_css ... ok
[INFO] [stdout] test staticfiles::media::tests::test_render_css_escapes_xss_in_paths ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_auto_inject_wasm_default_true ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_builder ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_cache_long_term_extensions::case_1 ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_cache_long_term_extensions::case_2 ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_cache_long_term_extensions::case_3 ... ok
[INFO] [stdout] test staticfiles::media::tests::test_render_js_escapes_xss_in_paths ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_auto_inject_wasm_builder ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_cache_long_term_extensions::case_4 ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_cache_short_term_extensions::case_1 ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_cache_short_term_extensions::case_2 ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_default_has_cache_config ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_custom_cache_config ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_defaults ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_index_file_absolute_path_preserved ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_backward_compat_custom_index_files ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_index_file_default_is_none ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_index_file_builder_sets_path ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_index_file_with_spa_mode_false ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_wasm_entry_allows_path_separators ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_wasm_entry_builder ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_backward_compat_no_index_file_uses_root_dir ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_wasm_entry_default_none ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_wasm_manifest_default_none ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_wasm_manifest_builder ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_detect_wasm_entry_fallback_missing_file ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_detect_wasm_entry_disabled ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_detect_wasm_entry_fallback_with_path_separator ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_detect_wasm_entry_ignores_non_wasm_js_files ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_detect_wasm_entry_multiple_pairs_falls_back_to_wasm_entry ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_detect_wasm_entry_no_pair ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_etag_consistent_between_serve_direct_and_try_serve ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_etag_matches_static_file_handler_format ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_excluded_prefix_matches_segment_boundary ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_detect_wasm_entry_single_pair ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_inject_trusted_html_fragment_appends_without_body ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_inject_trusted_html_fragment_before_body ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_get_file_path ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_inject_wasm_script_before_body ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_inject_trusted_html_fragment_unicode_before_uppercase_body ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_inject_wasm_script_no_body_tag_appends ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_inject_wasm_script_unicode_before_uppercase_body ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_inject_wasm_script_with_manifest ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_inject_wasm_script_with_url_prefix ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_is_extension_allowed_empty ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_is_extension_allowed_restricted ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_manifest_alias_uses_revalidating_cache_policy ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_matches_prefix ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_matches_prefix_root ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_normalize_prefix_match_path::case_1 ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_normalize_prefix_match_path::case_2 ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_normalize_prefix_match_path::case_3 ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_inject_wasm_script_case_insensitive_body ... ok
[INFO] [stdout] test cache::in_memory::tests::test_stop_auto_cleanup ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_passthrough_prefix_empty_means_no_bypass ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_passthrough_prefix_falls_through_to_next_handler ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_normalize_prefix_match_path::case_4 ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_passthrough_prefix_does_not_affect_non_matching_path ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_passthrough_prefix_trailing_dot_variants_fall_through::case_1 ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_passthrough_prefix_normalized_variants_fall_through::case_2 ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_passthrough_prefix_trailing_dot_variants_fall_through::case_2 ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_passthrough_prefix_normalized_variants_fall_through::case_1 ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_resolve_wasm_url_no_manifest ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_resolve_wasm_url_rejects_unsafe_manifest_values ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_resolve_wasm_url_with_manifest_match ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_resolve_wasm_url_with_manifest_no_match ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_serve_direct_file_cache_disabled_no_cache_header ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_serve_direct_file_existing_html ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_serve_direct_file_nonexistent_returns_none ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_serve_direct_file_request_path_independent ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_serve_spa_fallback_auto_injects_wasm ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_serve_spa_fallback_etag_reflects_injected_content ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_serve_spa_fallback_invalid_utf8_serves_raw ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_serve_spa_fallback_no_inject_when_disabled ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_serve_spa_fallback_no_inject_when_spa_mode_false ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_serve_spa_fallback_preserves_content_type_and_cache_headers ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_serve_spa_fallback_resolves_static_url_templates ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_serve_spa_fallback_with_index_file_serves_direct_path ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_serve_spa_fallback_without_index_file_searches_root_dir ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_try_serve_directory_index_auto_injects_wasm ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_try_serve_directory_index_auto_injects_wasm_without_spa_mode ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_try_serve_wasm_with_disabled_cache_omits_cache_control ... ok
[INFO] [stdout] test staticfiles::path_resolver::tests::test_absolute_path_unchanged ... ok
[INFO] [stdout] test staticfiles::path_resolver::tests::test_relative_path_resolution ... ok
[INFO] [stdout] test staticfiles::processing::bundle::tests::test_bundle_config_add_file ... ok
[INFO] [stdout] test staticfiles::processing::bundle::tests::test_bundle_config_builder ... ok
[INFO] [stdout] test staticfiles::processing::bundle::tests::test_bundle_config_creation ... ok
[INFO] [stdout] test staticfiles::processing::bundle::tests::test_bundler_add_file ... ok
[INFO] [stdout] test staticfiles::processing::bundle::tests::test_bundler_bundle_files_custom_order ... ok
[INFO] [stdout] test staticfiles::processing::bundle::tests::test_bundler_creation ... ok
[INFO] [stdout] test staticfiles::processing::bundle::tests::test_bundler_empty_bundle ... ok
[INFO] [stdout] test staticfiles::processing::bundle::tests::test_bundler_includes_separators ... ok
[INFO] [stdout] test staticfiles::processing::bundle::tests::test_bundler_multiple_files ... ok
[INFO] [stdout] test staticfiles::processing::bundle::tests::test_bundler_simple_bundle ... ok
[INFO] [stdout] test staticfiles::processing::bundle::tests::test_bundler_with_dependencies ... ok
[INFO] [stdout] test staticfiles::processing::minify::tests::test_css_minifier_basic ... ok
[INFO] [stdout] test staticfiles::processing::minify::tests::test_css_minifier_can_process ... ok
[INFO] [stdout] test staticfiles::processing::minify::tests::test_css_minifier_level_0 ... ok
[INFO] [stdout] test staticfiles::processing::minify::tests::test_css_minifier_removes_comments ... ok
[INFO] [stdout] test staticfiles::processing::minify::tests::test_css_minifier_removes_whitespace ... ok
[INFO] [stdout] test staticfiles::processing::minify::tests::test_js_minifier_basic ... ok
[INFO] [stdout] test staticfiles::processing::minify::tests::test_js_minifier_can_process ... ok
[INFO] [stdout] test staticfiles::processing::minify::tests::test_js_minifier_preserves_newlines ... ok
[INFO] [stdout] test staticfiles::processing::minify::tests::test_js_minifier_preserves_strings ... ok
[INFO] [stdout] test staticfiles::processing::minify::tests::test_js_minifier_removes_multi_line_comments ... ok
[INFO] [stdout] test staticfiles::processing::minify::tests::test_js_minifier_removes_single_line_comments ... ok
[INFO] [stdout] test staticfiles::processing::tests::test_image_quality_clamping ... ok
[INFO] [stdout] test staticfiles::processing::tests::test_pipeline_creation ... ok
[INFO] [stdout] test staticfiles::processing::tests::test_pipeline_process_empty ... ok
[INFO] [stdout] test staticfiles::processing::tests::test_processing_config_builder ... ok
[INFO] [stdout] test staticfiles::processing::tests::test_processing_config_default ... ok
[INFO] [stdout] test staticfiles::storage::registry::tests::test_clear_registry ... ok
[INFO] [stdout] test staticfiles::storage::registry::tests::test_get_nonexistent_backend ... ok
[INFO] [stdout] test staticfiles::storage::registry::tests::test_get_storage_backend ... ok
[INFO] [stdout] test staticfiles::storage::registry::tests::test_list_storage_backends ... ok
[INFO] [stdout] test staticfiles::storage::registry::tests::test_multiple_gets_create_different_instances ... ok
[INFO] [stdout] test staticfiles::storage::registry::tests::test_register_duplicate_fails ... ok
[INFO] [stdout] test staticfiles::storage::registry::tests::test_register_storage_backend ... ok
[INFO] [stdout] test staticfiles::storage::registry::tests::test_registry_creation ... ok
[INFO] [stdout] test staticfiles::storage::registry::tests::test_unregister_nonexistent_fails ... ok
[INFO] [stdout] test staticfiles::storage::registry::tests::test_unregister_storage_backend ... ok
[INFO] [stdout] test staticfiles::template_integration::tests::test_from_storage ... ok
[INFO] [stdout] test staticfiles::template_integration::tests::test_from_storage_with_legacy_files_key ... ok
[INFO] [stdout] test staticfiles::template_integration::tests::test_from_storage_with_version_and_paths ... ok
[INFO] [stdout] test staticfiles::template_integration::tests::test_resolve_url_basic ... ok
[INFO] [stdout] test staticfiles::template_integration::tests::test_resolve_url_cdn_url ... ok
[INFO] [stdout] test staticfiles::template_integration::tests::test_resolve_url_different_base_urls ... ok
[INFO] [stdout] test staticfiles::template_integration::tests::test_resolve_url_empty_path ... ok
[INFO] [stdout] test staticfiles::template_integration::tests::test_resolve_url_manifest_fallback ... ok
[INFO] [stdout] test staticfiles::template_integration::tests::test_resolve_url_manifest_with_query_string ... ok
[INFO] [stdout] test staticfiles::template_integration::tests::test_resolve_url_with_fragment ... ok
[INFO] [stdout] test staticfiles::template_integration::tests::test_resolve_url_with_leading_slash ... ok
[INFO] [stdout] test staticfiles::template_integration::tests::test_resolve_url_with_manifest ... ok
[INFO] [stdout] test staticfiles::template_integration::tests::test_resolve_url_with_query_and_fragment ... ok
[INFO] [stdout] test staticfiles::template_integration::tests::test_resolve_url_with_query_string ... ok
[INFO] [stdout] test staticfiles::template_integration::tests::test_template_static_config_from_static_files_config ... ok
[INFO] [stdout] test staticfiles::template_integration::tests::test_template_static_config_new ... ok
[INFO] [stdout] test staticfiles::template_integration::tests::test_template_static_config_with_manifest ... ok
[INFO] [stdout] test staticfiles::vendor::asset::tests::validate_target_accepts_well_formed::case_1_valid_simple ... ok
[INFO] [stdout] test staticfiles::vendor::asset::tests::validate_target_accepts_well_formed::case_2_valid_nested ... ok
[INFO] [stdout] test staticfiles::vendor::asset::tests::validate_target_rejects_bad::case_1_missing_prefix ... ok
[INFO] [stdout] test staticfiles::vendor::asset::tests::validate_target_rejects_bad::case_2_parent_traversal ... ok
[INFO] [stdout] test staticfiles::vendor::asset::tests::validate_target_rejects_bad::case_3_absolute_unix ... ok
[INFO] [stdout] test staticfiles::vendor::asset::tests::validate_target_rejects_bad::case_4_null_byte ... ok
[INFO] [stdout] test staticfiles::vendor::asset::tests::validate_target_rejects_bad::case_5_empty ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_wasm_entry_rejects_empty_string - should panic ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_wasm_entry_rejects_unsafe_chars - should panic ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_config_wasm_entry_rejects_path_traversal - should panic ... ok
[INFO] [stdout] test staticfiles::vendor::downloader::tests::verify_integrity_fails_when_sha_differs ... ok
[INFO] [stdout] test staticfiles::vendor::downloader::tests::verify_integrity_skips_when_expected_empty ... ok
[INFO] [stdout] test staticfiles::vendor::registry::tests::all_registered_assets_includes_synthetic_entry ... ok
[INFO] [stdout] test staticfiles::vendor::registry::tests::registered_assets_for_app_returns_empty_for_unknown_label ... ok
[INFO] [stdout] test staticfiles::vendor::registry::tests::registered_assets_for_app_returns_only_matching_label ... ok
[INFO] [stdout] test staticfiles::vendor::downloader::tests::verify_integrity_errors_on_missing_file ... ok
[INFO] [stdout] test staticfiles::vendor::downloader::tests::verify_integrity_passes_when_sha_matches ... ok
[INFO] [stdout] test storage::local::tests::storage_rejects_broken_symlink_writes_outside_the_base_directory ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_passthrough_prefixes_reject_relative_prefixes::case_1 - should panic ... ok
[INFO] [stdout] test staticfiles::middleware::tests::test_passthrough_prefixes_reject_relative_prefixes::case_2 - should panic ... ok
[INFO] [stdout] test storage::local::tests::test_base_url ... ok
[INFO] [stdout] test cache::layered::tests::test_layered_vs_naive_performance ... ok
[INFO] [stdout] test storage::local::tests::storage_reuses_the_initialized_root_after_path_replacement ... ok
[INFO] [stdout] test storage::local::tests::storage_rejects_symlinks_that_escape_the_base_directory ... ok
[INFO] [stdout] test storage::local::tests::test_delete_prevents_directory_traversal ... ok
[INFO] [stdout] test storage::local::tests::test_exists ... ok
[INFO] [stdout] test storage::local::tests::test_delete_missing_file ... ok
[INFO] [stdout] test storage::local::tests::test_exists_prevents_directory_traversal ... ok
[INFO] [stdout] test storage::local::tests::test_delete ... ok
[INFO] [stdout] test storage::local::tests::test_file_get_accessed_time ... ok
[INFO] [stdout] test storage::local::tests::test_file_access_options ... ok
[INFO] [stdout] test storage::local::tests::test_file_checksum ... ok
[INFO] [stdout] test storage::local::tests::test_file_get_created_time ... ok
[INFO] [stdout] test storage::local::tests::test_file_url ... ok
[INFO] [stdout] test storage::local::tests::test_file_get_modified_time ... ok
[INFO] [stdout] test storage::local::tests::test_get_time_operations_prevent_directory_traversal ... ok
[INFO] [stdout] test storage::local::tests::test_file_save_with_path ... ok
[INFO] [stdout] test storage::local::tests::test_file_storage_prevents_directory_traversal ... ok
[INFO] [stdout] test storage::local::tests::test_local_storage_path ... ok
[INFO] [stdout] test storage::local::tests::test_file_size ... ok
[INFO] [stdout] test storage::local::tests::test_list_prevents_directory_traversal ... ok
[INFO] [stdout] test storage::local::tests::test_metadata_prevents_directory_traversal ... ok
[INFO] [stdout] test storage::local::tests::test_open_missing_file ... ok
[INFO] [stdout] test storage::local::tests::test_listdir ... ok
[INFO] [stdout] test storage::local::tests::test_read_prevents_directory_traversal ... ok
[INFO] [stdout] test storage::memory::tests::test_inmemory_deconstruction ... ok
[INFO] [stdout] test storage::memory::tests::test_inmemory_settings_changed ... ok
[INFO] [stdout] test storage::local::tests::test_url_encoding ... ok
[INFO] [stdout] test storage::local::tests::test_large_file_saving ... ok
[INFO] [stdout] test storage::memory::tests::test_inmemory_url_generation ... ok
[INFO] [stdout] test storage::memory::tests::test_inmemory_str_bytes_conversion ... ok
[INFO] [stdout] test storage::local::tests::test_path_with_dots_in_filename ... ok
[INFO] [stdout] test storage::local::tests::test_storage_dangerous_paths ... ok
[INFO] [stdout] test storage::memory::tests::test_inmemory_url_with_none_filename ... ok
[INFO] [stdout] test storage::memory::tests::test_inmemory_write_and_read ... ok
[INFO] [stdout] test utils_core::checks::tests::test_check_registry_multiple_tags ... ok
[INFO] [stdout] test utils_core::checks::tests::test_check_registry_register ... ok
[INFO] [stdout] test utils_core::checks::tests::test_check_message_levels ... ok
[INFO] [stdout] test utils_core::checks::tests::test_check_message_with_hint ... ok
[INFO] [stdout] test utils_core::checks::tests::test_check_registry_run_all_checks ... ok
[INFO] [stdout] test utils_core::checks::tests::test_check_registry_new ... ok
[INFO] [stdout] test utils_core::checks::tests::test_check_registry_run_filtered_checks ... ok
[INFO] [stdout] test utils_core::dateformat::proptests::prop_day_format_range ... ok
[INFO] [stdout] test utils_core::dateformat::proptests::prop_month_format_range ... ok
[INFO] [stdout] test utils_core::dateformat::proptests::prop_hour_format_range ... ok
[INFO] [stdout] test utils_core::dateformat::proptests::prop_minute_format_range ... ok
[INFO] [stdout] test utils_core::dateformat::tests::test_12_hour_formats ... ok
[INFO] [stdout] test utils_core::dateformat::tests::test_all_month_names ... ok
[INFO] [stdout] test utils_core::dateformat::tests::test_all_weekday_names ... ok
[INFO] [stdout] test utils_core::dateformat::tests::test_am_pm_formats ... ok
[INFO] [stdout] test utils_core::dateformat::tests::test_combined_format ... ok
[INFO] [stdout] test utils_core::dateformat::tests::test_day_formats ... ok
[INFO] [stdout] test utils_core::dateformat::tests::test_escape_character ... ok
[INFO] [stdout] test utils_core::dateformat::tests::test_month_formats ... ok
[INFO] [stdout] test utils_core::dateformat::tests::test_shortcuts ... ok
[INFO] [stdout] test utils_core::dateformat::tests::test_shortcuts_full_date ... ok
[INFO] [stdout] test utils_core::dateformat::tests::test_shortcuts_short_date ... ok
[INFO] [stdout] test utils_core::dateformat::tests::test_shortcuts_time_formats ... ok
[INFO] [stdout] test utils_core::dateformat::tests::test_time_formats ... ok
[INFO] [stdout] test utils_core::dateformat::tests::test_weekday_formats ... ok
[INFO] [stdout] test utils_core::dateformat::tests::test_year_formats ... ok
[INFO] [stdout] test utils_core::dateformat::proptests::prop_second_format_range ... ok
[INFO] [stdout] test utils_core::dateformat::proptests::prop_shortcuts_valid_lengths ... ok
[INFO] [stdout] test utils_core::dateformat::proptests::prop_year_format_4_digits ... ok
[INFO] [stdout] test storage::local::tests::test_file_modified_time_changes ... ok
[INFO] [stdout] test staticfiles::vendor::downloader::tests::ensure_for_app_is_idempotent_for_unknown_app ... ok
[INFO] [stdout] test utils_core::dateformat::proptests::prop_escape_character ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_escapejs ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_escapejs_control_chars ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_force_bytes ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_force_str ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_force_str_empty ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_linebreaks ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_linebreaks_empty_lines ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_linebreaks_escapes_html ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_linebreaks_single_line ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_linebreaksbr ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_linebreaksbr_escapes_html ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_slugify ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_slugify_empty ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_slugify_multiple_dashes ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_slugify_unicode ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_truncate_chars ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_truncate_chars_exact_length ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_truncate_chars_max_length_four ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_truncate_chars_max_length_one ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_truncate_chars_max_length_three ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_truncate_chars_max_length_two ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_truncate_chars_unicode ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_truncate_chars_zero_max_length_does_not_panic ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_truncate_words ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_truncate_words_empty ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_urldecode ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_urldecode_invalid_hex ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_urldecode_invalid_utf8 ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_urlencode ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_urlencode_special_chars ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_urlencode_urldecode_roundtrip ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_wrap_text ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_wrap_text_empty ... ok
[INFO] [stdout] test utils_core::encoding::tests::test_wrap_text_single_word_exceeds_width ... ok
[INFO] [stdout] test utils_core::encoding::proptests::prop_urlencode_ascii_safe ... ok
[INFO] [stdout] test utils_core::encoding::proptests::prop_slugify_format ... ok
[INFO] [stdout] test utils_core::encoding::proptests::prop_escapejs_no_newlines ... ok
[INFO] [stdout] test utils_core::encoding::proptests::prop_wrap_text_line_width ... ok
[INFO] [stdout] test utils_core::encoding::proptests::prop_truncate_chars_length ... ok
[INFO] [stdout] test utils_core::html::proptests::prop_conditional_escape_when_false ... ok
[INFO] [stdout] test utils_core::html::proptests::prop_escape_no_special_chars ... ok
[INFO] [stdout] test utils_core::html::proptests::prop_format_html_preserves_non_placeholders ... ok
[INFO] [stdout] test utils_core::html::proptests::prop_conditional_escape_when_true ... ok
[INFO] [stdout] test utils_core::html::proptests::prop_escape_attr_no_newlines ... ok
[INFO] [stdout] test cache::layered::tests::test_ttl_index_cleanup ... ok
[INFO] [stdout] test utils_core::html::tests::test_conditional_escape ... ok
[INFO] [stdout] test utils_core::html::tests::test_escape ... ok
[INFO] [stdout] test utils_core::html::tests::test_escape_attr_carriage_return ... ok
[INFO] [stdout] test utils_core::html::tests::test_escape_attr ... ok
[INFO] [stdout] test utils_core::html::tests::test_escape_multibyte ... ok
[INFO] [stdout] test utils_core::html::tests::test_escape_empty_string ... ok
[INFO] [stdout] test utils_core::html::tests::test_format_html ... ok
[INFO] [stdout] test utils_core::html::tests::test_format_html_multiple_replacements ... ok
[INFO] [stdout] test utils_core::html::tests::test_format_html_safe_values_unchanged ... ok
[INFO] [stdout] test utils_core::html::tests::test_format_html_xss_prevention_ampersand ... ok
[INFO] [stdout] test utils_core::html::tests::test_format_html_xss_prevention_angle_brackets ... ok
[INFO] [stdout] test utils_core::html::tests::test_format_html_xss_prevention_event_handler ... ok
[INFO] [stdout] test utils_core::html::tests::test_format_html_xss_prevention_script_tag ... ok
[INFO] [stdout] test utils_core::html::tests::test_safe_string ... ok
[INFO] [stdout] test utils_core::html::tests::test_format_html_no_replacements ... ok
[INFO] [stdout] test utils_core::html::tests::test_safe_string_from_string ... ok
[INFO] [stdout] test utils_core::html::tests::test_strip_spaces_between_tags ... ok
[INFO] [stdout] test utils_core::html::tests::test_safe_string_from_str ... ok
[INFO] [stdout] test utils_core::html::tests::test_strip_spaces_between_tags_multiple_spaces ... ok
[INFO] [stdout] test utils_core::html::tests::test_strip_tags ... ok
[INFO] [stdout] test utils_core::html::tests::test_strip_tags_empty ... ok
[INFO] [stdout] test utils_core::html::tests::test_strip_tags_nested ... ok
[INFO] [stdout] test utils_core::html::tests::test_strip_tags_quoted_attributes_with_angle_brackets ... ok
[INFO] [stdout] test utils_core::html::tests::test_truncate_html_words ... ok
[INFO] [stdout] test utils_core::html::tests::test_truncate_html_words_empty ... ok
[INFO] [stdout] test utils_core::html::tests::test_truncate_html_words_exact_count ... ok
[INFO] [stdout] test utils_core::html::tests::test_unescape ... ok
[INFO] [stdout] test utils_core::html::tests::test_unescape_incomplete_entity ... ok
[INFO] [stdout] test utils_core::html::tests::test_unescape_unknown_entity ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_identifier_error_display_messages ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_sanitize_log_input_empty_input ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_sanitize_log_input_mixed_multibyte_truncation ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_sanitize_log_input_multibyte_truncation_does_not_panic ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_sanitize_log_input_preserves_normal_text ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_sanitize_log_input_replaces_control_characters ... ok
[INFO] [stdout] test utils_core::html::tests::test_truncate_html_preserves_tags ... ok
[INFO] [stdout] test utils_core::html::proptests::prop_safe_string_roundtrip ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_sanitize_log_input_truncates_to_max_length ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_sanitize_log_input_replaces_tabs ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_identifier_accepts_valid::case_1 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_sanitize_log_input_zero_max_length ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_identifier_accepts_valid::case_3 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_identifier_accepts_valid::case_4 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_identifier_accepts_valid::case_5 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_identifier_accepts_valid::case_6 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_identifier_rejects_empty ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_identifier_rejects_invalid_characters::case_1 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_identifier_rejects_invalid_characters::case_2 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_identifier_rejects_invalid_characters::case_3 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_identifier_rejects_invalid_characters::case_4 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_identifier_accepts_valid::case_2 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_identifier_rejects_too_long ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_allows_safe_urls::case_1 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_allows_safe_urls::case_2 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_allows_safe_urls::case_3 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_allows_safe_urls::case_4 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_allows_safe_urls::case_5 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_allows_safe_urls::case_6 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_allows_safe_urls::case_7 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_allows_safe_urls::case_8 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_identifier_rejects_invalid_start::case_1 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_rejects_unsafe_urls::case_01 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_rejects_unsafe_urls::case_02 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_rejects_unsafe_urls::case_03 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_rejects_unsafe_urls::case_04 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_rejects_unsafe_urls::case_05 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_rejects_unsafe_urls::case_06 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_rejects_unsafe_urls::case_08 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_rejects_unsafe_urls::case_09 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_rejects_unsafe_urls::case_10 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_rejects_unsafe_urls::case_11 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_rejects_unsafe_urls::case_12 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_rejects_unsafe_urls::case_07 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_rejects_unsafe_urls::case_13 ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_validate_redirect_url_trims_whitespace ... ok
[INFO] [stdout] test utils_core::lock_recovery::tests::test_recover_mutex_normal ... ok
[INFO] [stdout] test utils_core::input_validation::tests::test_sanitize_log_input_replaces_newlines ... ok
[INFO] [stdout] test utils_core::lock_recovery::tests::test_recover_rwlock_read_normal ... ok
[INFO] [stdout] test utils_core::html::proptests::prop_truncate_html_words_respects_limit ... ok
[INFO] [stdout] test utils_core::lock_recovery::tests::test_recover_rwlock_write_normal ... ok
[INFO] [stdout] test utils_core::path_safety::tests::test_is_safe_filename_component::case_01 ... ok
[INFO] [stdout] test utils_core::path_safety::tests::test_is_safe_filename_component::case_02 ... ok
[INFO] [stdout] test utils_core::lock_recovery::tests::test_recover_rwlock_read_from_poisoned ... ok
[INFO] [stdout] test utils_core::lock_recovery::tests::test_recover_mutex_from_poisoned ... ok
[INFO] [stdout] test utils_core::path_safety::tests::test_is_safe_filename_component::case_05 ... ok
[INFO] [stdout] test utils_core::path_safety::tests::test_is_safe_filename_component::case_06 ... ok
[INFO] [stdout] test utils_core::path_safety::tests::test_is_safe_filename_component::case_07 ... ok
[INFO] [stdout] test utils_core::path_safety::tests::test_is_safe_filename_component::case_08 ... ok
[INFO] [stdout] test utils_core::path_safety::tests::test_is_safe_filename_component::case_03 ... ok
[INFO] [stdout] test utils_core::path_safety::tests::test_is_safe_filename_component::case_04 ... ok
[INFO] [stdout] test utils_core::path_safety::tests::test_is_safe_filename_component::case_10 ... ok
[INFO] [stdout] test utils_core::path_safety::tests::test_is_safe_filename_component::case_09 ... ok
[INFO] [stdout] test utils_core::html::proptests::prop_strip_spaces_reduces_whitespace ... ok
[INFO] [stdout] test utils_core::path_safety::tests::test_is_safe_filename_component::case_11 ... ok
[INFO] [stdout] test utils_core::path_safety::tests::test_safe_path_join_allows_single_dot ... ok
[INFO] [stdout] test utils_core::lock_recovery::tests::test_recover_rwlock_write_from_poisoned ... ok
[INFO] [stdout] test utils_core::path_safety::tests::test_safe_path_join_rejects_backslash_absolute ... ok
[INFO] [stdout] test utils_core::path_safety::tests::test_safe_path_join_allows_dotfiles ... ok
[INFO] [stdout] test utils_core::path_safety::tests::test_safe_path_join_rejects_embedded_traversal ... ok
[INFO] [stdout] test utils_core::path_safety::tests::test_safe_path_join_rejects_absolute_path ... ok
[INFO] [stdout] test utils_core::path_safety::tests::test_safe_path_join_rejects_null_byte ... ok
[INFO] [stdout] test utils_core::path_safety::tests::test_safe_path_join_rejects_parent_traversal ... ok
[INFO] [stdout] test utils_core::path_safety::tests::test_safe_path_join_allows_double_dots_inside_names ... ok
[INFO] [stdout] test utils_core::path_safety::tests::test_safe_path_join_normal_path ... ok
[INFO] [stdout] test utils_core::html::proptests::prop_strip_tags_no_angle_brackets ... ok
[INFO] [stdout] test utils_core::text::proptests::prop_ordinal_format ... ok
[INFO] [stdout] test utils_core::text::tests::test_capfirst::case_1 ... ok
[INFO] [stdout] test utils_core::text::tests::test_capfirst::case_2 ... ok
[INFO] [stdout] test utils_core::text::tests::test_capfirst::case_3 ... ok
[INFO] [stdout] test utils_core::text::tests::test_capfirst::case_4 ... ok
[INFO] [stdout] test utils_core::text::tests::test_capfirst::case_5 ... ok
[INFO] [stdout] test utils_core::text::tests::test_capfirst::case_6 ... ok
[INFO] [stdout] test utils_core::html::proptests::prop_strip_tags_length_decrease ... ok
[INFO] [stdout] test utils_core::text::tests::test_capfirst::case_7 ... ok
[INFO] [stdout] test utils_core::text::tests::test_capfirst_numbers ... ok
[INFO] [stdout] test utils_core::text::tests::test_center ... ok
[INFO] [stdout] test utils_core::text::tests::test_center_exact_width ... ok
[INFO] [stdout] test utils_core::text::tests::test_center_odd_padding ... ok
[INFO] [stdout] test utils_core::text::tests::test_capfirst::case_8 ... ok
[INFO] [stdout] test utils_core::text::tests::test_floatcomma ... ok
[INFO] [stdout] test utils_core::text::tests::test_floatcomma_negative ... ok
[INFO] [stdout] test utils_core::text::tests::test_floatcomma_no_decimals ... ok
[INFO] [stdout] test utils_core::text::tests::test_floatcomma_zero ... ok
[INFO] [stdout] test utils_core::text::tests::test_humanize_field_name ... ok
[INFO] [stdout] test utils_core::text::tests::test_humanize_field_name_empty ... ok
[INFO] [stdout] test utils_core::text::tests::test_humanize_field_name_multiple_underscores ... ok
[INFO] [stdout] test utils_core::text::tests::test_humanize_field_name_no_underscores ... ok
[INFO] [stdout] test utils_core::text::tests::test_humanize_field_name_single_word ... ok
[INFO] [stdout] test utils_core::text::tests::test_intcomma_large_numbers ... ok
[INFO] [stdout] test utils_core::text::tests::test_intcomma_zero ... ok
[INFO] [stdout] test utils_core::text::tests::test_ljust ... ok
[INFO] [stdout] test utils_core::text::tests::test_ljust_exact_width ... ok
[INFO] [stdout] test utils_core::text::tests::test_ljust_unicode ... ok
[INFO] [stdout] test utils_core::text::tests::test_ordinal_hundreds ... ok
[INFO] [stdout] test utils_core::text::tests::test_ordinal_negative ... ok
[INFO] [stdout] test utils_core::text::tests::test_ordinal_teens ... ok
[INFO] [stdout] test utils_core::text::tests::test_center_unicode ... ok
[INFO] [stdout] test utils_core::text::tests::test_phone_format ... ok
[INFO] [stdout] test utils_core::text::tests::test_phone_format_empty ... ok
[INFO] [stdout] test utils_core::text::tests::test_phone_format_with_dashes ... ok
[INFO] [stdout] test utils_core::text::tests::test_pluralize_negative ... ok
[INFO] [stdout] test utils_core::text::tests::test_pluralize_zero ... ok
[INFO] [stdout] test utils_core::text::tests::test_rjust ... ok
[INFO] [stdout] test utils_core::text::tests::test_rjust_exact_width ... ok
[INFO] [stdout] test utils_core::text::tests::test_rjust_unicode ... ok
[INFO] [stdout] test utils_core::text::tests::test_title ... ok
[INFO] [stdout] test utils_core::text::tests::test_title_empty ... ok
[INFO] [stdout] test utils_core::text::tests::test_title_mixed_case ... ok
[INFO] [stdout] test utils_core::text::tests::test_utils_text_intcomma ... ok
[INFO] [stdout] test utils_core::text::tests::test_title_single_word ... ok
[INFO] [stdout] test utils_core::text::tests::test_utils_text_ordinal ... ok
[INFO] [stdout] test utils_core::text::tests::test_utils_text_pluralize ... ok
[INFO] [stdout] test utils_core::timezone::proptests::prop_format_parse_roundtrip ... ok
[INFO] [stdout] test utils_core::timezone::proptests::prop_is_aware_always_true ... ok
[INFO] [stdout] test utils_core::timezone::proptests::prop_make_aware_utc_roundtrip ... ok
[INFO] [stdout] test utils_core::timezone::proptests::prop_to_local_preserves_timestamp ... ok
[INFO] [stdout] test utils_core::timezone::tests::test_format_datetime_roundtrip ... ok
[INFO] [stdout] test utils_core::timezone::tests::test_get_timezone_name_local ... ok
[INFO] [stdout] test utils_core::timezone::proptests::prop_to_utc_preserves_timestamp ... ok
[INFO] [stdout] test utils_core::timezone::tests::test_is_aware_local ... ok
[INFO] [stdout] test utils_core::timezone::tests::test_is_aware_utc ... ok
[INFO] [stdout] test utils_core::timezone::tests::test_get_timezone_name_utc ... ok
[INFO] [stdout] test utils_core::timezone::tests::test_localtime ... ok
[INFO] [stdout] test utils_core::timezone::tests::test_make_aware ... ok
[INFO] [stdout] test utils_core::timezone::tests::test_make_aware_local ... ok
[INFO] [stdout] test utils_core::timezone::tests::test_make_aware_local_dst_gap_returns_error ... ok
[INFO] [stdout] test utils_core::timezone::tests::test_make_aware_local_error_message_contains_datetime ... ok
[INFO] [stdout] test utils_core::timezone::tests::test_make_aware_local_returns_result_ok_for_valid_datetime ... ok
[INFO] [stdout] test utils_core::timezone::tests::test_parse_and_format ... ok
[INFO] [stdout] test utils_core::timezone::tests::test_parse_datetime_invalid ... ok
[INFO] [stdout] test utils_core::timezone::tests::test_parse_datetime_with_offset ... ok
[INFO] [stdout] test utils_core::timezone::tests::test_to_timezone_america_new_york ... ok
[INFO] [stdout] test utils_core::timezone::tests::test_to_timezone_asia_tokyo ... ok
[INFO] [stdout] test utils_core::timezone::tests::test_to_timezone_invalid ... ok
[INFO] [stdout] test utils_core::timezone::tests::test_to_timezone_utc ... ok
[INFO] [stdout] test utils_core::timezone::tests::test_utils_timezone_now ... ok
[INFO] [stdout] test utils_core::timezone::tests::test_to_local_and_back ... ok
[INFO] [stdout] test utils_core::text::proptests::prop_center_min_length ... ok
[INFO] [stdout] test utils_core::text::proptests::prop_ljust_min_length ... ok
[INFO] [stdout] test utils_core::text::proptests::prop_pluralize_one ... ok
[INFO] [stdout] test utils_core::text::proptests::prop_rjust_min_length ... ok
[INFO] [stdout] test utils_core::text::proptests::prop_pluralize_not_one ... ok
[INFO] [stdout] test utils_core::encoding::proptests::prop_truncate_words_count ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 609 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.75s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/cache_backend.rs (/opt/rustwide/target/debug/build/reinhardt-utils/364df09df3b3a2e7/out/cache_backend-364df09df3b3a2e7)
[INFO] [stdout] 
[INFO] [stdout] running 39 tests
[INFO] [stdout] test test_delete_nonexistent_key_is_ok ... ok
[INFO] [stdout] test test_delete_removes_existing_key ... ok
[INFO] [stdout] test test_entry_exists_before_ttl_expires ... ok
[INFO] [stdout] test test_clear_on_empty_cache_is_ok ... ok
[INFO] [stdout] test test_delete_many_removes_specified_keys ... ok
[INFO] [stdout] test test_get_returns_none_for_missing_key ... ok
[INFO] [stdout] test test_has_key_returns_false_after_delete ... ok
[INFO] [stdout] test test_has_key_returns_false_for_missing_key ... ok
[INFO] [stdout] test test_has_key_returns_true_for_existing_key ... ok
[INFO] [stdout] test test_decr_subtracts_from_existing_value ... ok
[INFO] [stdout] test test_incr_starts_from_zero_when_key_missing ... ok
[INFO] [stdout] test test_inspect_entry_reports_correct_ttl ... ok
[INFO] [stdout] test test_inspect_entry_reports_no_expiry_for_persistent_entry ... ok
[INFO] [stdout] test test_inspect_entry_returns_none_for_nonexistent_key ... ok
[INFO] [stdout] test test_layered_basic_set_get_delete ... ok
[INFO] [stdout] test test_clear_removes_all_entries ... ok
[INFO] [stdout] test test_layered_clear_removes_all_entries ... ok
[INFO] [stdout] test test_incr_accumulates_value ... ok
[INFO] [stdout] test test_layered_list_keys_reflects_stored_entries ... ok
[INFO] [stdout] test test_layered_statistics_tracks_hits_and_misses ... ok
[INFO] [stdout] test test_list_keys_returns_all_stored_keys ... ok
[INFO] [stdout] test test_set_and_get_integer_value ... ok
[INFO] [stdout] test test_set_and_get_string_value ... ok
[INFO] [stdout] test test_set_and_get_struct_value ... ok
[INFO] [stdout] test test_set_many_and_get_many ... ok
[INFO] [stdout] test test_set_overwrites_existing_value ... ok
[INFO] [stdout] test test_statistics_entry_count_reflects_stored_entries ... ok
[INFO] [stdout] test test_explicit_ttl_overrides_default_ttl ... ok
[INFO] [stdout] test test_statistics_hit_is_recorded ... ok
[INFO] [stdout] test test_statistics_hit_rate_calculation ... ok
[INFO] [stdout] test test_statistics_initial_state_is_zero ... ok
[INFO] [stdout] test test_statistics_miss_is_recorded ... ok
[INFO] [stdout] test test_has_key_returns_false_for_expired_entry ... ok
[INFO] [stdout] test test_entry_expires_after_ttl ... ok
[INFO] [stdout] test test_layered_entry_expires_after_ttl ... ok
[INFO] [stdout] test test_layered_cleanup_expired_removes_stale_entries ... ok
[INFO] [stdout] test test_cleanup_expired_removes_only_expired_entries ... ok
[INFO] [stderr]      Running tests/humanize_tests.rs (/opt/rustwide/target/debug/build/reinhardt-utils/b9b9aaa9b52d6608/out/humanize_tests-b9b9aaa9b52d6608)
[INFO] [stdout] test test_default_ttl_applied_when_no_explicit_ttl ... ok
[INFO] [stdout] test test_statistics_expired_entry_counts_as_miss ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 39 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 15 tests
[INFO] [stdout] test test_intword ... ok
[INFO] [stdout] test test_naturalday_today ... ok
[INFO] [stdout] test test_contrib_humanize_filesize ... ok
[INFO] [stdout] test test_contrib_humanize_intcomma ... ok
[INFO] [stdout] test test_contrib_humanize_ordinal ... ok
[INFO] [stdout] test test_naturalday_yesterday ... ok
[INFO] [stdout] test test_naturaltime_days ... ok
[INFO] [stdout] test test_naturaltime_hours ... ok
[INFO] [stdout] test test_naturaltime_minutes ... ok
[INFO] [stdout] test test_naturaltime_seconds ... ok
[INFO] [stdout] test test_timesince_minutes ... ok
[INFO] [stdout] test test_negative_numbers ... ok
[INFO] [stdout] test test_timesince_hours ... ok
[INFO] [stdout] test test_naturalday_tomorrow ... ok
[INFO] [stdout] test test_naturaltime_future ... ok
[INFO] [stderr]      Running tests/static_publication_application_routes.rs (/opt/rustwide/target/debug/build/reinhardt-utils/6d595d01e83755bf/out/static_publication_application_routes-6d595d01e83755bf)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/static_publication_atomicity.rs (/opt/rustwide/target/debug/build/reinhardt-utils/336827c8a9a652c9/out/static_publication_atomicity-336827c8a9a652c9)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/static_publication_classification.rs (/opt/rustwide/target/debug/build/reinhardt-utils/eef29b8f85f2633e/out/static_publication_classification-eef29b8f85f2633e)
[INFO] [stdout] 
[INFO] [stdout] running 28 tests
[INFO] [stdout] test classification_keeps_namespaces_and_pages_companions::case_08 ... ok
[INFO] [stdout] test classification_keeps_namespaces_and_pages_companions::case_02 ... ok
[INFO] [stdout] test classification_keeps_namespaces_and_pages_companions::case_01 ... ok
[INFO] [stdout] test classification_keeps_namespaces_and_pages_companions::case_06 ... ok
[INFO] [stdout] test classification_keeps_namespaces_and_pages_companions::case_05 ... ok
[INFO] [stdout] test classification_keeps_namespaces_and_pages_companions::case_03 ... ok
[INFO] [stdout] test classification_keeps_namespaces_and_pages_companions::case_09 ... ok
[INFO] [stdout] test classification_keeps_namespaces_and_pages_companions::case_07 ... ok
[INFO] [stdout] test classification_keeps_namespaces_and_pages_companions::case_10 ... ok
[INFO] [stdout] test classification_keeps_namespaces_and_pages_companions::case_15 ... ok
[INFO] [stdout] test classification_keeps_namespaces_and_pages_companions::case_11 ... ok
[INFO] [stdout] test classification_keeps_namespaces_and_pages_companions::case_14 ... ok
[INFO] [stdout] test classification_keeps_namespaces_and_pages_companions::case_13 ... ok
[INFO] [stdout] test classification_keeps_namespaces_and_pages_companions::case_16 ... ok
[INFO] [stdout] test classification_keeps_namespaces_and_pages_companions::case_17 ... ok
[INFO] [stdout] test classification_keeps_namespaces_and_pages_companions::case_18 ... ok
[INFO] [stdout] test collisions_report_both_assignments::case_2 ... ok
[INFO] [stdout] test collisions_report_both_assignments::case_1 ... ok
[INFO] [stdout] test unsafe_source_names_fail_before_output_assignment::case_2 ... ok
[INFO] [stdout] test unsafe_source_names_fail_before_output_assignment::case_3 ... ok
[INFO] [stdout] test unsafe_source_names_fail_before_output_assignment::case_4 ... ok
[INFO] [stdout] test unsafe_source_names_fail_before_output_assignment::case_5 ... ok
[INFO] [stdout] test unsafe_source_names_fail_before_output_assignment::case_6 ... ok
[INFO] [stdout] test classification_keeps_namespaces_and_pages_companions::case_12 ... ok
[INFO] [stdout] test unsafe_source_names_fail_before_output_assignment::case_1 ... ok
[INFO] [stdout] test classification_keeps_namespaces_and_pages_companions::case_04 ... ok
[INFO] [stdout] test explicit_extension_mapping_overrides_builtin_mapping_but_not_pages ... ok
[INFO] [stdout] test collisions_report_both_assignments::case_3 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 28 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/static_publication_html_integrity.rs (/opt/rustwide/target/debug/build/reinhardt-utils/eabd495a73b47205/out/static_publication_html_integrity-eabd495a73b47205)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/static_publication_http.rs (/opt/rustwide/target/debug/build/reinhardt-utils/e19b9b3aaa6efef4/out/static_publication_http-e19b9b3aaa6efef4)
[INFO] [stderr]      Running tests/static_publication_image_set.rs (/opt/rustwide/target/debug/build/reinhardt-utils/8207288e698322b6/out/static_publication_image_set-8207288e698322b6)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/static_publication_legacy_metadata_names.rs (/opt/rustwide/target/debug/build/reinhardt-utils/2a373c20049bb17e/out/static_publication_legacy_metadata_names-2a373c20049bb17e)
[INFO] [stderr]      Running tests/static_publication_manifest.rs (/opt/rustwide/target/debug/build/reinhardt-utils/97bd521c6f5d2088/out/static_publication_manifest-97bd521c6f5d2088)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 26 tests
[INFO] [stdout] test competing_default_manifests_require_explicit_selection ... ok
[INFO] [stdout] test invalid_v2_metadata_is_rejected::case_01 ... ok
[INFO] [stdout] test invalid_v2_metadata_is_rejected::case_02 ... ok
[INFO] [stdout] test invalid_v2_metadata_is_rejected::case_03 ... ok
[INFO] [stdout] test invalid_v2_metadata_is_rejected::case_04 ... ok
[INFO] [stdout] test invalid_v2_metadata_is_rejected::case_05 ... ok
[INFO] [stdout] test existing_storage_and_template_readers_reject_invalid_mapping_values ... ok
[INFO] [stdout] test complete_v2_metadata_is_decoded_without_losing_entrypoint_relationships ... ok
[INFO] [stdout] test invalid_v2_metadata_is_rejected::case_09 ... ok
[INFO] [stdout] test invalid_v2_metadata_is_rejected::case_11 ... ok
[INFO] [stdout] test legacy_paths_are_preserved_without_invented_identity::case_1 ... ok
[INFO] [stdout] test legacy_paths_are_preserved_without_invented_identity::case_2 ... ok
[INFO] [stdout] test malformed_or_ambiguous_manifests_fail::case_1 ... ok
[INFO] [stdout] test invalid_v2_metadata_is_rejected::case_06 ... ok
[INFO] [stdout] test malformed_or_ambiguous_manifests_fail::case_3 ... ok
[INFO] [stdout] test malformed_or_ambiguous_manifests_fail::case_5 ... ok
[INFO] [stdout] test ordinary_asset_mime_must_be_a_valid_media_type::case_1 ... ok
[INFO] [stdout] test malformed_or_ambiguous_manifests_fail::case_4 ... ok
[INFO] [stdout] test ordinary_asset_mime_must_be_a_valid_media_type::case_2 ... ok
[INFO] [stdout] test invalid_v2_metadata_is_rejected::case_07 ... ok
[INFO] [stdout] test legacy_paths_are_preserved_without_invented_identity::case_3 ... ok
[INFO] [stderr]      Running tests/static_publication_pipeline.rs (/opt/rustwide/target/debug/build/reinhardt-utils/b64fcc3573ad740e/out/static_publication_pipeline-b64fcc3573ad740e)
[INFO] [stdout] test legacy_paths_are_preserved_without_invented_identity::case_4 ... ok
[INFO] [stdout] test malformed_or_ambiguous_manifests_fail::case_2 ... ok
[INFO] [stdout] test invalid_v2_metadata_is_rejected::case_10 ... ok
[INFO] [stdout] test ordinary_asset_mime_must_be_a_valid_media_type::case_3 ... ok
[INFO] [stdout] test invalid_v2_metadata_is_rejected::case_08 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 26 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/static_publication_references.rs (/opt/rustwide/target/debug/build/reinhardt-utils/588f114aade93551/out/static_publication_references-588f114aade93551)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/static_publication_representations.rs (/opt/rustwide/target/debug/build/reinhardt-utils/123de9509f550431/out/static_publication_representations-123de9509f550431)
[INFO] [stderr]      Running tests/static_publication_snapshot.rs (/opt/rustwide/target/debug/build/reinhardt-utils/653eb218024553e5/out/static_publication_snapshot-653eb218024553e5)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/static_template_v2_urls.rs (/opt/rustwide/target/debug/build/reinhardt-utils/8626433998faaf64/out/static_template_v2_urls-8626433998faaf64)
[INFO] [stdout] 
[INFO] [stderr]      Running tests/staticfiles_pipeline.rs (/opt/rustwide/target/debug/build/reinhardt-utils/35e0a2a3a4992193/out/staticfiles_pipeline-35e0a2a3a4992193)
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 48 tests
[INFO] [stdout] test test_css_minifier_can_process_css ... ok
[INFO] [stdout] test test_dependency_graph_len ... ok
[INFO] [stdout] test test_dependency_graph_add_and_resolve ... ok
[INFO] [stdout] test test_filesystem_storage_blocks_path_traversal ... ok
[INFO] [stdout] test test_finder_blocks_path_traversal ... ok
[INFO] [stdout] test test_filesystem_storage_exists ... ok
[INFO] [stdout] test test_css_minifier_removes_block_comments ... ok
[INFO] [stdout] test test_filesystem_storage_creates_parent_directories ... ok
[INFO] [stdout] test test_filesystem_storage_delete ... ok
[INFO] [stdout] test test_dependency_graph_empty ... ok
[INFO] [stdout] test test_finder_returns_error_for_missing_file ... ok
[INFO] [stdout] test test_finder_find_all_returns_all_files ... ok
[INFO] [stdout] test test_filesystem_storage_save_and_open ... ok
[INFO] [stdout] test test_finder_find_all_empty_directory ... ok
[INFO] [stdout] test test_finder_searches_multiple_directories ... ok
[INFO] [stdout] test test_finder_strips_leading_slash_from_path ... ok
[INFO] [stdout] test test_finder_finds_existing_file ... ok
[INFO] [stdout] test test_hashed_storage_get_hashed_path ... ok
[INFO] [stdout] test test_js_minifier_can_process_js ... ok
[INFO] [stdout] test test_manifest_storage_load_from_empty_returns_ok ... ok
[INFO] [stdout] test test_js_minifier_preserves_string_contents ... ok
[INFO] [stdout] test test_hashed_storage_url_returns_hashed_url ... ok
[INFO] [stdout] test test_end_to_end_collect_hash_and_manifest ... ok
[INFO] [stdout] test test_hashed_storage_save_with_dependencies_updates_css_refs ... ok
[INFO] [stdout] test test_manifest_storage_url_uses_hashed_name ... ok
[INFO] [stdout] test test_memory_storage_delete ... ok
[INFO] [stdout] test test_manifest_storage_open_by_original_name ... ok
[INFO] [stdout] test test_memory_storage_open_missing_returns_error ... ok
[INFO] [stdout] test test_memory_storage_exists ... ok
[INFO] [stdout] test test_memory_storage_save_and_open ... ok
[INFO] [stdout] test test_hashed_storage_produces_hashed_name ... ok
[INFO] [stdout] test test_memory_storage_url_format ... ok
[INFO] [stdout] test test_pipeline_passes_through_unknown_extension ... ok
[INFO] [stdout] test test_pipeline_skips_minification_when_disabled ... ok
[INFO] [stdout] test test_path_resolver_relative_does_not_panic ... ok
[INFO] [stdout] test test_path_resolver_returns_absolute_unchanged ... ok
[INFO] [stdout] test test_processing_config_builder_chain ... ok
[INFO] [stdout] test test_processing_config_image_quality_clamped_high ... ok
[INFO] [stdout] test test_pipeline_minifies_css_file ... ok
[INFO] [stdout] test test_processing_config_image_quality_clamped_low ... ok
[INFO] [stdout] test test_pipeline_minifies_js_file ... ok
[INFO] [stdout] test test_static_files_config_default ... ok
[INFO] [stdout] test test_storage_registry_register_and_get ... ok
[INFO] [stdout] test test_processing_config_default_values ... ok
[INFO] [stdout] test test_manifest_storage_saves_and_loads_manifest ... ok
[INFO] [stdout] test test_storage_registry_missing_returns_none ... ok
[INFO] [stdout] test test_hashed_storage_same_content_same_hash ... ok
[INFO] [stdout] test test_manifest_storage_manifest_file_exists ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 48 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/storage_backend.rs (/opt/rustwide/target/debug/build/reinhardt-utils/d843db18c71bed57/out/storage_backend-d843db18c71bed57)
[INFO] [stdout] 
[INFO] [stdout] running 63 tests
[INFO] [stdout] test file_metadata_with_checksum_stores_value ... ok
[INFO] [stdout] test file_metadata_with_content_type_stores_value ... ok
[INFO] [stdout] test local_delete_rejects_dangerous_paths::case_1 ... ok
[INFO] [stdout] test file_metadata_new_sets_path_and_size ... ok
[INFO] [stdout] test local_delete_rejects_dangerous_paths::case_2 ... ok
[INFO] [stdout] test local_exists_rejects_dangerous_paths::case_2 ... ok
[INFO] [stdout] test local_different_content_produces_different_checksum ... ok
[INFO] [stdout] test local_get_accessed_time_is_recent ... ok
[INFO] [stdout] test local_exists_rejects_dangerous_paths::case_1 ... ok
[INFO] [stdout] test local_get_modified_time_is_recent ... ok
[INFO] [stdout] test local_delete_nonexistent_returns_not_found_error ... ok
[INFO] [stdout] test local_list_returns_files_in_subdirectory ... ok
[INFO] [stdout] test local_get_created_time_is_recent ... ok
[INFO] [stdout] test local_exists_returns_true_after_save ... ok
[INFO] [stdout] test local_exists_returns_false_before_save ... ok
[INFO] [stdout] test local_metadata_rejects_dangerous_paths::case_2 ... ok
[INFO] [stdout] test local_metadata_rejects_dangerous_paths::case_1 ... ok
[INFO] [stdout] test local_overwrite_updates_content ... ok
[INFO] [stdout] test local_metadata_nonexistent_returns_not_found_error ... ok
[INFO] [stdout] test local_read_rejects_dangerous_paths::case_1 ... ok
[INFO] [stdout] test local_delete_removes_file ... ok
[INFO] [stdout] test local_metadata_returns_correct_size ... ok
[INFO] [stdout] test local_read_nonexistent_returns_not_found_error ... ok
[INFO] [stdout] test local_read_rejects_dangerous_paths::case_2 ... ok
[INFO] [stdout] test local_read_content_after_nested_save ... ok
[INFO] [stdout] test local_read_rejects_dangerous_paths::case_3 ... ok
[INFO] [stdout] test local_save_rejects_dangerous_paths::case_3 ... ok
[INFO] [stdout] test local_save_rejects_dangerous_paths::case_1 ... ok
[INFO] [stdout] test local_save_rejects_dangerous_paths::case_2 ... ok
[INFO] [stdout] test local_save_rejects_dangerous_paths::case_4 ... ok
[INFO] [stdout] test local_save_rejects_dangerous_paths::case_6 ... ok
[INFO] [stdout] test local_save_rejects_dangerous_paths::case_7 ... ok
[INFO] [stdout] test local_url_combines_base_url_and_path::case_1 ... ok
[INFO] [stdout] test local_same_content_produces_same_checksum ... ok
[INFO] [stdout] test local_url_combines_base_url_and_path::case_2 ... ok
[INFO] [stdout] test local_url_combines_base_url_and_path::case_3 ... ok
[INFO] [stdout] test local_list_returns_files_in_root ... ok
[INFO] [stdout] test local_save_returns_metadata_with_correct_size ... ok
[INFO] [stdout] test memory_deconstruct_returns_expected_fields ... ok
[INFO] [stdout] test memory_deconstruct_includes_permission_modes_when_set ... ok
[INFO] [stdout] test local_save_rejects_dangerous_paths::case_5 ... ok
[INFO] [stdout] test local_save_computes_checksum ... ok
[INFO] [stdout] test memory_delete_removes_file ... ok
[INFO] [stdout] test memory_exists_true_after_save ... ok
[INFO] [stdout] test local_save_creates_intermediate_directories ... ok
[INFO] [stdout] test memory_exists_false_before_save ... ok
[INFO] [stdout] test memory_list_root_returns_only_top_level_files ... ok
[INFO] [stdout] test memory_get_created_time_nonexistent_returns_not_found_error ... ok
[INFO] [stdout] test memory_get_modified_time_updates_on_overwrite ... ok
[INFO] [stdout] test memory_list_subdirectory_returns_direct_children ... ok
[INFO] [stdout] test memory_get_created_time_is_set_on_save ... ok
[INFO] [stdout] test memory_metadata_nonexistent_returns_not_found_error ... ok
[INFO] [stdout] test memory_metadata_returns_correct_size ... ok
[INFO] [stdout] test memory_url_combines_base_url_and_path::case_1 ... ok
[INFO] [stdout] test memory_url_combines_base_url_and_path::case_2 ... ok
[INFO] [stdout] test stored_file_content_is_accessible ... ok
[INFO] [stdout] test memory_write_and_read_returns_correct_content ... ok
[INFO] [stdout] test memory_overwrite_updates_content ... ok
[INFO] [stdout] test memory_read_nonexistent_returns_not_found_error ... ok
[INFO] [stdout] test memory_save_returns_metadata_with_correct_size ... ok
[INFO] [stdout] test local_write_and_read_returns_correct_content ... ok
[INFO] [stdout] test stored_file_size_matches_content_length ... ok
[INFO] [stdout] test local_large_file_save_and_read_roundtrip ... ok
[INFO] [stderr]      Running tests/vendor_pipeline.rs (/opt/rustwide/target/debug/build/reinhardt-utils/ed7f82115212fb6f/out/vendor_pipeline-ed7f82115212fb6f)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 63 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.05s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test download_preserves_existing_file_on_sha_mismatch ... ok
[INFO] [stdout] test download_errors_on_sha_mismatch ... ok
[INFO] [stdout] test download_then_skip_on_second_call ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.31s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests reinhardt_utils
[INFO] [stdout] 
[INFO] [stdout] running 213 tests
[INFO] [stdout] test src/cache.rs - cache (line 72) ... ignored
[INFO] [stdout] test src/cache/file_backend.rs - cache::file_backend::FileCache::cleanup_expired (line 103) ... ok
[INFO] [stdout] test src/cache/file_backend.rs - cache::file_backend::FileCache (line 21) ... ok
[INFO] [stdout] test src/cache/hybrid.rs - cache::hybrid::HybridCache<L1,L2>::new (line 79) ... ok
[INFO] [stdout] test src/cache/in_memory.rs - cache::in_memory::InMemoryCache::cleanup_expired (line 172) ... ok
[INFO] [stdout] test src/cache/in_memory.rs - cache::in_memory::InMemoryCache::get_statistics (line 215) ... ok
[INFO] [stdout] test src/cache/in_memory.rs - cache::in_memory::InMemoryCache::inspect_entry (line 381) ... ok
[INFO] [stdout] test src/cache/in_memory.rs - cache::in_memory::InMemoryCache::inspect_entry_with_timestamps (line 332) ... ok
[INFO] [stdout] test src/cache/in_memory.rs - cache::in_memory::InMemoryCache::list_keys (line 282) ... ok
[INFO] [stdout] test src/cache/in_memory.rs - cache::in_memory::InMemoryCache::new (line 58) ... ok
[INFO] [stdout] test src/cache/in_memory.rs - cache::in_memory::InMemoryCache::start_auto_cleanup (line 445) ... ok
[INFO] [stdout] test src/cache/in_memory.rs - cache::in_memory::InMemoryCache::with_auto_cleanup (line 503) ... ok
[INFO] [stdout] test src/cache/in_memory.rs - cache::in_memory::InMemoryCache::with_custom_layered_cleanup (line 120) ... ok
[INFO] [stdout] test src/cache/in_memory.rs - cache::in_memory::InMemoryCache::with_default_ttl (line 142) ... ok
[INFO] [stdout] test src/cache/in_memory.rs - cache::in_memory::InMemoryCache::with_layered_cleanup (line 92) ... ok
[INFO] [stdout] test src/cache/key_builder.rs - cache::key_builder::CacheKeyBuilder::build (line 45) ... ok
[INFO] [stdout] test src/cache/key_builder.rs - cache::key_builder::CacheKeyBuilder::build_many (line 59) ... ok
[INFO] [stdout] test src/cache/file_backend.rs - cache::file_backend::FileCache::new (line 54) ... ok
[INFO] [stdout] test src/cache/hybrid.rs - cache::hybrid::HybridCache<L1,L2>::l1 (line 97) ... ok
[INFO] [stdout] test src/cache.rs - cache (line 26) ... ok
[INFO] [stdout] test src/cache/file_backend.rs - cache::file_backend::FileCache::with_default_ttl (line 79) ... ok
[INFO] [stdout] test src/cache/hybrid.rs - cache::hybrid (line 15) ... ok
[INFO] [stdout] test src/cache/hybrid.rs - cache::hybrid::HybridCache<L1,L2>::l2 (line 118) ... ok
[INFO] [stdout] test src/cache.rs - cache (line 46) ... ok
[INFO] [stdout] test src/cache/layered.rs - cache::layered::LayeredCacheStore::cleanup_active_sampling (line 274) ... ok
[INFO] [stdout] test src/cache/layered.rs - cache::layered::LayeredCacheStore::cleanup_ttl_index (line 352) ... ok
[INFO] [stdout] test src/cache/layered.rs - cache::layered::LayeredCacheStore::cleanup (line 407) ... ok
[INFO] [stdout] test src/cache/key_builder.rs - cache::key_builder::CacheKeyBuilder::new (line 15) ... ok
[INFO] [stdout] test src/cache/layered.rs - cache::layered::LayeredCacheStore (line 49) ... ok
[INFO] [stdout] test src/cache/layered.rs - cache::layered::LayeredCacheStore::with_sampler (line 102) ... ok
[INFO] [stdout] test src/cache/key_builder.rs - cache::key_builder::CacheKeyBuilder::with_version (line 31) ... ok
[INFO] [stdout] test src/cache/tags.rs - cache::tags::TaggedCache (line 18) ... ok
[INFO] [stdout] test src/cache/layered.rs - cache::layered::LayeredCacheStore::start_auto_cleanup (line 432) ... ok
[INFO] [stdout] test src/cache/warming.rs - cache::warming::BatchWarmer (line 136) ... ok
[INFO] [stdout] test src/cache/statistics.rs - cache::statistics::CacheStatistics::hit_rate (line 36) ... ok
[INFO] [stdout] test src/cache/statistics.rs - cache::statistics::CacheStatistics::miss_rate (line 58) ... ok
[INFO] [stdout] test src/cache/tags.rs - cache::tags::TaggedCacheWrapper (line 84) ... ok
[INFO] [stdout] test src/humanize.rs - humanize (line 20) ... ok
[INFO] [stdout] test src/humanize.rs - humanize::filesizeformat (line 86) ... ok
[INFO] [stdout] test src/cache/warming.rs - cache::warming::ParallelWarmer (line 212) ... ok
[INFO] [stdout] test src/humanize.rs - humanize::naturalday (line 116) ... ok
[INFO] [stdout] test src/lib.rs - (line 21) ... ok
[INFO] [stdout] test src/humanize.rs - humanize::timesince (line 186) ... ok
[INFO] [stdout] test src/cache/warming.rs - cache::warming::FunctionWarmer (line 62) ... ok
[INFO] [stdout] test src/humanize.rs - humanize::naturaltime (line 143) ... ok
[INFO] [stdout] test src/cache/warming.rs - cache::warming::CacheWarmer (line 13) ... ok
[INFO] [stdout] test src/logging.rs - logging::LoggerHandle::warning_sync (line 111) ... ok
[INFO] [stdout] test src/logging.rs - logging::security (line 29) ... ok
[INFO] [stdout] test src/logging.rs - logging::LoggerHandle::info_sync (line 97) ... ok
[INFO] [stdout] test src/logging/logger.rs - logging::logger::LogRecord::add_extra (line 83) ... ok
[INFO] [stdout] test src/humanize.rs - humanize::intword (line 42) ... ok
[INFO] [stdout] test src/logging.rs - logging::LoggerHandle::error_sync (line 125) ... ok
[INFO] [stdout] test src/logging.rs - logging::get_logger (line 151) ... ok
[INFO] [stdout] test src/logging.rs - logging::LoggerHandle::debug_sync (line 83) ... ok
[INFO] [stdout] test src/logging/logger.rs - logging::logger::LogRecord::with_extra (line 62) ... ok
[INFO] [stdout] test src/staticfiles.rs - staticfiles::processing (line 36) - compile ... ok
[INFO] [stdout] test src/logging/logger.rs - logging::logger::Logger::debug_sync (line 175) ... ok
[INFO] [stdout] test src/logging/security.rs - logging::security::SecurityLogger::log_auth_event (line 137) ... ok
[INFO] [stdout] test src/logging/params.rs - logging::params::truncate_param (line 155) ... ok
[INFO] [stdout] test src/staticfiles/caching.rs - staticfiles::caching::CacheControlMiddleware (line 322) ... ok
[INFO] [stdout] test src/logging/logger.rs - logging::logger::Logger::error_sync (line 278) ... ok
[INFO] [stdout] test src/logging/logger.rs - logging::logger::Logger::warning_sync (line 221) ... ok
[INFO] [stdout] test src/staticfiles/caching.rs - staticfiles::caching::CachePolicy::long_term (line 111) ... ok
[INFO] [stdout] test src/staticfiles/caching.rs - staticfiles::caching::CacheControlConfig::new (line 202) ... ok
[INFO] [stdout] test src/staticfiles/caching.rs - staticfiles::caching::CachePolicy::short_term (line 127) ... ok
[INFO] [stdout] test src/staticfiles/cdn.rs - staticfiles::cdn::CdnConfig::new (line 44) ... ok
[INFO] [stdout] test src/staticfiles/cdn.rs - staticfiles::cdn::CdnInvalidationRequest::new (line 197) ... ok
[INFO] [stdout] test src/staticfiles/caching.rs - staticfiles::caching::CachePolicy::new (line 66) ... ok
[INFO] [stdout] test src/staticfiles/caching.rs - staticfiles::caching::CachePolicy::no_cache (line 143) ... ok
[INFO] [stdout] test src/staticfiles/checks.rs - staticfiles::checks::CheckMessage::with_hint (line 61) - compile ... ok
[INFO] [stdout] test src/staticfiles/cdn.rs - staticfiles::cdn::CdnUrlGenerator::generate_url (line 121) ... ok
[INFO] [stdout] test src/staticfiles/cdn.rs - staticfiles::cdn::CdnPurgeHelper::new (line 239) ... ok
[INFO] [stdout] test src/staticfiles/cdn.rs - staticfiles::cdn::CdnUrlGenerator::generate_versioned_url (line 164) ... ok
[INFO] [stdout] test src/logging/logger.rs - logging::logger::Logger::info_sync (line 198) ... ok
[INFO] [stdout] test src/logging/params.rs - logging::params::repr_params (line 29) ... ok
[INFO] [stdout] test src/staticfiles/cdn.rs - staticfiles::cdn::CdnPurgeHelper::create_invalidation_request (line 256) ... ok
[INFO] [stdout] test src/staticfiles/cdn.rs - staticfiles::cdn::CdnUrlGenerator::new (line 104) ... ok
[INFO] [stdout] test src/staticfiles/dependency_resolver.rs - staticfiles::dependency_resolver::DependencyGraph::add_file (line 40) ... ok
[INFO] [stdout] test src/staticfiles/handler.rs - staticfiles::handler::StaticFileHandler::with_index_files (line 66) ... ok
[INFO] [stdout] test src/staticfiles/checks.rs - staticfiles::checks::check_static_files_config (line 77) ... ok
[INFO] [stdout] test src/staticfiles/dependency_resolver.rs - staticfiles::dependency_resolver::DependencyGraph::resolve_order (line 79) ... ok
[INFO] [stdout] test src/staticfiles/dependency_resolver.rs - staticfiles::dependency_resolver::DependencyGraph::new (line 24) ... ok
[INFO] [stdout] test src/staticfiles/health.rs - staticfiles::health::HealthCheckManager (line 200) ... ok
[INFO] [stdout] test src/staticfiles/health.rs - staticfiles::health::HealthCheckManager::count (line 272) ... ok
[INFO] [stdout] test src/staticfiles/health.rs - staticfiles::health::HealthCheck::check (line 174) ... ok
[INFO] [stdout] test src/staticfiles/dependency_resolver.rs - staticfiles::dependency_resolver::DependencyGraph::add_dependency (line 59) ... ok
[INFO] [stdout] test src/staticfiles/health.rs - staticfiles::health::HealthCheckManager::register (line 247) ... ok
[INFO] [stdout] test src/staticfiles/health.rs - staticfiles::health::HealthCheckManager::run_checks (line 286) ... ok
[INFO] [stdout] test src/staticfiles/media.rs - staticfiles::media::HasMedia (line 197) ... ok
[INFO] [stdout] test src/staticfiles/health.rs - staticfiles::health::HealthCheckResult::healthy (line 50) ... ok
[INFO] [stdout] test src/staticfiles/health.rs - staticfiles::health::HealthReport::new (line 133) ... ok
[INFO] [stdout] test src/staticfiles/health.rs - staticfiles::health::HealthCheckResult::unhealthy (line 88) ... ok
[INFO] [stdout] test src/staticfiles/health.rs - staticfiles::health::HealthCheckResult::with_metadata (line 107) ... ok
[INFO] [stdout] test src/staticfiles/health.rs - staticfiles::health::HealthCheckResult::degraded (line 69) ... ok
[INFO] [stdout] test src/staticfiles/media.rs - staticfiles::media::Media::add_js (line 65) ... ok
[INFO] [stdout] test src/staticfiles/media.rs - staticfiles::media::Media (line 15) ... ok
[INFO] [stdout] test src/staticfiles/health.rs - staticfiles::health::HealthCheckManager::new (line 232) ... ok
[INFO] [stdout] test src/staticfiles/media.rs - staticfiles::media::Media::render_css (line 115) ... ok
[INFO] [stdout] test src/staticfiles/middleware.rs - staticfiles::middleware::StaticFilesMiddleware (line 289) - compile ... ok
[INFO] [stdout] test src/staticfiles/media.rs - staticfiles::media::Media::render_js (line 152) ... ok
[INFO] [stdout] test src/staticfiles/processing.rs - staticfiles::processing::ProcessingConfig::with_image_optimization (line 165) ... ok
[INFO] [stdout] test src/staticfiles/processing.rs - staticfiles::processing::ProcessingPipeline::process_file (line 238) - compile ... ok
[INFO] [stdout] test src/staticfiles/processing.rs - staticfiles::processing::ProcessingConfig::with_minification (line 131) ... ok
[INFO] [stdout] test src/staticfiles/processing.rs - staticfiles::processing::ProcessingConfig::with_source_maps (line 148) ... ok
[INFO] [stdout] test src/staticfiles/processing/bundle.rs - staticfiles::processing::bundle::AssetBundler::add_dependency (line 58) ... ok
[INFO] [stdout] test src/staticfiles/processing.rs - staticfiles::processing::ProcessingConfig::new (line 112) ... ok
[INFO] [stdout] test src/staticfiles/processing/bundle.rs - staticfiles::processing::bundle::AssetBundler::add_file (line 42) ... ok
[INFO] [stdout] test src/staticfiles/processing.rs - staticfiles::processing::ProcessingPipeline::new (line 209) ... ok
[INFO] [stdout] test src/staticfiles/media.rs - staticfiles::media::Media::add_css (line 48) ... ok
[INFO] [stdout] test src/staticfiles/media.rs - staticfiles::media::Media::merge (line 80) ... ok
[INFO] [stdout] test src/staticfiles/processing/bundle.rs - staticfiles::processing::bundle::AssetBundler::bundle_files (line 126) ... ok
[INFO] [stdout] test src/staticfiles/processing.rs - staticfiles::processing::ProcessingConfig::with_image_quality (line 182) ... ok
[INFO] [stdout] test src/staticfiles/processing/minify.rs - staticfiles::processing::minify::JsMinifier::new (line 148) ... ok
[INFO] [stdout] test src/staticfiles/storage/registry.rs - staticfiles::storage::registry::StorageRegistry (line 19) - compile ... ok
[INFO] [stdout] test src/staticfiles/processing/bundle.rs - staticfiles::processing::bundle::AssetBundler::new (line 26) ... ok
[INFO] [stdout] test src/staticfiles/storage.rs - staticfiles::storage::StaticFilesFinder::find_all (line 267) - compile ... ok
[INFO] [stdout] test src/staticfiles/storage/registry.rs - staticfiles::storage::registry::StorageRegistry::register (line 61) - compile ... ok
[INFO] [stdout] test src/staticfiles/template_integration.rs - staticfiles::template_integration::TemplateStaticConfig::from_storage (line 105) - compile ... ok
[INFO] [stdout] test src/staticfiles/processing/bundle.rs - staticfiles::processing::bundle::AssetBundler::bundle (line 85) ... ok
[INFO] [stdout] test src/staticfiles/processing/bundle.rs - staticfiles::processing::bundle::BundleConfig::add_file (line 208) ... ok
[INFO] [stdout] test src/staticfiles/processing/bundle.rs - staticfiles::processing::bundle::BundleConfig::new (line 189) ... ok
[INFO] [stdout] test src/staticfiles/template_integration.rs - staticfiles::template_integration::TemplateStaticConfig::new (line 60) ... ok
[INFO] [stdout] test src/staticfiles/processing/minify.rs - staticfiles::processing::minify::CssMinifier::with_level (line 40) ... ok
[INFO] [stdout] test src/staticfiles/template_integration.rs - staticfiles::template_integration::TemplateStaticConfig::resolve_url (line 195) ... ok
[INFO] [stdout] test src/staticfiles/processing/minify.rs - staticfiles::processing::minify::CssMinifier::new (line 23) ... ok
[INFO] [stdout] test src/staticfiles/template_integration.rs - staticfiles::template_integration::TemplateStaticConfig::resolve_url (line 171) ... ok
[INFO] [stdout] test src/storage/file.rs - storage::file::FileMetadata::new (line 28) ... ok
[INFO] [stdout] test src/storage/file.rs - storage::file::FileMetadata::with_checksum (line 66) ... ok
[INFO] [stdout] test src/storage/local.rs - storage::local::LocalStorage::new (line 27) ... ok
[INFO] [stdout] test src/storage/memory.rs - storage::memory::InMemoryStorage::base_location (line 93) ... ok
[INFO] [stdout] test src/storage/file.rs - storage::file::FileMetadata::with_content_type (line 51) ... ok
[INFO] [stdout] test src/staticfiles/template_integration.rs - staticfiles::template_integration::TemplateStaticConfig::with_manifest (line 79) ... ok
[INFO] [stdout] test src/staticfiles/template_integration.rs - staticfiles::template_integration::TemplateStaticConfig::resolve_url (line 180) ... ok
[INFO] [stdout] test src/storage/local.rs - storage::local::LocalStorage::ensure_base_dir (line 45) ... ok
[INFO] [stdout] test src/storage/file.rs - storage::file::StoredFile::size (line 108) ... ok
[INFO] [stdout] test src/storage/memory.rs - storage::memory::InMemoryStorage::base_url (line 106) ... ok
[INFO] [stdout] test src/utils_core/checks.rs - utils_core::checks::Check (line 173) ... ok
[INFO] [stdout] test src/utils_core/checks.rs - utils_core::checks (line 8) ... ok
[INFO] [stdout] test src/storage/memory.rs - storage::memory::InMemoryStorage::new (line 56) ... ok
[INFO] [stdout] test src/storage/memory.rs - storage::memory::InMemoryStorage::deconstruct (line 155) ... ok
[INFO] [stdout] test src/storage/file.rs - storage::file::StoredFile::new (line 93) ... ok
[INFO] [stdout] test src/utils_core/checks.rs - utils_core::checks::CheckMessage::debug (line 67) ... ok
[INFO] [stdout] test src/storage/memory.rs - storage::memory::InMemoryStorage::directory_permissions_mode (line 136) ... ok
[INFO] [stdout] test src/storage/memory.rs - storage::memory::InMemoryStorage::with_permissions (line 76) ... ok
[INFO] [stdout] test src/utils_core/checks.rs - utils_core::checks::CheckMessage::warning (line 103) ... ok
[INFO] [stdout] test src/storage/memory.rs - storage::memory::InMemoryStorage::file_permissions_mode (line 119) ... ok
[INFO] [stdout] test src/utils_core/checks.rs - utils_core::checks::CheckMessage::critical (line 139) ... ok
[INFO] [stdout] test src/utils_core/checks.rs - utils_core::checks::CheckRegistry (line 206) ... ok
[INFO] [stdout] test src/utils_core/checks.rs - utils_core::checks::CheckRegistry::global (line 311) ... ok
[INFO] [stdout] test src/utils_core/dateformat.rs - utils_core::dateformat::shortcuts::full_date (line 238) ... ok
[INFO] [stdout] test src/utils_core/dateformat.rs - utils_core::dateformat::shortcuts::iso_date (line 182) ... ok
[INFO] [stdout] test src/utils_core/dateformat.rs - utils_core::dateformat::shortcuts::iso_datetime (line 196) ... ok
[INFO] [stdout] test src/utils_core/checks.rs - utils_core::checks::CheckMessage::error (line 121) ... ok
[INFO] [stdout] test src/utils_core/checks.rs - utils_core::checks::CheckMessage::with_hint (line 157) ... ok
[INFO] [stdout] test src/utils_core/dateformat.rs - utils_core::dateformat::format (line 28) ... ok
[INFO] [stdout] test src/utils_core/dateformat.rs - utils_core::dateformat::shortcuts::eu_date (line 224) ... ok
[INFO] [stdout] test src/utils_core/dateformat.rs - utils_core::dateformat::shortcuts::short_date (line 256) ... ok
[INFO] [stdout] test src/utils_core/dateformat.rs - utils_core::dateformat::shortcuts::time_12 (line 287) ... ok
[INFO] [stdout] test src/utils_core/encoding.rs - utils_core::encoding::escapejs (line 77) ... ok
[INFO] [stdout] test src/utils_core/dateformat.rs - utils_core::dateformat::shortcuts::time_24 (line 273) ... ok
[INFO] [stdout] test src/utils_core/encoding.rs - utils_core::encoding::linebreaksbr (line 299) ... ok
[INFO] [stdout] test src/utils_core/encoding.rs - utils_core::encoding::force_bytes (line 156) ... ok
[INFO] [stdout] test src/utils_core/encoding.rs - utils_core::encoding::force_str (line 138) ... ok
[INFO] [stdout] test src/utils_core/encoding.rs - utils_core::encoding::linebreaks (line 266) ... ok
[INFO] [stdout] test src/utils_core/checks.rs - utils_core::checks::CheckRegistry::run_checks (line 273) ... ok
[INFO] [stdout] test src/utils_core/encoding.rs - utils_core::encoding::slugify (line 112) ... ok
[INFO] [stdout] test src/utils_core/encoding.rs - utils_core::encoding::truncate_chars (line 169) ... ok
[INFO] [stdout] test src/utils_core/checks.rs - utils_core::checks::CheckMessage::info (line 85) ... ok
[INFO] [stdout] test src/utils_core/checks.rs - utils_core::checks::CheckRegistry::register (line 244) ... ok
[INFO] [stdout] test src/utils_core/html.rs - utils_core::html::SafeString::new (line 248) ... ok
[INFO] [stdout] test src/utils_core/html.rs - utils_core::html::conditional_escape (line 224) ... ok
[INFO] [stdout] test src/utils_core/encoding.rs - utils_core::encoding::truncate_words (line 201) ... ok
[INFO] [stdout] test src/utils_core/html.rs - utils_core::html::format_html (line 193) ... ok
[INFO] [stdout] test src/utils_core/encoding.rs - utils_core::encoding::urlencode (line 10) ... ok
[INFO] [stdout] test src/utils_core/html.rs - utils_core::html::SafeString::as_str (line 261) ... ok
[INFO] [stdout] test src/utils_core/html.rs - utils_core::html::strip_spaces_between_tags (line 108) ... ok
[INFO] [stdout] test src/utils_core/encoding.rs - utils_core::encoding::wrap_text (line 222) ... ok
[INFO] [stdout] test src/utils_core/html.rs - utils_core::html::escape (line 9) ... ok
[INFO] [stdout] test src/utils_core/encoding.rs - utils_core::encoding::urldecode (line 37) ... ok
[INFO] [stdout] test src/utils_core/html.rs - utils_core::html::escape_attr (line 154) ... ok
[INFO] [stdout] test src/utils_core/input_validation.rs - utils_core::input_validation::validate_identifier (line 172) ... ok
[INFO] [stdout] test src/utils_core/input_validation.rs - utils_core::input_validation::sanitize_log_input (line 129) ... ok
[INFO] [stdout] test src/utils_core/html.rs - utils_core::html::truncate_html_words (line 287) ... ok
[INFO] [stdout] test src/utils_core/input_validation.rs - utils_core::input_validation::validate_redirect_url (line 49) ... ok
[INFO] [stdout] test src/utils_core/html.rs - utils_core::html::unescape (line 35) ... ok
[INFO] [stdout] test src/utils_core/dateformat.rs - utils_core::dateformat::shortcuts::us_date (line 210) ... ok
[INFO] [stdout] test src/utils_core/lock_recovery.rs - utils_core::lock_recovery::recover_mutex (line 91) ... ok
[INFO] [stdout] test src/utils_core/lock_recovery.rs - utils_core::lock_recovery::recover_rwlock_read (line 30) ... ok
[INFO] [stdout] test src/utils_core/text.rs - utils_core::text::center (line 213) ... ok
[INFO] [stdout] test src/utils_core/text.rs - utils_core::text::capfirst (line 9) ... ok
[INFO] [stdout] test src/utils_core/text.rs - utils_core::text::ordinal (line 79) ... ok
[INFO] [stdout] test src/utils_core/text.rs - utils_core::text::humanize_field_name (line 268) ... ok
[INFO] [stdout] test src/utils_core/text.rs - utils_core::text::intcomma (line 106) ... ok
[INFO] [stdout] test src/utils_core/html.rs - utils_core::html::strip_tags (line 91) ... ok
[INFO] [stdout] test src/utils_core/text.rs - utils_core::text::pluralize (line 59) ... ok
[INFO] [stdout] test src/utils_core/text.rs - utils_core::text::ljust (line 173) ... ok
[INFO] [stdout] test src/utils_core/lock_recovery.rs - utils_core::lock_recovery::recover_rwlock_write (line 60) ... ok
[INFO] [stdout] test src/utils_core/text.rs - utils_core::text::floatcomma (line 142) ... ok
[INFO] [stdout] test src/utils_core/text.rs - utils_core::text::rjust (line 193) ... ok
[INFO] [stdout] test src/utils_core/timezone.rs - utils_core::timezone::get_timezone_name_local (line 188) ... ok
[INFO] [stdout] test src/utils_core/timezone.rs - utils_core::timezone::format_datetime (line 236) ... ok
[INFO] [stdout] test src/utils_core/text.rs - utils_core::text::phone_format (line 241) ... ok
[INFO] [stdout] test src/utils_core/timezone.rs - utils_core::timezone::localtime (line 26) ... ok
[INFO] [stdout] test src/utils_core/timezone.rs - utils_core::timezone::make_aware_utc (line 85) ... ok
[INFO] [stdout] test src/utils_core/timezone.rs - utils_core::timezone::to_timezone (line 134) ... ok
[INFO] [stdout] test src/utils_core/text.rs - utils_core::text::title (line 34) ... ok
[INFO] [stdout] test src/utils_core/timezone.rs - utils_core::timezone::to_local (line 41) ... ok
[INFO] [stdout] test src/utils_core/timezone.rs - utils_core::timezone::parse_datetime (line 216) ... ok
[INFO] [stdout] test src/utils_core/timezone.rs - utils_core::timezone::now (line 13) ... ok
[INFO] [stdout] test src/utils_core/timezone.rs - utils_core::timezone::to_utc (line 56) ... ok
[INFO] [stdout] test src/utils_core/timezone.rs - utils_core::timezone::make_aware_local (line 111) ... ok
[INFO] [stdout] test src/utils_core/timezone.rs - utils_core::timezone::get_timezone_name_utc (line 174) ... ok
[INFO] [stdout] test src/utils_core/timezone.rs - utils_core::timezone::is_aware (line 72) ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 212 passed; 0 failed; 1 ignored; 0 measured; 0 filtered out; finished in 0.66s
[INFO] [stdout] 
[INFO] [stdout] all doctests ran in 4.18s; merged doctests compilation took 3.45s
[INFO] running `Command { std: "docker" "inspect" "c95fea217a6ba62e1695eec439e320fbd3110a2895d0b70c88867ad1a324684b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c95fea217a6ba62e1695eec439e320fbd3110a2895d0b70c88867ad1a324684b", kill_on_drop: false }`
[INFO] [stdout] c95fea217a6ba62e1695eec439e320fbd3110a2895d0b70c88867ad1a324684b
