[INFO] cloning repository https://github.com/alkimiadev/reverse-proxy
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/alkimiadev/reverse-proxy" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Falkimiadev%2Freverse-proxy", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Falkimiadev%2Freverse-proxy'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] f6e62a37efb0f520a2708ef99798e960bcc1c34c
[INFO] testing alkimiadev/reverse-proxy against 1.97.0-beta.6 for beta-1.98-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Falkimiadev%2Freverse-proxy" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/alkimiadev/reverse-proxy
[INFO] finished tweaking git repo https://github.com/alkimiadev/reverse-proxy
[INFO] tweaked toml for git repo https://github.com/alkimiadev/reverse-proxy written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/alkimiadev/reverse-proxy on toolchain 1.97.0-beta.6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/alkimiadev/reverse-proxy already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.97.0-beta.6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded serde_json v1.0.140
[INFO] [stderr]   Downloaded sd-notify v0.4.5
[INFO] [stderr]   Downloaded rusticata-macros v4.1.0
[INFO] [stderr]   Downloaded oid-registry v0.7.1
[INFO] [stderr]   Downloaded asn1-rs-impl v0.2.0
[INFO] [stderr]   Downloaded asn1-rs-derive v0.5.1
[INFO] [stderr]   Downloaded log v0.4.32
[INFO] [stderr]   Downloaded rustc-demangle v0.1.27
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.123
[INFO] [stderr]   Downloaded rustls-native-certs v0.8.1
[INFO] [stderr]   Downloaded rustls-pemfile v2.2.0
[INFO] [stderr]   Downloaded tempfile v3.20.0
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.123
[INFO] [stderr]   Downloaded wasm-bindgen-futures v0.4.73
[INFO] [stderr]   Downloaded yasna v0.5.2
[INFO] [stderr]   Downloaded futures-rustls v0.26.0
[INFO] [stderr]   Downloaded piper v0.2.5
[INFO] [stderr]   Downloaded async-web-client v0.6.3
[INFO] [stderr]   Downloaded async-net v2.0.0
[INFO] [stderr]   Downloaded async-http-codec v0.8.0
[INFO] [stderr]   Downloaded rustls-acme v0.12.1
[INFO] [stderr]   Downloaded der-parser v9.0.0
[INFO] [stderr]   Downloaded rcgen v0.13.2
[INFO] [stderr]   Downloaded dashmap v6.1.0
[INFO] [stderr]   Downloaded asn1-rs v0.6.2
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.123
[INFO] [stderr]   Downloaded cc v1.2.63
[INFO] [stderr]   Downloaded x509-parser v0.16.0
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.123
[INFO] [stderr]   Downloaded openssl-sys v0.9.116
[INFO] [stderr]   Downloaded arc-swap v1.7.1
[INFO] [stderr]   Downloaded hyper-util v0.1.17
[INFO] [stderr]   Downloaded js-sys v0.3.100
[INFO] [stderr]   Downloaded tracing-subscriber v0.3.19
[INFO] [stderr]   Downloaded hyper v1.6.0
[INFO] [stderr]   Downloaded webpki-roots v1.0.7
[INFO] [stderr]   Downloaded axum v0.8.9
[INFO] [stderr]   Downloaded openssl v0.10.80
[INFO] [stderr]   Downloaded rustls v0.23.28
[INFO] [stderr]   Downloaded web-sys v0.3.100
[INFO] [stderr]   Downloaded tokio v1.45.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 7de0dc11a35fee1dcc45347be804c49c22c952f59c9799ccf810652db8a2b8b0
[INFO] running `Command { std: "docker" "start" "7de0dc11a35fee1dcc45347be804c49c22c952f59c9799ccf810652db8a2b8b0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7de0dc11a35fee1dcc45347be804c49c22c952f59c9799ccf810652db8a2b8b0", 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" "7de0dc11a35fee1dcc45347be804c49c22c952f59c9799ccf810652db8a2b8b0" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7de0dc11a35fee1dcc45347be804c49c22c952f59c9799ccf810652db8a2b8b0", 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" "7de0dc11a35fee1dcc45347be804c49c22c952f59c9799ccf810652db8a2b8b0" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling memchr v2.8.1
[INFO] [stderr]    Compiling futures-io v0.3.32
[INFO] [stderr]    Compiling autocfg v1.5.1
[INFO] [stderr]    Compiling shlex v2.0.1
[INFO] [stderr]    Compiling log v0.4.32
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling rustls-pki-types v1.12.0
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling http v1.4.2
[INFO] [stderr]    Compiling futures-task v0.3.32
[INFO] [stderr]    Compiling mio v1.2.1
[INFO] [stderr]    Compiling socket2 v0.5.10
[INFO] [stderr]    Compiling parking v2.2.1
[INFO] [stderr]    Compiling num-conv v0.2.2
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling cc v1.2.63
[INFO] [stderr]    Compiling time-macros v0.2.27
[INFO] [stderr]    Compiling rustls v0.23.28
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling bitflags v2.13.0
[INFO] [stderr]    Compiling futures-lite v2.6.1
[INFO] [stderr]    Compiling async-io v2.6.0
[INFO] [stderr]    Compiling typenum v1.20.1
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling zerocopy v0.8.52
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling piper v0.2.5
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling oid-registry v0.7.1
[INFO] [stderr]    Compiling async-task v4.7.1
[INFO] [stderr]    Compiling utf8parse v0.2.2
[INFO] [stderr]    Compiling anstyle-parse v1.0.0
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]    Compiling event-listener v5.4.1
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling webpki-roots v1.0.7
[INFO] [stderr]    Compiling socket2 v0.6.4
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling anstyle v1.0.14
[INFO] [stderr]    Compiling regex-syntax v0.6.29
[INFO] [stderr]    Compiling event-listener-strategy v0.5.4
[INFO] [stderr]    Compiling time v0.3.47
[INFO] [stderr]    Compiling async-channel v2.5.0
[INFO] [stderr]    Compiling colorchoice v1.0.5
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling regex-syntax v0.8.11
[INFO] [stderr]    Compiling pem v3.0.6
[INFO] [stderr]    Compiling anstream v1.0.0
[INFO] [stderr]    Compiling blocking v1.6.2
[INFO] [stderr]    Compiling webpki-roots v0.26.11
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling data-encoding v2.11.0
[INFO] [stderr]    Compiling aws-lc-sys v0.41.0
[INFO] [stderr]    Compiling clap_lex v1.1.0
[INFO] [stderr]    Compiling openssl-probe v0.1.6
[INFO] [stderr]    Compiling winnow v0.7.15
[INFO] [stderr]    Compiling overload v0.1.1
[INFO] [stderr]    Compiling toml_write v0.1.2
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling nu-ansi-term v0.46.0
[INFO] [stderr]    Compiling chrono v0.4.45
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling rustls-native-certs v0.8.1
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling rustls-pemfile v2.2.0
[INFO] [stderr]    Compiling rusticata-macros v4.1.0
[INFO] [stderr]    Compiling serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling sd-notify v0.4.5
[INFO] [stderr]    Compiling arc-swap v1.7.1
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling yasna v0.5.2
[INFO] [stderr]    Compiling regex-automata v0.1.10
[INFO] [stderr]    Compiling dashmap v6.1.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling matchers v0.1.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling displaydoc v0.2.6
[INFO] [stderr]    Compiling asn1-rs-impl v0.2.0
[INFO] [stderr]    Compiling asn1-rs-derive v0.5.1
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling tokio v1.45.1
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling asn1-rs v0.6.2
[INFO] [stderr]    Compiling regex v1.12.4
[INFO] [stderr]    Compiling axum-core v0.5.6
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand v0.9.4
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling polling v3.11.0
[INFO] [stderr]    Compiling der-parser v9.0.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling async-net v2.0.0
[INFO] [stderr]    Compiling x509-parser v0.16.0
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling tracing-serde v0.2.0
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling async-http-codec v0.8.0
[INFO] [stderr]    Compiling tracing-subscriber v0.3.19
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tower v0.5.2
[INFO] [stderr]    Compiling h2 v0.4.14
[INFO] [stderr]    Compiling aws-lc-rs v1.17.0
[INFO] [stderr]    Compiling hyper v1.6.0
[INFO] [stderr]    Compiling rustls-webpki v0.103.13
[INFO] [stderr]    Compiling rcgen v0.13.2
[INFO] [stderr]    Compiling hyper-util v0.1.17
[INFO] [stderr]    Compiling axum v0.8.9
[INFO] [stderr]    Compiling futures-rustls v0.26.0
[INFO] [stderr]    Compiling tokio-rustls v0.26.2
[INFO] [stderr]    Compiling hyper-rustls v0.27.9
[INFO] [stderr]    Compiling async-web-client v0.6.3
[INFO] [stderr]    Compiling rustls-acme v0.12.1
[INFO] [stderr]    Compiling reverse-proxy v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 19s
[INFO] running `Command { std: "docker" "inspect" "7de0dc11a35fee1dcc45347be804c49c22c952f59c9799ccf810652db8a2b8b0", 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" "7de0dc11a35fee1dcc45347be804c49c22c952f59c9799ccf810652db8a2b8b0" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling displaydoc v0.2.6
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling tracing v0.1.41
[INFO] [stderr]    Compiling pkg-config v0.3.33
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling asn1-rs-derive v0.5.1
[INFO] [stderr]    Compiling asn1-rs-impl v0.2.0
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling openssl v0.10.80
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling futures-lite v2.6.1
[INFO] [stderr]    Compiling piper v0.2.5
[INFO] [stderr]    Compiling native-tls v0.2.18
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling axum-core v0.5.6
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling openssl-sys v0.9.116
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling tokio v1.45.1
[INFO] [stderr]    Compiling tracing-serde v0.2.0
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling blocking v1.6.2
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling asn1-rs v0.6.2
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling tracing-subscriber v0.3.19
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling oid-registry v0.7.1
[INFO] [stderr]    Compiling der-parser v9.0.0
[INFO] [stderr]    Compiling x509-parser v0.16.0
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling async-http-codec v0.8.0
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling rcgen v0.13.2
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tower v0.5.2
[INFO] [stderr]    Compiling tokio-rustls v0.26.2
[INFO] [stderr]    Compiling tower-http v0.6.11
[INFO] [stderr]    Compiling h2 v0.4.14
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling polling v3.11.0
[INFO] [stderr]    Compiling tempfile v3.20.0
[INFO] [stderr]    Compiling async-io v2.6.0
[INFO] [stderr]    Compiling async-net v2.0.0
[INFO] [stderr]    Compiling async-web-client v0.6.3
[INFO] [stderr]    Compiling rustls-acme v0.12.1
[INFO] [stderr]    Compiling hyper v1.6.0
[INFO] [stderr]    Compiling hyper-util v0.1.17
[INFO] [stderr]    Compiling axum v0.8.9
[INFO] [stderr]    Compiling hyper-rustls v0.27.9
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling reverse-proxy v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 23s
[INFO] running `Command { std: "docker" "inspect" "7de0dc11a35fee1dcc45347be804c49c22c952f59c9799ccf810652db8a2b8b0", 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" "7de0dc11a35fee1dcc45347be804c49c22c952f59c9799ccf810652db8a2b8b0" "/opt/rustwide/cargo-home/bin/cargo" "+1.97.0-beta.6" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.50s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/reverse_proxy-3f0b1ac57c6f603b)
[INFO] [stdout] 
[INFO] [stdout] running 212 tests
[INFO] [stdout] test admin::auth::tests::load_admin_key_empty_path_returns_none ... ok
[INFO] [stdout] test admin::auth::tests::load_admin_key_missing_file_returns_none ... ok
[INFO] [stdout] test admin::auth::tests::load_admin_key_trims_whitespace ... ok
[INFO] [stdout] test admin::auth::tests::load_admin_key_valid_file_returns_hash ... ok
[INFO] [stdout] test admin::auth::tests::hash_is_deterministic ... ok
[INFO] [stdout] test cli::tests::cli_all_flags ... ok
[INFO] [stdout] test cli::tests::cli_allow_wildcard_bind_flag ... ok
[INFO] [stdout] test cli::tests::cli_version_flag ... ok
[INFO] [stdout] test cli::tests::cli_validate_flag ... ok
[INFO] [stdout] test cli::tests::load_config_invalid_toml ... ok
[INFO] [stdout] test cli::tests::load_config_allow_wildcard_from_config_only ... ok
[INFO] [stdout] test admin::auth::tests::load_admin_key_empty_file_returns_error ... ok
[INFO] [stdout] test cli::tests::load_config_missing_file ... ok
[INFO] [stdout] test cli::tests::cli_custom_config_path ... ok
[INFO] [stdout] test cli::tests::parse_from_vec ... ok
[INFO] [stdout] test cli::tests::load_config_validation_fails_reports_errors ... ok
[INFO] [stdout] test cli::tests::load_config_valid_file ... ok
[INFO] [stdout] test cli::tests::load_config_wildcard_bind_or_logic ... ok
[INFO] [stdout] test config::dynamic_config::tests::build_routing_table_multiple_sites ... ok
[INFO] [stdout] test config::dynamic_config::tests::dynamic_config_from_sites_builds_routing_table ... ok
[INFO] [stdout] test config::dynamic_config::tests::normalize_host_converts_to_lowercase ... ok
[INFO] [stdout] test config::dynamic_config::tests::normalize_host_ipv6_bare ... ok
[INFO] [stdout] test config::dynamic_config::tests::normalize_host_ipv6_with_port ... ok
[INFO] [stdout] test config::dynamic_config::tests::normalize_host_ipv6_uppercase ... ok
[INFO] [stdout] test config::dynamic_config::tests::normalize_host_strips_port ... ok
[INFO] [stdout] test config::dynamic_config::tests::concurrent_reload_serialization ... ok
[INFO] [stdout] test cli::tests::cli_default_config_path ... ok
[INFO] [stdout] test config::dynamic_config::tests::normalize_host_ipv6_long_with_port ... ok
[INFO] [stdout] test config::dynamic_config::tests::normalize_host_empty_string ... ok
[INFO] [stdout] test config::dynamic_config::tests::normalize_host_no_port ... ok
[INFO] [stdout] test cli::tests::load_config_wildcard_bind_rejected_without_flag ... ok
[INFO] [stdout] test config::dynamic_config::tests::routing_table_lookup_finds_site ... ok
[INFO] [stdout] test config::dynamic_config::tests::routing_table_lookup_unknown_host ... ok
[INFO] [stdout] test config::dynamic_config::tests::static_config_diff_detects_changes ... ok
[INFO] [stdout] test config::test_fixtures::tests::test_static_config_fixture_is_valid ... ok
[INFO] [stdout] test config::static_config::tests::defaults_applied_when_omitted ... ok
[INFO] [stdout] test config::static_config::tests::logging_with_file_path ... ok
[INFO] [stdout] test config::static_config::tests::deserialize_multi_config ... ok
[INFO] [stdout] test config::test_fixtures::tests::test_dynamic_config_fixture_is_valid ... ok
[INFO] [stdout] test config::dynamic_config::tests::routing_table_lookup_case_insensitive ... ok
[INFO] [stdout] test config::dynamic_config::tests::routing_table_lookup_strips_port ... ok
[INFO] [stdout] test config::static_config::tests::deserialize_shared_ip_san ... ok
[INFO] [stdout] test config::static_config::tests::site_defaults ... ok
[INFO] [stdout] test config::tests::read_and_validate_config_validation_fails ... ok
[INFO] [stdout] test config::validation::tests::admin_key_path_absolute_is_valid ... ok
[INFO] [stdout] test config::validation::tests::admin_key_path_empty_is_valid ... ok
[INFO] [stdout] test config::validation::tests::admin_key_path_relative_is_invalid ... ok
[INFO] [stdout] test config::validation::tests::collects_all_errors ... ok
[INFO] [stdout] test config::validation::tests::rule10_duplicate_http_bind ... ok
[INFO] [stdout] test config::validation::tests::rule11_http_and_https_port_same ... ok
[INFO] [stdout] test config::validation::tests::rule13_http_port_disabled_valid ... ok
[INFO] [stdout] test config::tests::read_and_validate_config_missing_file ... ok
[INFO] [stdout] test config::validation::tests::rule14_health_check_port_conflict ... ok
[INFO] [stdout] test config::validation::tests::rule12_https_port_zero ... ok
[INFO] [stdout] test config::validation::tests::rule16_hostname_normalized_lowercase ... ok
[INFO] [stdout] test config::validation::tests::rule15_site_host_contains_port ... ok
[INFO] [stdout] test config::validation::tests::rule16_site_host_is_ip ... ok
[INFO] [stdout] test config::validation::tests::rule14_health_check_port_conflict_with_http ... ok
[INFO] [stdout] test config::tests::read_and_validate_config_wildcard_bind_allowed_with_flag ... ok
[INFO] [stdout] test config::tests::read_and_validate_config_wildcard_bind_rejected_without_flag ... ok
[INFO] [stdout] test config::dynamic_config::tests::arcswap_swap_visible_after_reload ... ok
[INFO] [stdout] test config::validation::tests::rule17_upstream_empty_host ... ok
[INFO] [stdout] test config::validation::tests::rule17_upstream_hostname_with_dots ... ok
[INFO] [stdout] test config::validation::tests::rule17_upstream_invalid_ipv6_bracket ... ok
[INFO] [stdout] test config::validation::tests::rule17_upstream_invalid_hostname_chars ... ok
[INFO] [stdout] test config::validation::tests::rule17_upstream_invalid_special_chars ... ok
[INFO] [stdout] test config::validation::tests::rule17_upstream_missing_port ... ok
[INFO] [stdout] test config::validation::tests::rule17_upstream_port_zero ... ok
[INFO] [stdout] test config::validation::tests::rule17_upstream_valid_ipv4 ... ok
[INFO] [stdout] test config::validation::tests::rule17_upstream_valid_ipv6_bracket ... ok
[INFO] [stdout] test config::validation::tests::rule17_upstream_valid_hostname ... ok
[INFO] [stdout] test config::dynamic_config::tests::reload_second_time_different_static_changes ... ok
[INFO] [stdout] test config::dynamic_config::tests::reload_rejects_wildcard_bind_when_flag_false ... ok
[INFO] [stdout] test config::validation::tests::rule17_upstream_valid_ipv6_bracket_full ... ok
[INFO] [stdout] test config::validation::tests::rule18_upstream_scheme_invalid ... ok
[INFO] [stdout] test config::validation::tests::rule19_acme_contact_empty ... ok
[INFO] [stdout] test config::validation::tests::rule19_acme_contact_mailto_no_at_sign ... ok
[INFO] [stdout] test config::validation::tests::rule19_acme_contact_valid_mailto ... ok
[INFO] [stdout] test config::validation::tests::rule17_upstream_with_scheme ... ok
[INFO] [stdout] test config::validation::tests::rule19_acme_contact_not_mailto ... ok
[INFO] [stdout] test config::validation::tests::rule19_acme_contact_mailto_empty_email ... ok
[INFO] [stdout] test config::validation::tests::rule1_no_listeners ... ok
[INFO] [stdout] test config::validation::tests::rule2_wildcard_bind_allowed_by_cli_flag ... ok
[INFO] [stdout] test config::validation::tests::rule2_wildcard_bind_or_logic ... ok
[INFO] [stdout] test config::validation::tests::rule2_wildcard_bind_allowed_by_config_flag ... ok
[INFO] [stdout] test config::validation::tests::rule2_wildcard_bind_rejected ... ok
[INFO] [stdout] test config::validation::tests::rule5_cert_path_not_readable ... ok
[INFO] [stdout] test config::validation::tests::rule3_duplicate_https_bind ... ok
[INFO] [stdout] test config::validation::tests::rule4_acme_domains_empty ... ok
[INFO] [stdout] test config::validation::tests::rule5_manual_cert_missing ... ok
[INFO] [stdout] test config::validation::tests::rule6_site_host_empty ... ok
[INFO] [stdout] test config::validation::tests::rule7_duplicate_site_host ... ok
[INFO] [stdout] test config::validation::tests::rule6_site_upstream_empty ... ok
[INFO] [stdout] test config::validation::tests::rule5_only_cert_missing ... ok
[INFO] [stdout] test config::validation::tests::rule9_body_limit_bytes_zero ... ok
[INFO] [stdout] test config::validation::tests::rule8_requests_per_second_zero ... ok
[INFO] [stdout] test config::validation::tests::rule5_only_key_missing ... ok
[INFO] [stdout] test config::validation::tests::valid_config_passes ... ok
[INFO] [stdout] test config::validation::tests::rule5_cert_path_readable ... ok
[INFO] [stdout] test health::tests::test_health_check_binds_to_localhost ... ok
[INFO] [stdout] test logging::format::tests::kv_visitor_escapes_quotes_in_values ... ok
[INFO] [stdout] test logging::format::tests::kv_visitor_formats_simple_key_value ... ok
[INFO] [stdout] test logging::format::tests::kv_visitor_handles_empty ... ok
[INFO] [stdout] test logging::format::tests::kv_visitor_handles_numeric_values ... ok
[INFO] [stdout] test logging::format::tests::kv_visitor_quotes_values_with_spaces ... ok
[INFO] [stdout] test config::dynamic_config::tests::reload_accepts_wildcard_bind_when_flag_true ... ok
[INFO] [stdout] test logging::tests::init_creates_log_directory_and_file ... ok
[INFO] [stdout] test proxy::body_limit::tests::default_body_limit_is_100mb ... ok
[INFO] [stdout] 2026-07-09T15:49:22.620768Z  WARN reverse_proxy::proxy::error: Bad Gateway host=example.com upstream=127.0.0.1:8080 status=502
[INFO] [stdout] test proxy::error::tests::bad_gateway_content_type ... ok
[INFO] [stdout] 2026-07-09T15:49:22.621520Z  WARN reverse_proxy::proxy::error: Bad Gateway host=example.com upstream=127.0.0.1:8080 status=502
[INFO] [stdout] test proxy::error::tests::bad_gateway_response ... ok
[INFO] [stdout] test proxy::error::tests::error_display_matches_body ... ok
[INFO] [stdout] 2026-07-09T15:49:22.635829Z  WARN reverse_proxy::proxy::error: Gateway Timeout host=example.com upstream=127.0.0.1:8080 status=504
[INFO] [stdout] test proxy::error::tests::gateway_timeout_content_type ... ok
[INFO] [stdout] 2026-07-09T15:49:22.639380Z  WARN reverse_proxy::proxy::error: Gateway Timeout host=example.com upstream=127.0.0.1:8080 status=504
[INFO] [stdout] test proxy::error::tests::gateway_timeout_response ... ok
[INFO] [stdout] 2026-07-09T15:49:22.643327Z  INFO reverse_proxy::proxy::error: RATE_LIMIT client_ip=192.168.1.1 host=example.com path=/api status=429
[INFO] [stdout] test proxy::error::tests::too_many_requests_content_type ... ok
[INFO] [stdout] 2026-07-09T15:49:22.644246Z  INFO reverse_proxy::proxy::error: RATE_LIMIT client_ip=192.168.1.1 host=example.com path=/api status=429
[INFO] [stdout] test proxy::error::tests::too_many_requests_response ... ok
[INFO] [stdout] test config::validation::tests::admin_key_path_traversal_is_invalid ... ok
[INFO] [stdout] test config::tests::read_and_validate_config_invalid_toml ... ok
[INFO] [stdout] [2m2026-07-09T15:49:22.700954Z[0m [32m INFO[0m [2mreverse_proxy::logging::format::tests[0m[2m:[0m [3mprefix[0m[2m=[0m"REQUEST" [3mclient_ip[0m[2m=[0m203.0.113.50 [3mhost[0m[2m=[0mgit.alk.dev [3mmethod[0m[2m=[0mGET [3mpath[0m[2m=[0m/user/repo [3mstatus[0m[2m=[0m200 [3mupstream[0m[2m=[0m127.0.0.1:3000 [3mduration_ms[0m[2m=[0m45
[INFO] [stdout] [2m2026-07-09T15:49:22.701072Z[0m [33m WARN[0m [2mreverse_proxy::logging::format::tests[0m[2m:[0m [3mprefix[0m[2m=[0m"UPSTREAM_ERROR" [3mhost[0m[2m=[0mgit.alk.dev [3mupstream[0m[2m=[0m127.0.0.1:3000 [3merror[0m[2m=[0mconnection refused
[INFO] [stdout] test proxy::handler::tests::test_build_upstream_uri_https ... ok
[INFO] [stdout] test logging::format::tests::log_macros_compile ... ok
[INFO] [stdout] test proxy::handler::tests::test_build_upstream_uri_with_query ... ok
[INFO] [stdout] test config::tests::read_and_validate_config_valid_file ... ok
[INFO] [stdout] test proxy::handler::tests::test_build_upstream_uri_without_query ... ok
[INFO] [stdout] test config::dynamic_config::tests::reload_second_time_no_further_static_changes ... ok
[INFO] [stdout] test config::dynamic_config::tests::reload_rejects_invalid_config ... ok
[INFO] [stdout] test proxy::headers::tests::inject_proxy_headers_preserves_host ... ok
[INFO] [stdout] test proxy::headers::tests::inject_proxy_headers_sets_x_real_ip ... ok
[INFO] [stdout] test proxy::headers::tests::inject_proxy_headers_sets_x_forwarded_proto_to_https ... ok
[INFO] [stdout] test proxy::headers::tests::remove_hop_by_hop_empty_headers ... ok
[INFO] [stdout] test proxy::headers::tests::inject_proxy_headers_replaces_x_forwarded_for ... ok
[INFO] [stdout] test proxy::headers::tests::remove_hop_by_hop_removes_all_listed_headers ... ok
[INFO] [stdout] test rate_limit::bucket::tests::normalize_ipv4_unchanged ... ok
[INFO] [stdout] test rate_limit::bucket::tests::normalize_loopback_ipv6 ... ok
[INFO] [stdout] test rate_limit::bucket::tests::normalize_ipv6_truncates_to_64_prefix ... ok
[INFO] [stdout] test rate_limit::bucket::tests::normalize_ipv6_already_64_prefix ... ok
[INFO] [stdout] test rate_limit::bucket::tests::token_bucket_config_reload_caps_tokens ... ok
[INFO] [stdout] test rate_limit::bucket::tests::token_bucket_consume_within_burst ... ok
[INFO] [stdout] test rate_limit::bucket::tests::normalize_ipv6_link_local ... ok
[INFO] [stdout] test proxy::headers::tests::remove_hop_by_hop_preserves_other_headers ... ok
[INFO] [stdout] test rate_limit::bucket::tests::token_bucket_starts_full ... ok
[INFO] [stdout] test rate_limit::bucket::tests::token_bucket_reject_when_empty ... ok
[INFO] [stdout] test config::tests::read_and_validate_config_mtime_change_detected ... ok
[INFO] [stdout] test rate_limit::tests::check_and_consume_allows_within_burst ... ok
[INFO] [stdout] test rate_limit::tests::check_and_consume_ipv6_normalized_to_64 ... ok
[INFO] [stdout] test rate_limit::tests::check_and_consume_per_ip_independent ... ok
[INFO] [stdout] test rate_limit::bucket::tests::token_bucket_refills_over_time ... ok
[INFO] [stdout] test rate_limit::tests::check_and_consume_rejects_above_burst ... ok
[INFO] [stdout] test rate_limit::tests::config_reload_adopted_on_next_request ... ok
[INFO] [stdout] test rate_limit::tests::evict_removes_stale_entries ... ok
[INFO] [stdout] test shutdown::tests::graceful_shutdown_custom_timeout ... ok
[INFO] [stdout] test shutdown::tests::graceful_shutdown_new_default_timeout ... ok
[INFO] [stdout] test shutdown::tests::graceful_shutdown_subscribe_receives_signal ... ok
[INFO] [stdout] test shutdown::tests::graceful_shutdown_trigger ... ok
[INFO] [stdout] 2026-07-09T15:49:22.839207Z ERROR reverse_proxy::shutdown: event="CONFIG_RELOAD" status="error" error=Failed to parse config file: TOML parse error at line 1, column 9
[INFO] [stdout]   |
[INFO] [stdout] 1 | invalid toml {{{
[INFO] [stdout]   |         ^
[INFO] [stdout] expected `.`, `=`
[INFO] [stdout] 
[INFO] [stdout] test shutdown::tests::sighup_reload_invalid_config_keeps_old ... ok
[INFO] [stdout] 2026-07-09T15:49:22.859913Z ERROR reverse_proxy::shutdown: event="CONFIG_RELOAD" status="error" error=IO error reading config file: No such file or directory (os error 2)
[INFO] [stdout] test shutdown::tests::sighup_reload_missing_file_logs_error ... ok
[INFO] [stdout] 2026-07-09T15:49:22.862777Z  WARN reverse_proxy::shutdown: static config fields changed (restart required): listeners, admin_key_path event="CONFIG_RELOAD" status="warning"
[INFO] [stdout] 2026-07-09T15:49:22.862924Z  INFO reverse_proxy::shutdown: event="CONFIG_RELOAD" status="success"
[INFO] [stdout] test shutdown::tests::sighup_reload_valid_config ... ok
[INFO] [stdout] test tls::acceptor::tests::test_acme_tls_alpn_value ... ok
[INFO] [stdout] test tls::acceptor::tests::test_build_acme_server_config ... ok
[INFO] [stdout] test tls::acceptor::tests::test_setup_tls_acme_missing_cache_dir ... ok
[INFO] [stdout] test tls::acceptor::tests::test_setup_tls_acme_missing_domains ... ok
[INFO] [stdout] test tls::acceptor::tests::test_setup_tls_manual_missing_cert_path ... ok
[INFO] [stdout] test tls::acceptor::tests::test_setup_tls_manual_missing_key_path ... ok
[INFO] [stdout] test tls::acceptor::tests::test_setup_tls_unknown_mode ... ok
[INFO] [stdout] test tls::acme::tests::test_acme_config_custom_directory ... ok
[INFO] [stdout] test tls::acme::tests::test_acme_config_multiple_domains ... ok
[INFO] [stdout] test tls::acme::tests::test_acme_config_production_directory ... ok
[INFO] [stdout] test tls::acme::tests::test_acme_config_staging_directory ... ok
[INFO] [stdout] 2026-07-09T15:49:22.896242Z  INFO reverse_proxy::tls::acme: ACME state machine created domains=["test.example.com"] cache_dir=/tmp/.tmp0fnL2I directory=https://acme-staging-v02.api.letsencrypt.org/directory
[INFO] [stdout] test tls::acme::tests::test_acme_setup_creates_resolver ... ok
[INFO] [stdout] test rate_limit::bucket::tests::token_bucket_config_reload_adopts_new_rate ... ok
[INFO] [stdout] 2026-07-09T15:49:23.001274Z  INFO reverse_proxy::proxy::handler: loaded system root certificates certs_loaded=121 errors=0
[INFO] [stdout] test proxy::handler::tests::missing_host_returns_400 ... ok
[INFO] [stdout] test tls::config::tests::test_cipher_suite_restriction ... ok
[INFO] [stdout] test tls::config::tests::test_load_certs_empty_file ... ok
[INFO] [stdout] test health::tests::test_health_check_returns_200 ... ok
[INFO] [stdout] test tls::config::tests::test_load_certs_nonexistent_file ... ok
[INFO] [stdout] 2026-07-09T15:49:23.062255Z  INFO reverse_proxy::proxy::handler: loaded system root certificates certs_loaded=121 errors=0
[INFO] [stdout] 2026-07-09T15:49:23.063001Z  INFO reverse_proxy::admin::handler: event="ADMIN_KEY_ROTATION" status="success"
[INFO] [stdout] test proxy::handler::tests::unknown_host_returns_404 ... ok
[INFO] [stdout] test tls::config::tests::test_load_private_key_nonexistent_file ... ok
[INFO] [stdout] test tls::config::tests::test_no_chacha20_for_tls12 ... ok
[INFO] [stdout] test health::tests::test_admin_rotate_key ... ok
[INFO] [stdout] test tls::redirect::tests::test_redirect_url_empty_path ... ok
[INFO] [stdout] test tls::redirect::tests::test_redirect_url_ipv4_host ... ok
[INFO] [stdout] test tls::redirect::tests::test_redirect_url_ipv6_host ... ok
[INFO] [stdout] test tls::redirect::tests::test_redirect_url_ipv6_host_non_standard_https_port ... ok
[INFO] [stdout] test tls::redirect::tests::test_redirect_url_ipv6_host_with_port ... ok
[INFO] [stdout] test tls::redirect::tests::test_redirect_url_non_standard_port ... ok
[INFO] [stdout] test tls::redirect::tests::test_redirect_url_path_without_leading_slash ... ok
[INFO] [stdout] test tls::redirect::tests::test_redirect_url_root_path_with_query ... ok
[INFO] [stdout] test tls::redirect::tests::test_redirect_url_standard_443 ... ok
[INFO] [stdout] test tls::redirect::tests::test_redirect_url_strips_host_port ... ok
[INFO] [stdout] test health::tests::test_admin_reload_with_wrong_token_returns_401 ... ok
[INFO] [stdout] test health::tests::test_health_endpoint_always_200 ... ok
[INFO] [stdout] test tls::redirect::tests::test_redirect_url_strips_host_port_non_standard_https ... ok
[INFO] [stdout] test health::tests::test_admin_reload_with_no_token_returns_401 ... ok
[INFO] [stdout] test tls::redirect::tests::test_redirect_url_with_path ... ok
[INFO] [stdout] test utils::tests::strip_port_ipv6_bare ... ok
[INFO] [stdout] test utils::tests::strip_port_ipv6_with_long_address ... ok
[INFO] [stdout] test utils::tests::strip_port_ipv6_with_port ... ok
[INFO] [stdout] test utils::tests::strip_port_plain ... ok
[INFO] [stdout] test tls::redirect::tests::test_redirect_url_with_query ... ok
[INFO] [stdout] test tls::redirect::tests::test_redirect_url_with_path_and_query ... ok
[INFO] [stdout] test utils::tests::strip_port_ipv4_with_port ... ok
[INFO] [stdout] test utils::tests::strip_port_with_port ... ok
[INFO] [stdout] 2026-07-09T15:49:23.124252Z  WARN reverse_proxy::admin::handler: static config fields changed (restart required): listeners, admin_key_path
[INFO] [stdout] 2026-07-09T15:49:23.124362Z  INFO reverse_proxy::admin::handler: event="CONFIG_RELOAD" status="success" source="admin"
[INFO] [stdout] test health::tests::test_admin_reload_with_valid_token ... ok
[INFO] [stdout] test health::tests::test_admin_disabled_returns_404 ... ok
[INFO] [stdout] 2026-07-09T15:49:23.193875Z  WARN reverse_proxy::rate_limit: RATE_LIMIT client_ip=127.0.0.1 host=127.0.0.1:41701 path=/ status=429
[INFO] [stdout] test health::tests::test_admin_status_with_valid_token ... ok
[INFO] [stdout] test rate_limit::tests::middleware_ignores_xff_header_same_bucket ... ok
[INFO] [stdout] test rate_limit::bucket::tests::token_bucket_caps_at_max ... ok
[INFO] [stdout] test rate_limit::tests::middleware_rejects_without_connect_info ... ok
[INFO] [stdout] 2026-07-09T15:49:23.256023Z  WARN reverse_proxy::rate_limit: RATE_LIMIT client_ip=127.0.0.1 host=127.0.0.1:35839 path=/ status=429
[INFO] [stdout] test tls::config::tests::test_build_manual_server_config ... ok
[INFO] [stdout] test tls::config::tests::test_protocol_versions_configured ... ok
[INFO] [stdout] test tls::config::tests::test_load_private_key_from_pem ... ok
[INFO] [stdout] test tls::config::tests::test_load_certs_from_pem ... ok
[INFO] [stdout] test tls::config::tests::test_build_manual_server_config_from_files ... ok
[INFO] [stdout] test rate_limit::tests::middleware_uses_connect_info_without_xff_header ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 212 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.87s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/reverse_proxy-3fbdf588f8a95250)
[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/integration_test.rs (/opt/rustwide/target/debug/deps/integration_test-04e01c68719bb2c4)
[INFO] [stdout] 
[INFO] [stdout] running 37 tests
[INFO] [stdout] test test_body_limit_default_is_100mb ... ok
[INFO] [stdout] test test_graceful_shutdown_custom_timeout ... ok
[INFO] [stdout] test test_health_check_local_port_binds_localhost ... ok
[INFO] [stdout] test test_http_redirect_empty_host_returns_400 ... ok
[INFO] [stdout] test test_http_redirect_no_host_header_returns_400 ... ok
[INFO] [stdout] test test_config_fixtures ... ok
[INFO] [stdout] test test_graceful_shutdown_subscribe_multiple_receivers ... ok
[INFO] [stdout] test test_graceful_shutdown_trigger ... ok
[INFO] [stdout] test test_health_check_binds_random_port_when_zero ... ok
[INFO] [stdout] test test_rate_limit_eviction_task ... ok
[INFO] [stdout] test test_http_redirect_non_443_port_included_in_url ... ok
[INFO] [stdout] test test_body_limit_allows_request_within_limit ... ok
[INFO] [stdout] test test_rate_limit_429_response_body ... ok
[INFO] [stdout] test test_graceful_shutdown_with_health_check ... ok
[INFO] [stdout] test test_body_limit_allows_request_at_exact_limit ... ok
[INFO] [stdout] test test_sighup_config_reload_invalid_config_keeps_old ... ok
[INFO] [stdout] test test_sighup_config_reload_valid_config ... ok
[INFO] [stdout] test test_http_redirect_port_443_omitted_from_url ... ok
[INFO] [stdout] test test_http_redirect_returns_301_with_location ... ok
[INFO] [stdout] test test_validate_missing_config_file_exits_1 ... ok
[INFO] [stdout] test test_validate_invalid_config_exits_1 ... ok
[INFO] [stdout] test test_validate_valid_config_exits_0 ... ok
[INFO] [stdout] test test_http_redirect_preserves_query_string ... ok
[INFO] [stdout] test test_validate_wildcard_bind_via_cli_flag ... ok
[INFO] [stdout] test test_rate_limit_allows_within_burst ... ok
[INFO] [stdout] test test_http_redirect_acme_challenge_returns_404 ... ok
[INFO] [stdout] test test_body_limit_empty_body_request_succeeds ... ok
[INFO] [stdout] test test_rate_limit_xff_header_ignored_same_bucket ... ok
[INFO] [stdout] test test_rate_limit_per_ip_independent ... ok
[INFO] [stdout] test test_self_signed_cert_generation ... ok
[INFO] [stdout] test test_rate_limit_rejects_above_burst ... ok
[INFO] [stdout] test test_upstream_spawn_and_connect ... ok
[INFO] [stdout] test test_rate_limit_without_connect_info_rejected_with_429 ... ok
[INFO] [stdout] test test_http_redirect_strips_host_port ... ok
[INFO] [stdout] test test_health_check_local_port_returns_200 ... ok
[INFO] [stdout] test test_body_limit_content_length_header_rejection ... ok
[INFO] [stdout] test test_body_limit_rejects_oversized_request ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 37 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.24s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests reverse_proxy
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "7de0dc11a35fee1dcc45347be804c49c22c952f59c9799ccf810652db8a2b8b0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7de0dc11a35fee1dcc45347be804c49c22c952f59c9799ccf810652db8a2b8b0", kill_on_drop: false }`
[INFO] [stdout] 7de0dc11a35fee1dcc45347be804c49c22c952f59c9799ccf810652db8a2b8b0
