[INFO] fetching crate fetchkit 0.2.0...
[INFO] testing fetchkit-0.2.0 against master#f9988fefd3add01f414f52b414308e7872622fee for pr-155114
[INFO] extracting crate fetchkit 0.2.0 into /workspace/builds/worker-0-tc1/source
[INFO] started tweaking crates.io crate fetchkit 0.2.0
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate fetchkit 0.2.0
[INFO] tweaked toml for crates.io crate fetchkit 0.2.0 written to /workspace/builds/worker-0-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate fetchkit 0.2.0 on toolchain f9988fefd3add01f414f52b414308e7872622fee
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate fetchkit 0.2.0 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" "+f9988fefd3add01f414f52b414308e7872622fee" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded deadpool-runtime v0.1.4
[INFO] [stderr]   Downloaded wiremock v0.6.5
[INFO] [stderr]   Downloaded tokio-test v0.4.5
[INFO] [stderr]   Downloaded assert-json-diff v2.0.2
[INFO] [stderr]   Downloaded deadpool v0.12.3
[INFO] [stderr]   Downloaded wasm-streams v0.5.0
[INFO] [stderr]   Downloaded iri-string v0.7.11
[INFO] [stderr]   Downloaded zerocopy-derive v0.8.47
[INFO] [stderr]   Downloaded zerocopy v0.8.47
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] a05de9ddb5d039aabba05303cb4ec0eef34bb8b2418ade53b25385d3226f7156
[INFO] running `Command { std: "docker" "start" "-a" "a05de9ddb5d039aabba05303cb4ec0eef34bb8b2418ade53b25385d3226f7156", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a05de9ddb5d039aabba05303cb4ec0eef34bb8b2418ade53b25385d3226f7156", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a05de9ddb5d039aabba05303cb4ec0eef34bb8b2418ade53b25385d3226f7156", kill_on_drop: false }`
[INFO] [stdout] a05de9ddb5d039aabba05303cb4ec0eef34bb8b2418ade53b25385d3226f7156
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 0717e766c929f9195ab0e5aa754a2cd2e186a0d7c711aea9b0032c043ce44df4
[INFO] running `Command { std: "docker" "start" "-a" "0717e766c929f9195ab0e5aa754a2cd2e186a0d7c711aea9b0032c043ce44df4", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.183
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling futures-task v0.3.32
[INFO] [stderr]    Compiling futures-io v0.3.32
[INFO] [stderr]    Compiling alloc-no-stdlib v2.0.4
[INFO] [stderr]    Compiling simd-adler32 v0.3.9
[INFO] [stderr]    Compiling rustls v0.23.37
[INFO] [stderr]    Compiling compression-core v0.4.31
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling iri-string v0.7.11
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling alloc-stdlib v0.2.2
[INFO] [stderr]    Compiling brotli-decompressor v5.0.0
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling zerofrom v0.1.6
[INFO] [stderr]    Compiling yoke v0.8.1
[INFO] [stderr]    Compiling zerotrie v0.2.3
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling brotli v8.0.2
[INFO] [stderr]    Compiling zerovec v0.11.5
[INFO] [stderr]    Compiling schemars v1.2.1
[INFO] [stderr]    Compiling tinystr v0.8.2
[INFO] [stderr]    Compiling potential_utf v0.1.4
[INFO] [stderr]    Compiling icu_locale_core v2.1.1
[INFO] [stderr]    Compiling icu_collections v2.1.1
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling cc v1.2.58
[INFO] [stderr]    Compiling tokio v1.50.0
[INFO] [stderr]    Compiling icu_provider v2.1.1
[INFO] [stderr]    Compiling icu_properties v2.1.2
[INFO] [stderr]    Compiling icu_normalizer v2.1.1
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]    Compiling aws-lc-sys v0.39.1
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling futures v0.3.32
[INFO] [stderr]    Compiling compression-codecs v0.4.37
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling async-compression v0.4.41
[INFO] [stderr]    Compiling h2 v0.4.13
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling aws-lc-rs v1.16.2
[INFO] [stderr]    Compiling rustls-webpki v0.103.10
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling rustls-platform-verifier v0.6.2
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling reqwest v0.13.2
[INFO] [stderr]    Compiling fetchkit v0.2.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 27s
[INFO] running `Command { std: "docker" "inspect" "0717e766c929f9195ab0e5aa754a2cd2e186a0d7c711aea9b0032c043ce44df4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0717e766c929f9195ab0e5aa754a2cd2e186a0d7c711aea9b0032c043ce44df4", kill_on_drop: false }`
[INFO] [stdout] 0717e766c929f9195ab0e5aa754a2cd2e186a0d7c711aea9b0032c043ce44df4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 33437ff9a21c882f272f41840c96e27e5efb7697411d8e490c94ce53bdb70076
[INFO] running `Command { std: "docker" "start" "-a" "33437ff9a21c882f272f41840c96e27e5efb7697411d8e490c94ce53bdb70076", kill_on_drop: false }`
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling tokio v1.50.0
[INFO] [stderr]    Compiling zerocopy v0.8.47
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]    Compiling rustls-platform-verifier v0.6.2
[INFO] [stderr]    Compiling num_cpus v1.17.0
[INFO] [stderr]    Compiling deadpool-runtime v0.1.4
[INFO] [stderr]    Compiling ed25519 v2.2.3
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling assert-json-diff v2.0.2
[INFO] [stderr]    Compiling thread_local v1.1.9
[INFO] [stderr]    Compiling fastrand v2.3.0
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling nu-ansi-term v0.50.3
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling ed25519-dalek v2.2.0
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling async-compression v0.4.41
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling tokio-stream v0.1.18
[INFO] [stderr]    Compiling deadpool v0.12.3
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling tokio-test v0.4.5
[INFO] [stderr]    Compiling h2 v0.4.13
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling tower-http v0.6.8
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling hyper-rustls v0.27.7
[INFO] [stderr]    Compiling wiremock v0.6.5
[INFO] [stderr]    Compiling reqwest v0.13.2
[INFO] [stderr]    Compiling fetchkit v0.2.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 14s
[INFO] running `Command { std: "docker" "inspect" "33437ff9a21c882f272f41840c96e27e5efb7697411d8e490c94ce53bdb70076", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "33437ff9a21c882f272f41840c96e27e5efb7697411d8e490c94ce53bdb70076", kill_on_drop: false }`
[INFO] [stdout] 33437ff9a21c882f272f41840c96e27e5efb7697411d8e490c94ce53bdb70076
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+f9988fefd3add01f414f52b414308e7872622fee" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 2c9b6a8cc924f96a4589d32cb38176f6127043510cd86d64c011aa6c4a7b76f3
[INFO] running `Command { std: "docker" "start" "-a" "2c9b6a8cc924f96a4589d32cb38176f6127043510cd86d64c011aa6c4a7b76f3", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.48s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/fetchkit-e9ac5e707528e4ef)
[INFO] [stdout] 
[INFO] [stdout] running 253 tests
[INFO] [stdout] test client::tests::test_batch_fetch_empty_input ... ok
[INFO] [stdout] test client::tests::test_validate_url_blocks_configured_host_and_port ... ok
[INFO] [stdout] test client::tests::test_validate_redirect_target_blocks_cross_host_when_enabled ... ok
[INFO] [stdout] test client::tests::test_batch_fetch_respects_concurrency_limit ... ok
[INFO] [stdout] test client::tests::test_fetch_invalid_scheme ... ok
[INFO] [stdout] test convert::tests::test_clean_whitespace_preserves_indentation ... ok
[INFO] [stdout] test client::tests::test_fetch_options_default ... ok
[INFO] [stdout] test convert::tests::test_entity_decoding ... ok
[INFO] [stdout] test client::tests::test_fetch_empty_url ... ok
[INFO] [stdout] test convert::tests::test_extract_attribute ... ok
[INFO] [stdout] test convert::tests::test_extract_metadata_canonical_url ... ok
[INFO] [stdout] test convert::tests::test_extract_metadata_description ... ok
[INFO] [stdout] test convert::tests::test_extract_metadata_dates ... ok
[INFO] [stdout] test convert::tests::test_extract_metadata_empty_html ... ok
[INFO] [stdout] test convert::tests::test_extract_metadata_full_page ... ok
[INFO] [stdout] test convert::tests::test_extract_headings ... ok
[INFO] [stdout] test convert::tests::test_extract_metadata_links ... ok
[INFO] [stdout] test convert::tests::test_clean_whitespace ... ok
[INFO] [stdout] test convert::tests::test_extract_metadata_author ... ok
[INFO] [stdout] test convert::tests::test_extract_metadata_og_description_overrides ... ok
[INFO] [stdout] test convert::tests::test_extract_metadata_skips_script_content ... ok
[INFO] [stdout] test convert::tests::test_extract_metadata_og_title_overrides ... ok
[INFO] [stdout] test convert::tests::test_extract_metadata_title ... ok
[INFO] [stdout] test convert::tests::test_extract_metadata_time_element ... ok
[INFO] [stdout] test convert::tests::test_html_to_markdown_definition_list ... ok
[INFO] [stdout] test convert::tests::test_html_to_markdown_image_no_alt ... ok
[INFO] [stdout] test convert::tests::test_html_to_markdown_images ... ok
[INFO] [stdout] test convert::tests::test_html_to_markdown_link_no_text ... ok
[INFO] [stdout] test convert::tests::test_html_to_markdown_links ... ok
[INFO] [stdout] test convert::tests::test_html_to_markdown_lists ... ok
[INFO] [stdout] test convert::tests::test_html_to_markdown_paragraphs ... ok
[INFO] [stdout] test convert::tests::test_html_to_markdown_smart_quotes ... ok
[INFO] [stdout] test convert::tests::test_html_to_markdown_table ... ok
[INFO] [stdout] test convert::tests::test_html_to_markdown_nested_lists ... ok
[INFO] [stdout] test convert::tests::test_html_to_text_simple ... ok
[INFO] [stdout] test convert::tests::test_html_to_text_skip_script ... ok
[INFO] [stdout] test convert::tests::test_is_html_by_content_type ... ok
[INFO] [stdout] test convert::tests::test_is_markdown_content_type ... ok
[INFO] [stdout] test convert::tests::test_html_to_markdown_table_no_header ... ok
[INFO] [stdout] test convert::tests::test_is_plain_text_content_type ... ok
[INFO] [stdout] test convert::tests::test_is_html_by_body ... ok
[INFO] [stdout] test convert::tests::test_html_to_markdown_skip_script ... ok
[INFO] [stdout] test convert::tests::test_page_metadata_is_empty ... ok
[INFO] [stdout] test convert::tests::test_strip_boilerplate_main_takes_precedence_over_article ... ok
[INFO] [stdout] test convert::tests::test_strip_boilerplate_fallback_strips_nav_footer_aside ... ok
[INFO] [stdout] test convert::tests::test_strip_boilerplate_no_semantic_html ... ok
[INFO] [stdout] test convert::tests::test_strip_boilerplate_extracts_main ... ok
[INFO] [stdout] test convert::tests::test_strip_boilerplate_preserves_header_inside_main ... ok
[INFO] [stdout] test convert::tests::test_filter_excessive_newlines ... ok
[INFO] [stdout] test dns::tests::test_6to4_ipv6_blocked ... ok
[INFO] [stdout] test dns::tests::test_allow_all_permits_private ... ok
[INFO] [stdout] test convert::tests::test_html_to_markdown_headers ... ok
[INFO] [stdout] test convert::tests::test_html_to_markdown_code ... ok
[INFO] [stdout] test convert::tests::test_strip_boilerplate_extracts_article ... ok
[INFO] [stdout] test dns::tests::test_broadcast_blocked ... ok
[INFO] [stdout] test convert::tests::test_html_to_markdown_ordered_list ... ok
[INFO] [stdout] test convert::tests::test_html_to_markdown_expanded_entities ... ok
[INFO] [stdout] test convert::tests::test_html_to_markdown_emphasis ... ok
[INFO] [stdout] test convert::tests::test_strip_boilerplate_role_main ... ok
[INFO] [stdout] test convert::tests::test_strip_boilerplate_nested_nav ... ok
[INFO] [stdout] test dns::tests::test_carrier_grade_nat_blocked ... ok
[INFO] [stdout] test convert::tests::test_strip_boilerplate_role_navigation ... ok
[INFO] [stdout] test dns::tests::test_benchmarking_blocked ... ok
[INFO] [stdout] test dns::tests::test_default_blocks_private ... ok
[INFO] [stdout] test dns::tests::test_documentation_ranges_blocked ... ok
[INFO] [stdout] test dns::tests::test_ipv6_loopback_blocked ... ok
[INFO] [stdout] test dns::tests::test_ipv6_mapped_ipv4_blocked ... ok
[INFO] [stdout] test dns::tests::test_ipv6_link_local_blocked ... ok
[INFO] [stdout] test dns::tests::test_ipv6_multicast_blocked ... ok
[INFO] [stdout] test dns::tests::test_loopback_blocked ... ok
[INFO] [stdout] test dns::tests::test_ipv4_compatible_ipv6_blocked ... ok
[INFO] [stdout] test dns::tests::test_multicast_blocked ... ok
[INFO] [stdout] test dns::tests::test_private_10_blocked ... ok
[INFO] [stdout] test dns::tests::test_private_192_168_blocked ... ok
[INFO] [stdout] test dns::tests::test_public_ipv4_allowed ... ok
[INFO] [stdout] test dns::tests::test_public_ipv6_allowed ... ok
[INFO] [stdout] test dns::tests::test_private_172_blocked ... ok
[INFO] [stdout] test dns::tests::test_ipv6_unique_local_blocked ... ok
[INFO] [stdout] test dns::tests::test_resolve_loopback_blocked ... ok
[INFO] [stdout] test fetchers::arxiv::tests::test_extract_xml_tag ... ok
[INFO] [stdout] test fetchers::arxiv::tests::test_parse_abs_url ... ok
[INFO] [stdout] test dns::tests::test_resolve_private_blocked ... ok
[INFO] [stdout] test dns::tests::test_ipv6_unspecified_blocked ... ok
[INFO] [stdout] test fetchers::arxiv::tests::test_fetcher_matches ... ok
[INFO] [stdout] test dns::tests::test_unspecified_blocked ... ok
[INFO] [stdout] test fetchers::arxiv::tests::test_extract_xml_attr ... ok
[INFO] [stdout] test error::tests::test_error_messages ... ok
[INFO] [stdout] test error::tests::test_tool_error_classification ... ok
[INFO] [stdout] test dns::tests::test_resolve_nonexistent_fails ... ok
[INFO] [stdout] test fetchers::arxiv::tests::test_rejects_non_paper_paths ... ok
[INFO] [stdout] test dns::tests::test_resolve_allow_all_permits_loopback ... ok
[INFO] [stdout] test fetchers::arxiv::tests::test_parse_arxiv_response ... ok
[INFO] [stdout] test dns::tests::test_link_local_blocked ... ok
[INFO] [stdout] test fetchers::arxiv::tests::test_parse_old_format ... ok
[INFO] [stdout] test fetchers::arxiv::tests::test_parse_pdf_url ... ok
[INFO] [stdout] test convert::tests::test_extract_metadata_language ... ok
[INFO] [stdout] test fetchers::arxiv::tests::test_parse_pdf_url_with_extension ... ok
[INFO] [stdout] test fetchers::arxiv::tests::test_rejects_non_arxiv ... ok
[INFO] [stdout] test fetchers::default::tests::test_count_words ... ok
[INFO] [stdout] test fetchers::default::tests::test_extract_filename_from_url ... ok
[INFO] [stdout] test fetchers::default::tests::test_parse_content_disposition_filename ... ok
[INFO] [stdout] test fetchers::default::tests::test_default_fetcher_matches_all ... ok
[INFO] [stdout] test fetchers::default::tests::test_is_binary_content_type ... ok
[INFO] [stdout] test fetchers::default::tests::test_detect_paywall ... ok
[INFO] [stdout] test fetchers::default::tests::test_no_paywall_for_normal_content ... ok
[INFO] [stdout] test fetchers::default::tests::test_no_redirect_chain_for_direct_response ... ok
[INFO] [stdout] test fetchers::docs_site::tests::test_fetcher_matches ... ok
[INFO] [stdout] test fetchers::docs_site::tests::test_is_docs_site ... ok
[INFO] [stdout] test fetchers::default::tests::test_etag_returned_in_response ... ok
[INFO] [stdout] test fetchers::default::tests::test_conditional_fetch_304_not_modified ... ok
[INFO] [stdout] test fetchers::github_code::tests::test_base64_decode ... ok
[INFO] [stdout] test fetchers::github_code::tests::test_fetcher_matches ... ok
[INFO] [stdout] test fetchers::default::tests::test_paywall_detection ... ok
[INFO] [stdout] test fetchers::github_code::tests::test_parse_blob_url ... ok
[INFO] [stdout] test fetchers::github_code::tests::test_parse_blob_url_nested_path ... ok
[INFO] [stdout] test fetchers::default::tests::test_skip_conversion_for_markdown_content_type ... ok
[INFO] [stdout] test fetchers::github_code::tests::test_format_file_response ... ok
[INFO] [stdout] test fetchers::github_code::tests::test_rejects_non_github ... ok
[INFO] [stdout] test fetchers::github_code::tests::test_rejects_too_few_segments ... ok
[INFO] [stdout] test fetchers::github_code::tests::test_rejects_reserved_owner ... ok
[INFO] [stdout] test fetchers::github_issue::tests::test_fetcher_matches ... ok
[INFO] [stdout] test fetchers::github_issue::tests::test_format_pr_response ... ok
[INFO] [stdout] test fetchers::docs_site::tests::test_is_llms_txt_url ... ok
[INFO] [stdout] test fetchers::github_code::tests::test_detect_language ... ok
[INFO] [stdout] test fetchers::github_issue::tests::test_parse_pull_url ... ok
[INFO] [stdout] test fetchers::github_issue::tests::test_format_issue_response ... ok
[INFO] [stdout] test client::tests::test_batch_fetch_partial_failure ... ok
[INFO] [stdout] test fetchers::github_code::tests::test_rejects_non_blob ... ok
[INFO] [stdout] test fetchers::github_issue::tests::test_rejects_non_github ... ok
[INFO] [stdout] test fetchers::github_issue::tests::test_parse_issue_url ... ok
[INFO] [stdout] test fetchers::github_issue::tests::test_rejects_non_issue_paths ... ok
[INFO] [stdout] test fetchers::github_issue::tests::test_rejects_non_numeric_number ... ok
[INFO] [stdout] test fetchers::github_issue::tests::test_rejects_reserved_owner ... ok
[INFO] [stdout] test fetchers::github_issue::tests::test_rejects_wrong_segment_count ... ok
[INFO] [stdout] test fetchers::github_repo::tests::test_base64_decode ... ok
[INFO] [stdout] test fetchers::github_repo::tests::test_fetcher_matches ... ok
[INFO] [stdout] test fetchers::github_repo::tests::test_format_github_repo_response ... ok
[INFO] [stdout] test fetchers::github_repo::tests::test_parse_github_url_reserved_paths ... ok
[INFO] [stdout] test fetchers::github_repo::tests::test_parse_github_url_too_few_segments ... ok
[INFO] [stdout] test fetchers::github_repo::tests::test_parse_github_url_too_many_segments ... ok
[INFO] [stdout] test fetchers::github_repo::tests::test_parse_github_url_valid ... ok
[INFO] [stdout] test fetchers::hackernews::tests::test_parse_hn_url ... ok
[INFO] [stdout] test fetchers::hackernews::tests::test_fetcher_matches ... ok
[INFO] [stdout] test fetchers::hackernews::tests::test_rejects_no_id ... ok
[INFO] [stdout] test fetchers::github_repo::tests::test_parse_github_url_with_trailing_slash ... ok
[INFO] [stdout] test fetchers::github_repo::tests::test_parse_github_url_wrong_host ... ok
[INFO] [stdout] test fetchers::hackernews::tests::test_format_hn_response ... ok
[INFO] [stdout] test fetchers::hackernews::tests::test_rejects_non_hn ... ok
[INFO] [stdout] test fetchers::hackernews::tests::test_strip_html_tags ... ok
[INFO] [stdout] test fetchers::hackernews::tests::test_rejects_non_item_path ... ok
[INFO] [stdout] test fetchers::default::tests::test_redirect_target_rejects_non_http_location ... ok
[INFO] [stdout] test fetchers::package_registry::tests::test_fetcher_matches ... ok
[INFO] [stdout] test fetchers::package_registry::tests::test_parse_crates_io_url ... ok
[INFO] [stdout] test fetchers::package_registry::tests::test_parse_npm_scoped_url ... ok
[INFO] [stdout] test fetchers::package_registry::tests::test_parse_npm_url ... ok
[INFO] [stdout] test fetchers::package_registry::tests::test_parse_pypi_url_with_version ... ok
[INFO] [stdout] test fetchers::package_registry::tests::test_rejects_non_package_paths ... ok
[INFO] [stdout] test fetchers::rss_feed::tests::test_parse_rss ... ok
[INFO] [stdout] test fetchers::rss_feed::tests::test_strip_html ... ok
[INFO] [stdout] test fetchers::stackoverflow::tests::test_fetcher_matches ... ok
[INFO] [stdout] test fetchers::stackoverflow::tests::test_format_qa_response ... ok
[INFO] [stdout] test fetchers::rss_feed::tests::test_decode_entities ... ok
[INFO] [stdout] test fetchers::rss_feed::tests::test_parse_atom ... ok
[INFO] [stdout] test fetchers::package_registry::tests::test_rejects_non_registry ... ok
[INFO] [stdout] test fetchers::package_registry::tests::test_parse_pypi_url ... ok
[INFO] [stdout] test fetchers::rss_feed::tests::test_is_feed_url ... ok
[INFO] [stdout] test fetchers::rss_feed::tests::test_fetcher_matches ... ok
[INFO] [stdout] test fetchers::stackoverflow::tests::test_parse_stackoverflow_url ... ok
[INFO] [stdout] test fetchers::stackoverflow::tests::test_parse_stackexchange_url ... ok
[INFO] [stdout] test fetchers::stackoverflow::tests::test_rejects_non_numeric_id ... ok
[INFO] [stdout] test fetchers::stackoverflow::tests::test_parse_stackoverflow_url_no_slug ... ok
[INFO] [stdout] test fetchers::stackoverflow::tests::test_rejects_non_se_sites ... ok
[INFO] [stdout] test fetchers::stackoverflow::tests::test_rejects_non_question_paths ... ok
[INFO] [stdout] test fetchers::stackoverflow::tests::test_parse_other_se_sites ... ok
[INFO] [stdout] test fetchers::tests::test_empty_registry ... ok
[INFO] [stdout] test fetchers::default::tests::test_skip_conversion_for_plain_text_content_type ... ok
[INFO] [stdout] test fetchers::tests::test_policy_prefix_normalizes_case_default_port_and_trailing_dot ... ok
[INFO] [stdout] test fetchers::tests::test_policy_prefix_matches_same_origin_and_path_boundary ... ok
[INFO] [stdout] test fetchers::tests::test_registry_with_defaults ... ok
[INFO] [stdout] test fetchers::tests::test_url_prefix_case_normalization ... ok
[INFO] [stdout] test fetchers::tests::test_url_prefix_port_handling ... ok
[INFO] [stdout] test fetchers::twitter::tests::test_expand_text_urls_no_entities ... ok
[INFO] [stdout] test fetchers::twitter::tests::test_fetcher_matches ... ok
[INFO] [stdout] test fetchers::tests::test_url_prefix_scheme_mismatch ... ok
[INFO] [stdout] test fetchers::tests::test_policy_prefix_rejects_lookalike_hosts ... ok
[INFO] [stdout] test fetchers::default::tests::test_conditional_fetch_if_modified_since ... ok
[INFO] [stdout] test fetchers::twitter::tests::test_fetch_syndication_with_mock ... ok
[INFO] [stdout] test fetchers::twitter::tests::test_format_metrics ... ok
[INFO] [stdout] test fetchers::twitter::tests::test_format_oembed_minimal_fields ... ok
[INFO] [stdout] test fetchers::twitter::tests::test_format_oembed_response ... ok
[INFO] [stdout] test fetchers::twitter::tests::test_format_date ... ok
[INFO] [stdout] test fetchers::twitter::tests::test_expand_text_urls ... ok
[INFO] [stdout] test fetchers::twitter::tests::test_format_syndication_minimal_fields ... ok
[INFO] [stdout] test fetchers::twitter::tests::test_format_syndication_regular_tweet ... ok
[INFO] [stdout] test fetchers::twitter::tests::test_format_syndication_with_quoted_tweet ... ok
[INFO] [stdout] test fetchers::twitter::tests::test_parse_tweet_url_rejects_non_numeric_id ... ok
[INFO] [stdout] test fetchers::twitter::tests::test_parse_tweet_url_twitter_com ... ok
[INFO] [stdout] test fetchers::twitter::tests::test_parse_tweet_url_rejects_non_tweet_paths ... ok
[INFO] [stdout] test fetchers::wikipedia::tests::test_fetcher_matches ... ok
[INFO] [stdout] test fetchers::twitter::tests::test_format_syndication_article_tweet ... ok
[INFO] [stdout] test fetchers::default::tests::test_word_count_in_response ... ok
[INFO] [stdout] test fetchers::twitter::tests::test_format_syndication_with_media ... ok
[INFO] [stdout] test fetchers::twitter::tests::test_strip_html_tags ... ok
[INFO] [stdout] test fetchers::wikipedia::tests::test_format_wikipedia_response ... ok
[INFO] [stdout] test fetchers::twitter::tests::test_parse_tweet_url_rejects_reserved_paths ... ok
[INFO] [stdout] test fetchers::twitter::tests::test_parse_tweet_url_rejects_wrong_host ... ok
[INFO] [stdout] test fetchers::twitter::tests::test_parse_tweet_url_x_com ... ok
[INFO] [stdout] test fetchers::wikipedia::tests::test_parse_wikipedia_url ... ok
[INFO] [stdout] test fetchers::wikipedia::tests::test_parse_other_language ... ok
[INFO] [stdout] test fetchers::wikipedia::tests::test_rejects_non_wiki_path ... ok
[INFO] [stdout] test fetchers::wikipedia::tests::test_rejects_non_wikipedia ... ok
[INFO] [stdout] test fetchers::youtube::tests::test_fetcher_matches ... ok
[INFO] [stdout] test fetchers::youtube::tests::test_parse_youtu_be ... ok
[INFO] [stdout] test fetchers::youtube::tests::test_parse_youtube_no_www ... ok
[INFO] [stdout] test fetchers::youtube::tests::test_rejects_no_v_param ... ok
[INFO] [stdout] test fetchers::youtube::tests::test_parse_youtube_watch ... ok
[INFO] [stdout] test fetchers::youtube::tests::test_rejects_non_youtube ... ok
[INFO] [stdout] test file_saver::tests::test_local_file_saver_reject_traversal_absolute ... ok
[INFO] [stdout] test file_saver::tests::test_local_file_saver_resolve_relative ... ok
[INFO] [stdout] test file_saver::tests::test_local_file_saver_no_base_accepts_absolute ... ok
[INFO] [stdout] test file_saver::tests::test_normalize_path ... ok
[INFO] [stdout] test tool::tests::test_execution_rejects_invalid_url_before_running ... ok
[INFO] [stdout] test tool::tests::test_tool_builder ... ok
[INFO] [stdout] test tool::tests::test_build_service_propagates_validation_errors ... ok
[INFO] [stdout] test tool::tests::test_tool_builder_hardened_profile ... ok
[INFO] [stdout] test tool::tests::test_execution_rejects_unknown_parameter ... ok
[INFO] [stdout] test tool::tests::test_tool_definition_uses_contract_metadata ... ok
[INFO] [stdout] test file_saver::tests::test_local_file_saver_no_base_requires_absolute ... ok
[INFO] [stdout] test file_saver::tests::test_local_file_saver_validate_path ... ok
[INFO] [stdout] test tool::tests::test_tool_builder_opt_out_private_ip_blocking ... ok
[INFO] [stdout] test tool::tests::test_tool_schema_feature_gating ... ok
[INFO] [stdout] test file_saver::tests::test_local_file_saver_resolve_subdirectory ... ok
[INFO] [stdout] test tool::tests::test_tool_llmtxt_matches_help ... ok
[INFO] [stdout] test tool::tests::test_tool_metadata ... ok
[INFO] [stdout] test tool::tests::test_tool_status ... ok
[INFO] [stdout] test tool::tests::test_tool_builder_security_defaults ... ok
[INFO] [stdout] test types::tests::test_http_method_from_str ... ok
[INFO] [stdout] test file_saver::tests::test_local_file_saver_save_and_read ... ok
[INFO] [stdout] test types::tests::test_request_effective_method ... ok
[INFO] [stdout] test types::tests::test_http_method_display ... ok
[INFO] [stdout] test types::tests::test_response_serialization ... ok
[INFO] [stdout] test types::tests::test_request_builder ... ok
[INFO] [stdout] test types::tests::test_request_serialization ... ok
[INFO] [stdout] test tool::tests::test_tool_schemas ... ok
[INFO] [stdout] test fetchers::youtube::tests::test_rejects_non_watch ... ok
[INFO] [stdout] test file_saver::tests::test_local_file_saver_reject_traversal ... ok
[INFO] [stdout] test file_saver::tests::test_local_file_saver_creates_parent_dirs ... ok
[INFO] [stdout] test fetchers::default::tests::test_markdown_content_type_without_markdown_request_returns_raw ... ok
[INFO] [stdout] test fetchers::default::tests::test_redirect_chain_tracked ... ok
[INFO] [stdout] test fetchers::default::tests::test_plain_text_content_type_without_text_request_returns_raw ... ok
[INFO] [stdout] test fetchers::default::tests::test_redirect_target_handles_relative_location ... ok
[INFO] [stdout] test client::tests::test_batch_fetch_multiple_urls ... ok
[INFO] [stdout] test fetchers::default::tests::test_manual_redirect_following ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 253 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.98s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/fetcher_live.rs (/opt/rustwide/target/debug/deps/fetcher_live-67cac53b113bff2f)
[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/file_saver_safety.rs (/opt/rustwide/target/debug/deps/file_saver_safety-e4937d2b06ef6767)
[INFO] [stdout] 
[INFO] [stdout] running 28 tests
[INFO] [stdout] test test_description_reflects_save_enabled ... ok
[INFO] [stdout] test test_local_file_saver_empty_filename ... ok
[INFO] [stdout] test test_path_traversal_absolute_escape ... ok
[INFO] [stdout] test test_no_base_dir_requires_absolute ... ok
[INFO] [stdout] test test_path_traversal_dotdot ... ok
[INFO] [stdout] test test_local_file_saver_validate_then_save ... ok
[INFO] [stdout] test test_save_no_saver_errors ... ok
[INFO] [stdout] test test_save_respects_allow_list ... ok
[INFO] [stdout] test test_save_disabled_by_default ... ok
[INFO] [stdout] test test_save_schema_gating_default_hidden ... ok
[INFO] [stdout] test test_save_respects_block_list ... ok
[INFO] [stdout] test test_save_schema_gating_enabled_visible ... ok
[INFO] [stdout] test test_local_file_saver_large_write ... ok
[INFO] [stdout] test test_save_filename_unicode ... ok
[INFO] [stdout] test test_save_head_request_no_body ... ok
[INFO] [stdout] test test_save_http_500 ... ok
[INFO] [stdout] test test_save_http_404 ... ok
[INFO] [stdout] test test_save_filename_with_spaces ... ok
[INFO] [stdout] test test_save_empty_body ... ok
[INFO] [stdout] test test_save_deeply_nested_path ... ok
[INFO] [stdout] test test_save_connect_timeout_does_not_hang ... ok
[INFO] [stdout] test test_save_via_default_fetch_to_file_trait_method ... ok
[INFO] [stdout] test test_path_traversal_null_bytes ... ok
[INFO] [stdout] test test_save_overwrites_existing_file ... ok
[INFO] [stdout] test test_concurrent_saves_dont_corrupt ... ok
[INFO] [stdout] test test_save_various_binary_types ... ok
[INFO] [stdout] test test_save_binary_with_slow_response_truncated ... ok
[INFO] [stdout] test test_save_slow_server_does_not_hang ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 28 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.67s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/integration.rs (/opt/rustwide/target/debug/deps/integration-a32ae53a4fced1f4)
[INFO] [stdout] 
[INFO] [stdout] running 39 tests
[INFO] [stdout] test test_fetch_blocks_loopback_by_default ... ok
[INFO] [stdout] test test_fetcher_registry_allow_list_rejects_lookalike_host ... ok
[INFO] [stdout] test test_fetcher_registry_allow_block_lists ... ok
[INFO] [stdout] test test_fetcher_registry_url_validation ... ok
[INFO] [stdout] test test_fetch_enables_conversions_by_default ... ok
[INFO] [stdout] test test_entity_decoding_in_html ... ok
[INFO] [stdout] test test_execute_with_saver_no_save_falls_through ... ok
[INFO] [stdout] test test_missing_url ... ok
[INFO] [stdout] test test_invalid_url_scheme ... ok
[INFO] [stdout] test test_html_detection_by_body ... ok
[INFO] [stdout] test test_filename_from_url ... ok
[INFO] [stdout] test test_save_to_file_disabled_by_default ... ok
[INFO] [stdout] test test_save_to_file_rejects_path_traversal ... ok
[INFO] [stdout] test test_save_to_file_schema_gating ... ok
[INFO] [stdout] test test_4xx_status ... ok
[INFO] [stdout] test test_save_to_file_without_saver_errors ... ok
[INFO] [stdout] test test_head_request ... ok
[INFO] [stdout] test test_fetch_with_options_respects_disabled_conversion ... ok
[INFO] [stdout] test test_github_fetcher_url_matching ... ok
[INFO] [stdout] test test_tool_default_blocks_loopback ... ok
[INFO] [stdout] test test_html_to_text ... ok
[INFO] [stdout] test test_content_disposition_filename ... ok
[INFO] [stdout] test test_url_prefix_allow_list ... ok
[INFO] [stdout] test test_url_prefix_block_list ... ok
[INFO] [stdout] test test_html_to_markdown ... ok
[INFO] [stdout] test test_5xx_status ... ok
[INFO] [stdout] test test_custom_user_agent ... ok
[INFO] [stdout] test test_binary_content ... ok
[INFO] [stdout] test test_fetcher_registry_with_defaults ... ok
[INFO] [stdout] test test_excessive_newlines_filtered ... ok
[INFO] [stdout] test test_text_body_truncated_at_safety_limit ... ok
[INFO] [stdout] test test_non_html_with_conversion_flags ... ok
[INFO] [stdout] test test_save_to_file_binary_content ... ok
[INFO] [stdout] test test_save_to_file_creates_subdirectories ... ok
[INFO] [stdout] test test_tool_execution_returns_contract_output ... ok
[INFO] [stdout] test test_simple_get ... ok
[INFO] [stdout] test test_size_for_text_content ... ok
[INFO] [stdout] test test_tool_service_executes_json_calls ... ok
[INFO] [stdout] test test_save_to_file_text_content ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 39 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.11s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/proxy_env.rs (/opt/rustwide/target/debug/deps/proxy_env-555dcf89d51bfd87)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test test_proxy_env_is_ignored_by_default_but_can_be_enabled ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.19s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/ssrf_security.rs (/opt/rustwide/target/debug/deps/ssrf_security-58fbd16051ea52ff)
[INFO] [stdout] 
[INFO] [stdout] running 33 tests
[INFO] [stdout] test test_hardened_profile_blocks_internal_hostname_suffixes ... ok
[INFO] [stdout] test test_default_blocks_loopback_mock_server ... ok
[INFO] [stdout] test test_hardened_profile_blocks_non_standard_ports ... ok
[INFO] [stdout] test test_input_001_data_scheme_blocked ... ok
[INFO] [stdout] test test_input_001_file_scheme_blocked ... ok
[INFO] [stdout] test test_leak_001_timeout_and_connect_display_are_generic ... ok
[INFO] [stdout] test test_ssrf_001_loopback_ipv4_alt_blocked ... ok
[INFO] [stdout] test test_ssrf_001_loopback_ipv4_blocked ... ok
[INFO] [stdout] test test_ssrf_001_private_10_blocked ... ok
[INFO] [stdout] test test_ssrf_001_private_172_blocked ... ok
[INFO] [stdout] test test_ssrf_001_private_192_168_blocked ... ok
[INFO] [stdout] test test_input_001_gopher_scheme_blocked ... ok
[INFO] [stdout] test test_prefix_block_and_dns_policy_combined ... ok
[INFO] [stdout] test test_ssrf_003_cloud_metadata_blocked ... ok
[INFO] [stdout] test test_ssrf_003_link_local_blocked ... ok
[INFO] [stdout] test test_ssrf_004_zero_ip_blocked ... ok
[INFO] [stdout] test test_input_001_ftp_scheme_blocked ... ok
[INFO] [stdout] test test_ssrf_002_localhost_blocked ... ok
[INFO] [stdout] test test_leak_001_request_error_variants_are_generic ... ok
[INFO] [stdout] test test_ssrf_006_ipv6_loopback_blocked ... ok
[INFO] [stdout] test test_ssrf_010_redirect_to_loopback_blocked ... ok
[INFO] [stdout] test test_dos_001_body_within_limit_not_truncated ... ok
[INFO] [stdout] test test_input_007_subdomain_not_matched_by_host_prefix ... ok
[INFO] [stdout] test test_ssrf_010_redirect_scheme_validation ... ok
[INFO] [stdout] test test_dos_001_body_size_limit ... ok
[INFO] [stdout] test test_conv_001_script_stripped_in_text ... ok
[INFO] [stdout] test test_conv_001_script_stripped_in_markdown ... ok
[INFO] [stdout] test test_ssrf_010_same_host_redirect_policy_blocks_cross_host_redirect ... ok
[INFO] [stdout] test test_explicit_opt_out_allows_loopback ... ok
[INFO] [stdout] test test_ssrf_010_redirect_to_private_ip_blocked ... ok
[INFO] [stdout] test test_ssrf_010_redirect_followed_when_safe ... ok
[INFO] [stdout] test test_net_004_env_proxy_ignored_by_default ... ok
[INFO] [stdout] test test_net_004_env_proxy_can_be_opted_in ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 33 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.86s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests fetchkit
[INFO] [stdout] 
[INFO] [stdout] running 18 tests
[INFO] [stdout] test src/lib.rs - (line 23) - compile ... ok
[INFO] [stdout] test src/client.rs - client::fetch (line 124) - compile ... ok
[INFO] [stdout] test src/client.rs - client::batch_fetch (line 171) - compile ... ok
[INFO] [stdout] test src/lib.rs - (line 8) - compile ... ok
[INFO] [stdout] test src/convert.rs - convert::strip_boilerplate (line 890) ... FAILED
[INFO] [stdout] test src/dns.rs - dns::DnsPolicy (line 19) ... ok
[INFO] [stdout] test src/types.rs - types::HttpMethod (line 11) ... ok
[INFO] [stdout] test src/convert.rs - convert::html_to_text (line 346) ... ok
[INFO] [stdout] test src/types.rs - types::FetchResponse (line 269) ... ok
[INFO] [stdout] test src/types.rs - types::PageLink (line 188) ... ok
[INFO] [stdout] test src/error.rs - error::FetchError (line 9) ... ok
[INFO] [stdout] test src/tool.rs - tool::ToolBuilder (line 105) ... ok
[INFO] [stdout] test src/convert.rs - convert::extract_metadata (line 605) ... ok
[INFO] [stdout] test src/convert.rs - convert::html_to_markdown (line 47) ... ok
[INFO] [stdout] test src/lib.rs - (line 43) ... ok
[INFO] [stdout] test src/types.rs - types::FetchRequest (line 55) ... ok
[INFO] [stdout] test src/fetchers/mod.rs - fetchers::FetcherRegistry (line 103) ... ok
[INFO] [stdout] test src/file_saver.rs - file_saver::LocalFileSaver (line 69) ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- src/convert.rs - convert::strip_boilerplate (line 890) stdout ----
[INFO] [stdout] error: linking with `cc` failed: exit status: 1
[INFO] [stdout]   |
[INFO] [stdout]   = note:  "cc" "-m64" "/tmp/rustdoctestGSzCKs/rustcY8aUH7/symbols.o" "<2 object files omitted>" "-Wl,--as-needed" "-Wl,-Bstatic" "/opt/rustwide/target/debug/deps/{libfetchkit-e6e83cf7e28944c0,libschemars-31c536369c0d0b0d,libdyn_clone-b4373bc64eef4ba3,libref_cast-d3702dc26c8523fb,libreqwest-861a974bb30ab199,librustls_platform_verifier-b7f1542483bc15cf,librustls_native_certs-a1dba9c5cc27f159,libopenssl_probe-703a3ddfc0e4be36,libhyper_rustls-efbd728ba96a33a9,libtokio_rustls-ae8b616abefdf774,librustls-a724ef1219e418e1,libsubtle-e2f0af8959bd7889,libwebpki-3b94ddf02bb29a76,libuntrusted-151845769873c416,libaws_lc_rs-8b0fe499c09be9dc,libaws_lc_sys-ed298329020e8f29,librustls_pki_types-d9016c657ae33e66,libzeroize-e5ba3babb6b7003b,libmime-7cbfcc84299bf52b,libencoding_rs-e36cbb4cff8cacd8,libserde_json-0779dab6c7a1aaff,libzmij-d2f562b84b927b2e,libserde-4ec999752e432374,libserde_core-3babf6f5a9b2410c,libtower_http-61c65a86555d6e80,libbitflags-5009bb8c2d6ccbe4,libiri_string-fba156a8d873a890,libasync_compression-fd263cbf0da8fb95,libcompression_codecs-e8989d272b7f959d,libflate2-0f1402ca2641abbe,libminiz_oxide-a8959b4b1607b0b2,libsimd_adler32-cb76273132008ebb,libcrc32fast-5906a57d877d687d,libcfg_if-cad248e7066eec15,libbrotli-70cf56f20498ea43,libbrotli_decompressor-9674ac0fdfae1110,liballoc_stdlib-ebeb3b8ca2c54885,liballoc_no_stdlib-8a26777fee7f8158,libcompression_core-02cd4f19cd465a46,libtower-8c07021503923f9d,libtower_layer-5699d784b4449e00,libhyper_util-75afb5d95ed05ed7,libbase64-fff42f7554bbeb90,libipnet-d13aa1d8cef494ce,libtower_service-222788e4f5219726,libhyper-dc20ff53f5fedda0,libwant-4a0be0a267c8825f,libtry_lock-b2ba3b7879656042,libhttparse-2dcf90c780aed9d3,libh2-a7a049d53f20a1e8,libtracing-cdd04d661b1e46d2,libtracing_core-0a2040ae5074f76c,libonce_cell-210b47fe854405d5,libindexmap-b32e6afe26051abc,libequivalent-9631f206a02b9f54,libhashbrown-d0fb47154dd694bf,libfnv-2a26f5d3b9cd4973,libpin_utils-edd6e294c1e21a4f,libatomic_waker-f98c2fb1596910db,libhttpdate-fd089b66c335a993,libtokio_util-47996593a4624bbc,libtokio-21bfad6f1e0aca5d,libsocket2-5621979a45a8f253,libmio-a44ee8f37bbaf197,liblibc-107c1a2108505c33,libhttp_body_util-2354d0cd9178a48e,libhttp_body-79191c764c63be4b,liblog-753a0cb3f11b08fe,libhttp-f9b3654e0d1e7e7a,libitoa-0d0a278c06e14513,libbytes-a6415339708e1154,libsync_wrapper-096429d0b7f46333,libthiserror-b705a45025fdf89b,libfutures-d26fd7aef9817031,libfutures_executor-d6cfecd2c0e05459,libfutures_util-389ba0d60f78af53,libmemchr-d8218b780a78fe0a,libfutures_io-e1af3a1b997b1c01,libslab-6f51d9019150979e,libfutures_channel-fa74799ac390873e,libpin_project_lite-8ad468af17824a0b,libfutures_sink-59b73d2c5a0fb80d,libfutures_task-02cf0fb977266c2e,libfutures_core-3e8ff8c6a8ead7f1,liburl-176fbb1182318e5b,libidna-c276c6be1b9baf14,libutf8_iter-efb3984ee203d151,libidna_adapter-b8061310cb34d4ce,libicu_properties-f076f9650b0a124a,libicu_properties_data-7e155758dd6ea0a4,libicu_normalizer-d621a7e000213e64,libsmallvec-128704011005142e,libicu_normalizer_data-e4349eb9146e5fe1,libicu_collections-1204fe03f4cb4947,libpotential_utf-b95e5f7663bb20ea,libicu_provider-37f11db44ec450d8,libicu_locale_core-528d4965d7a606a8,libtinystr-7043aa390928f9d3,liblitemap-d0ce52a8e9251912,libwriteable-9b3c58e63c9ae012,libzerovec-02d3df1a1ad97fe7,libzerotrie-a4a181bd12cc478a,libyoke-7764771cc300a301,libstable_deref_trait-646f6b28b9520b3d,libzerofrom-e2665413185ef528,libform_urlencoded-81a6c2dcdca08ecf,libpercent_encoding-99cdb00cefa02ca0}.rlib" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib/{libstd-*,libpanic_unwind-*,libobject-*,libmemchr-*,libaddr2line-*,libgimli-*,libcfg_if-*,librustc_demangle-*,libstd_detect-*,libhashbrown-*,librustc_std_workspace_alloc-*,libminiz_oxide-*,libadler2-*,libunwind-*,liblibc-*,librustc_std_workspace_core-*,liballoc-*,libcore-*,libcompiler_builtins-*}.rlib" "-Wl,-Bdynamic" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-L" "/tmp/rustdoctestGSzCKs/rustcY8aUH7/raw-dylibs" "-B<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/bin/gcc-ld" "-fuse-ld=lld" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/opt/rustwide/target/debug/build/aws-lc-sys-c304dea933585c71/out" "-L" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/tmp/rustdoctestGSzCKs/rust_out" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs"
[INFO] [stdout]   = note: some arguments are omitted. use `--verbose` to show all linker arguments
[INFO] [stdout]   = note: collect2: fatal error: ld terminated with signal 9 [Killed]
[INFO] [stdout]           compilation terminated.
[INFO] [stdout]           
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error
[INFO] [stdout] 
[INFO] [stdout] Couldn't compile the test.
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     src/convert.rs - convert::strip_boilerplate (line 890)
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 17 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 20.86s
[INFO] [stdout] 
[INFO] [stderr] error: doctest failed, to rerun pass `--doc`
[INFO] running `Command { std: "docker" "inspect" "2c9b6a8cc924f96a4589d32cb38176f6127043510cd86d64c011aa6c4a7b76f3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2c9b6a8cc924f96a4589d32cb38176f6127043510cd86d64c011aa6c4a7b76f3", kill_on_drop: false }`
[INFO] [stdout] 2c9b6a8cc924f96a4589d32cb38176f6127043510cd86d64c011aa6c4a7b76f3
