[INFO] fetching crate http_desync_guardian 0.1.3... [INFO] testing http_desync_guardian-0.1.3 against master#2fe50cd72c476ebacdedb14893e9632b4de961c2 for pr-116088-2 [INFO] extracting crate http_desync_guardian 0.1.3 into /workspace/builds/worker-2-tc1/source [INFO] validating manifest of crates.io crate http_desync_guardian 0.1.3 on toolchain 2fe50cd72c476ebacdedb14893e9632b4de961c2 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2fe50cd72c476ebacdedb14893e9632b4de961c2" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate http_desync_guardian 0.1.3 [INFO] finished tweaking crates.io crate http_desync_guardian 0.1.3 [INFO] tweaked toml for crates.io crate http_desync_guardian 0.1.3 written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2fe50cd72c476ebacdedb14893e9632b4de961c2" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+2fe50cd72c476ebacdedb14893e9632b4de961c2" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded half v1.8.2 [INFO] [stderr] Downloaded plotters-svg v0.3.5 [INFO] [stderr] Downloaded linked-hash-map v0.5.6 [INFO] [stderr] Downloaded snailquote v0.3.1 [INFO] [stderr] Downloaded strum v0.18.0 [INFO] [stderr] Downloaded strum_macros v0.18.0 [INFO] [stderr] Downloaded serde_cbor v0.11.2 [INFO] [stderr] Downloaded csv-core v0.1.11 [INFO] [stderr] Downloaded yaml-rust v0.4.5 [INFO] [stderr] Downloaded unicode_categories v0.1.1 [INFO] [stderr] Downloaded criterion v0.3.6 [INFO] [stderr] Downloaded csv v1.3.0 [INFO] [stderr] Downloaded itertools v0.10.5 [INFO] [stderr] Downloaded web-sys v0.3.66 [INFO] [stderr] Downloaded plotters v0.3.5 [INFO] [stderr] Downloaded cast v0.3.0 [INFO] [stderr] Downloaded criterion-plot v0.4.5 [INFO] [stderr] Downloaded plotters-backend v0.3.5 [INFO] [stderr] Downloaded tinytemplate v1.2.1 [INFO] [stderr] Downloaded oorandom v11.1.3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+2fe50cd72c476ebacdedb14893e9632b4de961c2" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 005f99b4ea0d532106cb558b67ebfc15ecf31d735adce161d7502c1aa4f1fe90 [INFO] running `Command { std: "docker" "start" "-a" "005f99b4ea0d532106cb558b67ebfc15ecf31d735adce161d7502c1aa4f1fe90", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "005f99b4ea0d532106cb558b67ebfc15ecf31d735adce161d7502c1aa4f1fe90", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "005f99b4ea0d532106cb558b67ebfc15ecf31d735adce161d7502c1aa4f1fe90", kill_on_drop: false }` [INFO] [stdout] 005f99b4ea0d532106cb558b67ebfc15ecf31d735adce161d7502c1aa4f1fe90 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+2fe50cd72c476ebacdedb14893e9632b4de961c2" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a073988b538bf78846227912f06fb4488d41411450c2f95572d91a8c097a6305 [INFO] running `Command { std: "docker" "start" "-a" "a073988b538bf78846227912f06fb4488d41411450c2f95572d91a8c097a6305", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.71 [INFO] [stderr] Compiling unicode-ident v1.0.12 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling unicode-segmentation v1.10.1 [INFO] [stderr] Compiling http_desync_guardian v0.1.3 (/opt/rustwide/workdir) [INFO] [stderr] Compiling lazy_static v1.4.0 [INFO] [stderr] Compiling strum v0.18.0 [INFO] [stderr] Compiling smallvec v1.11.2 [INFO] [stderr] Compiling heck v0.3.3 [INFO] [stderr] Compiling quote v1.0.33 [INFO] [stderr] Compiling strum_macros v0.18.0 [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicPtr::::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> src/metrics.rs:85:14 [INFO] [stdout] | [INFO] [stdout] 85 | .compare_and_swap( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 8.11s [INFO] running `Command { std: "docker" "inspect" "a073988b538bf78846227912f06fb4488d41411450c2f95572d91a8c097a6305", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a073988b538bf78846227912f06fb4488d41411450c2f95572d91a8c097a6305", kill_on_drop: false }` [INFO] [stdout] a073988b538bf78846227912f06fb4488d41411450c2f95572d91a8c097a6305 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+2fe50cd72c476ebacdedb14893e9632b4de961c2" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 71047bc370882d4035f1b85684fb4fbc34d1d45f38d200f6cc5ccbc39ba1eca5 [INFO] running `Command { std: "docker" "start" "-a" "71047bc370882d4035f1b85684fb4fbc34d1d45f38d200f6cc5ccbc39ba1eca5", kill_on_drop: false }` [INFO] [stderr] Compiling crossbeam-utils v0.8.18 [INFO] [stderr] Compiling serde v1.0.193 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Compiling autocfg v1.1.0 [INFO] [stderr] Compiling ryu v1.0.16 [INFO] [stderr] Compiling libc v0.2.151 [INFO] [stderr] Compiling itoa v1.0.10 [INFO] [stderr] Compiling serde_json v1.0.108 [INFO] [stderr] Compiling either v1.9.0 [INFO] [stderr] Compiling rayon-core v1.12.0 [INFO] [stderr] Compiling thiserror v1.0.52 [INFO] [stderr] Compiling plotters-backend v0.3.5 [INFO] [stderr] Compiling regex-syntax v0.8.2 [INFO] [stderr] Compiling unicode-width v0.1.11 [INFO] [stderr] Compiling memchr v2.6.4 [INFO] [stderr] Compiling syn v2.0.43 [INFO] [stderr] Compiling same-file v1.0.6 [INFO] [stderr] Compiling textwrap v0.11.0 [INFO] [stderr] Compiling bitflags v1.3.2 [INFO] [stderr] Compiling cast v0.3.0 [INFO] [stderr] Compiling half v1.8.2 [INFO] [stderr] Compiling walkdir v2.4.0 [INFO] [stderr] Compiling oorandom v11.1.3 [INFO] [stderr] Compiling itertools v0.10.5 [INFO] [stderr] Compiling num-traits v0.2.17 [INFO] [stderr] Compiling clap v2.34.0 [INFO] [stderr] Compiling linked-hash-map v0.5.6 [INFO] [stderr] Compiling unicode_categories v0.1.1 [INFO] [stdout] warning: use of deprecated method `std::sync::atomic::AtomicPtr::::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stdout] --> src/metrics.rs:85:14 [INFO] [stdout] | [INFO] [stdout] 85 | .compare_and_swap( [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling yaml-rust v0.4.5 [INFO] [stderr] Compiling plotters-svg v0.3.5 [INFO] [stderr] Compiling crossbeam-epoch v0.9.17 [INFO] [stderr] Compiling csv-core v0.1.11 [INFO] [stderr] Compiling crossbeam-deque v0.8.4 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] Compiling rayon v1.8.0 [INFO] [stderr] Compiling regex-automata v0.4.3 [INFO] [stderr] Compiling criterion-plot v0.4.5 [INFO] [stderr] Compiling plotters v0.3.5 [INFO] [stderr] Compiling regex v1.10.2 [INFO] [stderr] Compiling serde_cbor v0.11.2 [INFO] [stderr] Compiling csv v1.3.0 [INFO] [stderr] Compiling thiserror-impl v1.0.52 [INFO] [stderr] Compiling serde_derive v1.0.193 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling snailquote v0.3.1 [INFO] [stderr] Compiling criterion v0.3.6 [INFO] [stderr] Compiling http_desync_guardian v0.1.3 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> src/http_token_utils.rs:389:9 [INFO] [stdout] | [INFO] [stdout] 389 | / &[TE, CL].iter().for_each(|h| { [INFO] [stdout] 390 | | h.iter().for_each(|b| { [INFO] [stdout] 391 | | assert_eq!(b.to_ascii_lowercase(), *b); [INFO] [stdout] 392 | | }); [INFO] [stdout] 393 | | }); [INFO] [stdout] | |__________^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 389 | let _ = &[TE, CL].iter().for_each(|h| { [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/request_analyzer.rs:1456:17 [INFO] [stdout] | [INFO] [stdout] 1456 | format!("Case {}. Expected '{}' to be in '{}'", case.name, m, s) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] help: remove the `format!(..)` macro call [INFO] [stdout] | [INFO] [stdout] 1456 - format!("Case {}. Expected '{}' to be in '{}'", case.name, m, s) [INFO] [stdout] 1456 + "Case {}. Expected '{}' to be in '{}'", case.name, m, s [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 21.46s [INFO] running `Command { std: "docker" "inspect" "71047bc370882d4035f1b85684fb4fbc34d1d45f38d200f6cc5ccbc39ba1eca5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "71047bc370882d4035f1b85684fb4fbc34d1d45f38d200f6cc5ccbc39ba1eca5", kill_on_drop: false }` [INFO] [stdout] 71047bc370882d4035f1b85684fb4fbc34d1d45f38d200f6cc5ccbc39ba1eca5 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+2fe50cd72c476ebacdedb14893e9632b4de961c2" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] e55048b47d383af95aa4b69b293772171389403acb01826ed0a9e343ca962078 [INFO] running `Command { std: "docker" "start" "-a" "e55048b47d383af95aa4b69b293772171389403acb01826ed0a9e343ca962078", kill_on_drop: false }` [INFO] [stderr] warning: use of deprecated method `std::sync::atomic::AtomicPtr::::compare_and_swap`: Use `compare_exchange` or `compare_exchange_weak` instead [INFO] [stderr] --> src/metrics.rs:85:14 [INFO] [stderr] | [INFO] [stderr] 85 | .compare_and_swap( [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(deprecated)]` on by default [INFO] [stderr] [INFO] [stderr] warning: `http_desync_guardian` (lib) generated 1 warning [INFO] [stderr] warning: unused borrow that must be used [INFO] [stdout] [INFO] [stderr] --> src/http_token_utils.rs:389:9 [INFO] [stdout] running 106 tests [INFO] [stderr] | [INFO] [stderr] 389 | / &[TE, CL].iter().for_each(|h| { [INFO] [stderr] 390 | | h.iter().for_each(|b| { [INFO] [stderr] 391 | | assert_eq!(b.to_ascii_lowercase(), *b); [INFO] [stderr] 392 | | }); [INFO] [stderr] 393 | | }); [INFO] [stderr] | |__________^ the borrow produces a value [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_must_use)]` on by default [INFO] [stderr] help: use `let _ = ...` to ignore the resulting value [INFO] [stderr] | [INFO] [stderr] 389 | let _ = &[TE, CL].iter().for_each(|h| { [INFO] [stderr] | +++++++ [INFO] [stderr] [INFO] [stderr] warning: panic message is not a string literal [INFO] [stderr] --> src/request_analyzer.rs:1456:17 [INFO] [stderr] | [INFO] [stderr] 1456 | format!("Case {}. Expected '{}' to be in '{}'", case.name, m, s) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: this usage of `assert!()` is deprecated; it will be a hard error in Rust 2021 [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: the `assert!()` macro supports formatting, so there's no need for the `format!()` macro here [INFO] [stderr] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stderr] help: remove the `format!(..)` macro call [INFO] [stderr] | [INFO] [stderr] 1456 - format!("Case {}. Expected '{}' to be in '{}'", case.name, m, s) [INFO] [stderr] 1456 + "Case {}. Expected '{}' to be in '{}'", case.name, m, s [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: `http_desync_guardian` (lib test) generated 2 warnings (run `cargo fix --lib -p http_desync_guardian --tests` to apply 1 suggestion) [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.10s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/http_desync_guardian-07dfbe1b3828c6b4) [INFO] [stdout] test http_token_utils::tests::test_obfuscate_value ... ok [INFO] [stdout] test http_token_utils::tests::test_parse_num ... ok [INFO] [stdout] test http_token_utils::tests::test_header_value ... ok [INFO] [stdout] test http_token_utils::tests::test_tchar ... ok [INFO] [stdout] test http_token_utils::tests::test_obfuscate_large_value ... ok [INFO] [stdout] test http_token_utils::tests::test_arbitrary_non_utf8_bytes ... ok [INFO] [stdout] test http_token_utils::tests::test_same_char ... ok [INFO] [stdout] test http_token_utils::tests::test_to_ascii_large_value ... ok [INFO] [stdout] test http_token_utils::tests::test_same_letters ... ok [INFO] [stdout] test http_token_utils::tests::test_to_ascii ... ok [INFO] [stdout] test http_token_utils::tests::test_utf8_spaces ... ok [INFO] [stdout] test http_token_utils::tests::test_valid_te ... ok [INFO] [stdout] test raw_request_parser::tests::test_parse_partial ... ok [INFO] [stdout] test raw_request_parser::tests::test_parse_empty_uri_bad_delimiters ... ok [INFO] [stdout] test http_token_utils::tests::verify_te_options_lowercase ... ok [INFO] [stdout] test http_token_utils::tests::test_utf8_delimiters ... ok [INFO] [stdout] test request_analyzer::tests::test_analyze_acceptable_multiline_content_type ... ok [INFO] [stdout] test raw_request_parser::tests::test_parse_missing_uri ... ok [INFO] [stdout] test raw_request_parser::tests::test_parse_non_compliant_request_line ... ok [INFO] [stdout] test raw_request_parser::tests::test_parse_non_compliant_terminator_request_line ... ok [INFO] [stdout] test raw_request_parser::tests::test_parse_request_line ... ok [INFO] [stdout] test raw_request_parser::tests::test_parse_request_line_http_09 ... ok [INFO] [stdout] test request_analyzer::tests::test_analyze_allow_multiline_content_type ... ok [INFO] [stdout] test request_analyzer::tests::test_analyze_allow_multiline_content_type_other_acceptable ... ok [INFO] [stdout] test request_analyzer::tests::test_analyze_bad_uri ... ok [INFO] [stdout] test request_analyzer::tests::test_analyze_lfcr ... ok [INFO] [stdout] test request_analyzer::tests::test_analyze_crafted_smuggling ... ok [INFO] [stdout] test request_analyzer::tests::test_analyze_bad_multiline_headers ... ok [INFO] [stdout] test request_analyzer::tests::test_analyze_bad_multiline_first_line_multiline ... ok [INFO] [stdout] test request_analyzer::tests::test_analyze_bad_multiline_mimic_header_severe ... ok [INFO] [stdout] test request_analyzer::tests::test_analyze_bad_multiline_content_type ... ok [INFO] [stdout] test raw_request_parser::tests::test_parse_non_missing_empty_line ... ok [INFO] [stdout] test raw_request_parser::tests::test_parse_non_tchar_request_line ... ok [INFO] [stdout] test raw_request_parser::tests::test_parse_line_by_line ... ok [INFO] [stdout] test raw_request_parser::tests::test_parse_empty_uri ... ok [INFO] [stdout] test http_token_utils::tests::verify_essential_headers_lowercase ... ok [INFO] [stdout] test http_token_utils::tests::test_trim ... ok [INFO] [stdout] test request_analyzer::tests::test_analyze_malformed_status_line ... ok [INFO] [stdout] test request_analyzer::tests::test_analyze_no_header_value ... ok [INFO] [stdout] test request_analyzer::tests::test_analyze_non_tchar_request_line ... ok [INFO] [stdout] test request_analyzer::tests::test_h2_not_analyzed ... ok [INFO] [stdout] test request_analyzer::tests::test_analyze_spaces_in_uri ... ok [INFO] [stdout] test request_analyzer::tests::test_analyze_bad_multiline_mimic_header ... ok [INFO] [stdout] test request_analyzer::tests::test_no_headers ... ok [INFO] [stdout] test request_analyzer::tests::test_h3_not_analyzed ... ok [INFO] [stdout] test request_analyzer::tests::test_analyze_multiline_besides_content_type ... ok [INFO] [stdout] test request_analyzer::tests::test_analyze_multiline_headers ... ok [INFO] [stdout] test request_analyzer::tests::test_field_value_tier ... ok [INFO] [stdout] test request_analyzer::tests::test_field_name_tier ... ok [INFO] [stdout] test request_analyzer::tests::test_parse_malformed_request_single_line_partial ... ok [INFO] [stdout] test request_analyzer::tests::test_header_tier ... ok [INFO] [stdout] test request_analyzer::tests::test_parse_bad_request_line ... ok [INFO] [stdout] test request_analyzer::tests::test_parse_empty_header_name_double_colon ... ok [INFO] [stdout] test request_analyzer::tests::test_parse_request_first_multiline ... ok [INFO] [stdout] test request_analyzer::tests::test_parse_malformed_request_single_line ... ok [INFO] [stdout] test request_analyzer::tests::test_parse_request_multiline ... ok [INFO] [stdout] test request_analyzer::tests::test_parse_request_partial_header ... ok [INFO] [stdout] test request_analyzer::tests::test_parse_empty_uri ... ok [INFO] [stdout] test request_analyzer::tests::test_parse_empty_header_name ... ok [INFO] [stdout] test request_analyzer::tests::test_parse_missing_uri ... ok [INFO] [stdout] test tests::test_http_desync_guardian_analyze_raw_request ... ok [INFO] [stdout] test request_analyzer::tests::test_parse_request ... ok [INFO] [stdout] test request_analyzer::tests::test_very_many_headers ... ok [INFO] [stdout] test request_analyzer::tests::test_parse_request_missing_empty_line ... ok [INFO] [stdout] test tests::test_http_desync_guardian_analyze_request ... ok [INFO] [stdout] test tests::test_classification_reason_metrics_callback ... ok [INFO] [stdout] test request_analyzer::tests::test_parse_spaces_in_uri ... ok [INFO] [stdout] test request_analyzer::tests::test_very_many_headers_raw ... ok [INFO] [stdout] test request_analyzer::tests::test_te_with_space ... ok [INFO] [stdout] test tests::test_classification_metrics_callback_required - should panic ... ok [INFO] [stdout] test request_analyzer::tests::test_te_ok ... ok [INFO] [stdout] test tests::test_http_desync_guardian_validate_print_request_insufficient_buffer_length ... ok [INFO] [stdout] test tests::test_http_desync_guardian_validate_print_request_parameters_null_request - should panic ... ok [INFO] [stdout] test tests::test_classification_metrics_settings_required - should panic ... ok [INFO] [stdout] test tests::test_http_desync_guardian_validate_request_raw_request_null_buffer - should panic ... ok [INFO] [stdout] test tests::test_http_desync_guardian_validate_request_analysis_parameters_null_header_value - should panic ... ok [INFO] [stdout] test tests::test_log_callback ... ok [INFO] [stdout] test tests::test_http_desync_guardian_validate_request_analysis_parameters_null_header_name - should panic ... ok [INFO] [stdout] test tests::test_invalid_header_tier ... ok [INFO] [stdout] test tests::test_http_desync_guardian_validate_request_analysis_parameters_null_method - should panic ... ok [INFO] [stdout] test tests::test_non_compliant_header_tier ... ok [INFO] [stdout] test tests::test_tier_metrics_callback_required - should panic ... ok [INFO] [stdout] test tests::test_http_desync_guardian_validate_print_request_parameters_invalid_buffer_length - should panic ... ok [INFO] [stdout] test tests::test_request_tier_metrics_callback ... ok [INFO] [stdout] test tests::test_http_desync_guardian_validate_request_analysis_parameters_null_request - should panic ... ok [INFO] [stdout] test ultralight_rate_limiter::tests::test_once_per_minute ... ok [INFO] [stdout] test tests::test_http_desync_guardian_validate_request_analysis_parameters_null_version - should panic ... ok [INFO] [stdout] test tests::test_http_desync_guardian_validate_request_analysis_parameters_null_verdict - should panic ... ok [INFO] [stdout] test tests::test_http_desync_guardian_validate_request_analysis_parameters_null_uri - should panic ... ok [INFO] [stdout] test ultralight_rate_limiter::tests::test_round_down ... ok [INFO] [stdout] test tests::test_http_desync_guardian_validate_request_raw_request_null_verdict - should panic ... ok [INFO] [stdout] test tests::test_http_desync_guardian_validate_print_request_parameters_null_buffer - should panic ... ok [INFO] [stdout] test ultralight_rate_limiter::tests::test_twice_per_second ... ok [INFO] [stdout] test ultralight_rate_limiter::tests::test_time_stamp_overflow ... ok [INFO] [stdout] test ultralight_rate_limiter::tests::test_once_per_second ... ok [INFO] [stdout] test tests::test_http_desync_guardian_validate_request_raw_request_zero_buffer_size - should panic ... ok [INFO] [stdout] test ultralight_rate_limiter::tests::test_100_per_second ... ok [INFO] [stdout] test tests::test_logger_callback_required - should panic ... ok [INFO] [stdout] test tests::test_logger_settings_required - should panic ... ok [INFO] [stdout] test ultralight_rate_limiter::tests::test_try_acquire_value ... ok [INFO] [stdout] test ultralight_rate_limiter::tests::test_twice_per_minute ... ok [INFO] [stdout] test request_analyzer::tests::file_tests ... ok [INFO] [stdout] test tests::test_tier_metrics_settings_required - should panic ... ok [INFO] [stdout] test request_analyzer::tests::test_analyze_fuzzing_input ... ok [INFO] [stdout] test http_token_utils::tests::test_same_char_covers_all_utf8 ... ok [INFO] [stdout] test request_analyzer::tests::test_walk_through_states ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 106 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 17.66s [INFO] [stdout] [INFO] [stderr] Doc-tests http_desync_guardian [INFO] [stdout] [INFO] [stdout] running 5 tests [INFO] [stdout] test src/http_token_utils.rs - http_token_utils::SP (line 34) ... ignored [INFO] [stdout] test src/http_token_utils.rs - http_token_utils::SP (line 57) ... ignored [INFO] [stdout] test src/http_token_utils.rs - http_token_utils::TokenSimilarity::SameLetters (line 110) - compile ... ok [INFO] [stdout] test src/http_token_utils.rs - http_token_utils::TokenSimilarity::Distant (line 119) - compile ... ok [INFO] [stdout] test src/http_token_utils.rs - http_token_utils::TokenSimilarity::Identical (line 101) - compile ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 0.04s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "e55048b47d383af95aa4b69b293772171389403acb01826ed0a9e343ca962078", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e55048b47d383af95aa4b69b293772171389403acb01826ed0a9e343ca962078", kill_on_drop: false }` [INFO] [stdout] e55048b47d383af95aa4b69b293772171389403acb01826ed0a9e343ca962078