[INFO] fetching crate mawaqit-api 0.6.0...
[INFO] testing mawaqit-api-0.6.0 against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate mawaqit-api 0.6.0 into /workspace/builds/worker-3-tc2/source
[INFO] started tweaking crates.io crate mawaqit-api 0.6.0
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate mawaqit-api 0.6.0
[INFO] tweaked toml for crates.io crate mawaqit-api 0.6.0 written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate mawaqit-api 0.6.0 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate mawaqit-api 0.6.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" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:125:12
[INFO] [stderr]     |
[INFO] [stderr] 125 | homepage = "https://github.com/Bilel-Eljaamii/mawaqit-api"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 130 | repository = "https://github.com/Bilel-Eljaamii/mawaqit-api"
[INFO] [stderr]     |              -----------------------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `mawaqit-api` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] a360b38d9d180bde7b542fcc0640b5779da64bcdb7d567864924a2d7cc6fd6d9
[INFO] running `Command { std: "docker" "start" "a360b38d9d180bde7b542fcc0640b5779da64bcdb7d567864924a2d7cc6fd6d9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a360b38d9d180bde7b542fcc0640b5779da64bcdb7d567864924a2d7cc6fd6d9", 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" "a360b38d9d180bde7b542fcc0640b5779da64bcdb7d567864924a2d7cc6fd6d9" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "a360b38d9d180bde7b542fcc0640b5779da64bcdb7d567864924a2d7cc6fd6d9", 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" "a360b38d9d180bde7b542fcc0640b5779da64bcdb7d567864924a2d7cc6fd6d9" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:125:12
[INFO] [stderr]     |
[INFO] [stderr] 125 | homepage = "https://github.com/Bilel-Eljaamii/mawaqit-api"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 130 | repository = "https://github.com/Bilel-Eljaamii/mawaqit-api"
[INFO] [stderr]     |              -----------------------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `mawaqit-api` (manifest) generated 1 warning
[INFO] [stderr]    Compiling libc v0.2.190
[INFO] [stderr]    Compiling bytes v1.12.1
[INFO] [stderr]    Compiling futures-core v0.3.34
[INFO] [stderr]    Compiling aws-lc-rs v1.18.1
[INFO] [stderr]    Compiling zeroize v1.9.0
[INFO] [stderr]    Compiling litemap v0.8.3
[INFO] [stderr]    Compiling writeable v0.6.4
[INFO] [stderr]    Compiling smallvec v1.16.2
[INFO] [stderr]    Compiling icu_normalizer_data v2.3.0
[INFO] [stderr]    Compiling icu_properties_data v2.3.0
[INFO] [stderr]    Compiling serde_core v1.0.229
[INFO] [stderr]    Compiling rustls v0.23.45
[INFO] [stderr]    Compiling rustversion v1.0.23
[INFO] [stderr]    Compiling syn v3.0.6
[INFO] [stderr]    Compiling futures-task v0.3.34
[INFO] [stderr]    Compiling futures-sink v0.3.34
[INFO] [stderr]    Compiling indexmap v2.14.2
[INFO] [stderr]    Compiling rustls-pki-types v1.15.1
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling futures-util v0.3.34
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling futures-channel v0.3.34
[INFO] [stderr]    Compiling zmij v1.0.23
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]    Compiling base64 v0.23.1
[INFO] [stderr]    Compiling ipnet v2.12.2
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling bitflags v2.13.2
[INFO] [stderr]    Compiling multiversion_no_op v1.0.0
[INFO] [stderr]    Compiling heapless v0.9.3
[INFO] [stderr]    Compiling thiserror v2.0.21
[INFO] [stderr]    Compiling crc32fast v1.5.2
[INFO] [stderr]    Compiling core_detect v1.0.0
[INFO] [stderr]    Compiling simdutf8 v0.1.5
[INFO] [stderr]    Compiling hash32 v0.3.1
[INFO] [stderr]    Compiling encoding_rs v0.8.42
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]    Compiling rustls-native-certs v0.8.4
[INFO] [stderr]    Compiling http v1.5.0
[INFO] [stderr]    Compiling jobserver v0.1.35
[INFO] [stderr]    Compiling mio v1.2.4
[INFO] [stderr]    Compiling socket2 v0.6.5
[INFO] [stderr]    Compiling cc v1.6.0
[INFO] [stderr]    Compiling http-body v1.1.0
[INFO] [stderr]    Compiling cmake v0.1.58
[INFO] [stderr]    Compiling http-body-util v0.1.5
[INFO] [stderr]    Compiling aws-lc-sys v0.45.0
[INFO] [stderr]    Compiling synstructure v0.14.0
[INFO] [stderr]    Compiling zerofrom-derive v0.1.8
[INFO] [stderr]    Compiling yoke-derive v0.8.4
[INFO] [stderr]    Compiling zerovec-derive v0.11.6
[INFO] [stderr]    Compiling displaydoc v0.2.7
[INFO] [stderr]    Compiling tokio-macros v2.7.2
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling thiserror-impl v2.0.21
[INFO] [stderr]    Compiling tokio v1.53.2
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling zerotrie v0.2.5
[INFO] [stderr]    Compiling zerovec v0.11.8
[INFO] [stderr]    Compiling tinystr v0.8.4
[INFO] [stderr]    Compiling potential_utf v0.1.6
[INFO] [stderr]    Compiling icu_locale_core v2.3.0
[INFO] [stderr]    Compiling icu_collections v2.3.0
[INFO] [stderr]    Compiling icu_provider v2.3.1
[INFO] [stderr]    Compiling icu_normalizer v2.3.0
[INFO] [stderr]    Compiling icu_properties v2.3.0
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling chrono v0.4.45
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling tokio-util v0.7.19
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling h2 v0.4.19
[INFO] [stderr]    Compiling tower-http v0.6.11
[INFO] [stderr]    Compiling hyper v1.11.1
[INFO] [stderr]    Compiling hyper-util v0.1.21
[INFO] [stderr]    Compiling rustls-webpki v0.103.15
[INFO] [stderr]    Compiling tokio-rustls v0.26.6
[INFO] [stderr]    Compiling rustls-platform-verifier v0.7.1
[INFO] [stderr]    Compiling hyper-rustls v0.27.10
[INFO] [stderr]    Compiling reqwest v0.13.5
[INFO] [stderr]    Compiling mawaqit-api v0.6.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 2m 15s
[INFO] running `Command { std: "docker" "inspect" "a360b38d9d180bde7b542fcc0640b5779da64bcdb7d567864924a2d7cc6fd6d9", 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" "a360b38d9d180bde7b542fcc0640b5779da64bcdb7d567864924a2d7cc6fd6d9" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:125:12
[INFO] [stderr]     |
[INFO] [stderr] 125 | homepage = "https://github.com/Bilel-Eljaamii/mawaqit-api"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 130 | repository = "https://github.com/Bilel-Eljaamii/mawaqit-api"
[INFO] [stderr]     |              -----------------------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `mawaqit-api` (manifest) generated 1 warning
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling tokio v1.53.2
[INFO] [stderr]    Compiling tokio-util v0.7.19
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling tokio-rustls v0.26.6
[INFO] [stderr]    Compiling h2 v0.4.19
[INFO] [stderr]    Compiling tower-http v0.6.11
[INFO] [stderr]    Compiling hyper v1.11.1
[INFO] [stderr]    Compiling hyper-util v0.1.21
[INFO] [stderr]    Compiling hyper-rustls v0.27.10
[INFO] [stderr]    Compiling reqwest v0.13.5
[INFO] [stderr]    Compiling mawaqit-api v0.6.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1m 00s
[INFO] running `Command { std: "docker" "inspect" "a360b38d9d180bde7b542fcc0640b5779da64bcdb7d567864924a2d7cc6fd6d9", 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" "a360b38d9d180bde7b542fcc0640b5779da64bcdb7d567864924a2d7cc6fd6d9" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]    --> Cargo.toml:125:12
[INFO] [stderr]     |
[INFO] [stderr] 125 | homepage = "https://github.com/Bilel-Eljaamii/mawaqit-api"
[INFO] [stderr]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 130 | repository = "https://github.com/Bilel-Eljaamii/mawaqit-api"
[INFO] [stderr]     |              -----------------------------------------------
[INFO] [stderr]     |
[INFO] [stderr]     = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `mawaqit-api` (manifest) generated 1 warning
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.38s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/mawaqit-api/14954590a96eaafd/out/mawaqit_api-14954590a96eaafd)
[INFO] [stderr]      Running tst/ct.rs (/opt/rustwide/target/release/build/mawaqit-api/7527f93ef71433b4/out/ct-7527f93ef71433b4)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 39 tests
[INFO] [stdout] test disk::f23_non_utf8_snapshot_degrades_to_none ... ok
[INFO] [stdout] test disk::finding_f23_snapshot_load_is_sanitized ... ok
[INFO] [stdout] test disk::f23_tmp_names_are_unique_per_writer ... ok
[INFO] [stdout] test disk::finding_f27_stale_snapshots_are_refused ... ok
[INFO] [stdout] test disk::finding_f23_oversized_snapshot_file_is_refused ... ok
[INFO] [stdout] test disk::default_conf_roundtrips_through_the_snapshot ... ok
[INFO] [stdout] test disk_cache::without_disk_cache_the_client_behaves_as_before ... ok
[INFO] [stdout] test disk::finding_f27_offline_stale_snapshot_is_an_error ... ok
[INFO] [stdout] test disk_cache::offline_without_a_snapshot_is_an_error ... ok
[INFO] [stdout] test disk::without_disk_cache_the_client_behaves_as_before ... ok
[INFO] [stdout] test disk_cache::hostile_snapshot_file_degrades_to_an_error ... ok
[INFO] [stdout] test hostile_http::cache_never_confuses_two_slugs ... ok
[INFO] [stdout] test disk::offline_without_a_snapshot_is_an_error ... ok
[INFO] [stdout] test disk::hostile_snapshot_file_degrades_to_an_error ... ok
[INFO] [stdout] test hostile_http::conf_page_hostile_xss_content_parses_structurally ... ok
[INFO] [stdout] test hostile_http::finding_f1_cross_origin_redirect_is_not_followed ... ok
[INFO] [stdout] test hostile_http::finding_f29b_oversized_search_word_is_refused_before_the_wire ... ok
[INFO] [stdout] test disk::successful_fetch_writes_a_snapshot_and_serves_memory_afterwards ... ok
[INFO] [stdout] test disk_cache::successful_fetch_writes_a_snapshot_and_serves_memory_afterwards ... ok
[INFO] [stdout] test hostile_http::finding_f22_search_results_are_sanitized_at_the_ingress ... ok
[INFO] [stdout] test hostile_http::invalidate_none_also_drops_the_search_cache ... ok
[INFO] [stdout] test hostile_http::search_empty_word_short_circuits_without_a_request ... ok
[INFO] [stdout] test disk::failed_fetch_falls_back_to_the_snapshot ... ok
[INFO] [stdout] test hostile_http::invalidate_drops_one_slug_and_keeps_the_others ... ok
[INFO] [stdout] test hostile_http::finding_f30_cache_key_is_the_exact_request_string ... ok
[INFO] [stdout] test hostile_http::oversized_body_is_rejected_by_the_cap ... ok
[INFO] [stdout] test disk_cache::failed_fetch_falls_back_to_the_snapshot ... ok
[INFO] [stdout] test hostile_http::truncated_body_and_connection_reset_are_errors ... ok
[INFO] [stdout] test hostile_http::finding_f3_documented_cap_rejects_oversized_response ... ok
[INFO] [stdout] test hostile_http::redirect_loop_stays_bounded_by_the_http_client ... ok
[INFO] [stdout] test hostile_http::search_bounded_input_stays_bounded ... ok
[INFO] [stdout] test hostile_http::search_query_is_percent_encoded_crlf_never_reach_the_wire ... ok
[INFO] [stdout] test hostile_http::conf_page_lax_content_type_is_documented_behavior ... ok
[INFO] [stdout] test hostile_http::search_error_statuses_surface_as_errors ... ok
[INFO] [stdout] test hostile_http::search_non_utf8_and_bom_bodies_are_rejected ... ok
[INFO] [stdout] test hostile_http::today_and_month_iqama_resolve_through_the_public_methods ... ok
[INFO] [stdout] test hostile_http::conf_page_garbage_html_is_conf_data_not_found ... ok
[INFO] [stdout] test hostile_http::finding_f2_hostile_slug_never_leaves_the_mosque_namespace ... ok
[INFO] [stdout] test hostile_http::search_garbage_bodies_are_errors_never_panics ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 39 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.79s
[INFO] [stdout] 
[INFO] [stderr]      Running tst/e2e.rs (/opt/rustwide/target/release/build/mawaqit-api/aef3de15a81dca65/out/e2e-aef3de15a81dca65)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test smoke::live_search_and_calendar ... ignored, hits the live mawaqit.net site
[INFO] [stdout] test world_tour::hostile_world_tour ... ignored, hits the live mawaqit.net site for 100+ mosques
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tst/fuzz.rs (/opt/rustwide/target/release/build/mawaqit-api/19dec16f5c6d4e06/out/fuzz-19dec16f5c6d4e06)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test mutation::fuzz_mqtc_payload_never_panics ... ok
[INFO] [stdout] test mutation::fuzz_search_response_parsing_never_panics ... ok
[INFO] [stdout] test mutation::finding_f10_snapshot_roundtrips_wire_tolerated_shapes ... ok
[INFO] [stdout] test mutation::fuzz_search_and_snapshot_coexist_bounded ... ok
[INFO] [stdout] test mutation::fuzz_disk_store_load_roundtrip_under_hostile_slugs ... ok
[INFO] [stdout] test mutation::fuzz_disk_snapshot_load_never_panics ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 17.71s
[INFO] [stdout] 
[INFO] [stderr]      Running tst/ut.rs (/opt/rustwide/target/release/build/mawaqit-api/b65f5c5443cb0c59/out/ut-b65f5c5443cb0c59)
[INFO] [stdout] 
[INFO] [stdout] running 111 tests
[INFO] [stdout] test cache::stores_and_expires ... ok
[INFO] [stdout] test calendar::invalid_iqama_falls_back_to_adhan ... ok
[INFO] [stdout] test calendar::iqama_duplicate_day_keys_dedupe_to_one_day ... ok
[INFO] [stdout] test calendar::hostile_iqama_offsets_do_not_panic ... ok
[INFO] [stdout] test calendar::iqama_instants_stay_same_day_for_absolute_and_small_offsets ... ok
[INFO] [stdout] test cache::zero_ttl_expires_immediately ... ok
[INFO] [stdout] test calendar::parses_imsak_mode_row ... ok
[INFO] [stdout] test calendar::rejects_invalid_month ... ok
[INFO] [stdout] test calendar::rejects_short_day ... ok
[INFO] [stdout] test calendar::parses_row_without_shuruq_column ... ok
[INFO] [stdout] test calendar::parses_normal_mode_row ... ok
[INFO] [stdout] test client::minutes_between_handles_wrap ... ok
[INFO] [stdout] test calendar::rejects_days_surfacing_invalid_times ... ok
[INFO] [stdout] test calendar::resolves_relative_and_absolute_iqama ... ok
[INFO] [stdout] test cache::finding_f25_order_queue_compacts_under_ttl_churn ... ok
[INFO] [stdout] test calendar::finds_today ... ok
[INFO] [stdout] test calendar::dropped_days_are_reported_and_error_as_invalid_day ... ok
[INFO] [stdout] test cache::cap_evicts_the_oldest_entries ... ok
[INFO] [stdout] test cache::eviction_survives_stale_order_entries ... ok
[INFO] [stdout] test cache::overwrite_does_not_evict_or_grow ... ok
[INFO] [stdout] test calendar::iqama_rollover_instants_carry_the_next_day ... ok
[INFO] [stdout] test calendar::extracts_month_and_iqama ... ok
[INFO] [stdout] test calendar::five_column_row_without_page_shuruq_is_rejected ... ok
[INFO] [stdout] test calendar::iqama_passthrough_cannot_smuggle_non_display_times ... ok
[INFO] [stdout] test client::slug_length_is_bounded ... ok
[INFO] [stdout] test compact::crc_bit_flip_is_rejected_before_any_lookup ... ok
[INFO] [stdout] test compact::crafted_crc_valid_records_with_impossible_times_are_dropped ... ok
[INFO] [stdout] test compact::bad_magic_and_version_are_rejected ... ok
[INFO] [stdout] test compact::emitters_embed_the_exact_payload ... ok
[INFO] [stdout] test compact::header_flag_accessors_reflect_the_packed_bits ... ok
[INFO] [stdout] test compact::builder_len_and_is_empty_track_pushed_days ... ok
[INFO] [stdout] test compact::out_of_range_iqama_minutes_are_rejected_in_both_formats ... ok
[INFO] [stdout] test compact::finding_f29d_const_name_is_validated_before_interpolation ... ok
[INFO] [stdout] test compact::days_without_iqama_pack_and_decode_in_both_formats ... ok
[INFO] [stdout] test compact::empty_builder_yields_a_header_only_payload ... ok
[INFO] [stdout] test compact::out_of_bounds_dates_return_none_never_error ... ok
[INFO] [stdout] test compact::fajr_relative_roundtrip_preserves_every_field ... ok
[INFO] [stdout] test compact::direct_roundtrip_preserves_every_field ... ok
[INFO] [stdout] test compact::hostile_mutations_never_panic_and_ok_payloads_stay_queryable ... ok
[INFO] [stdout] test compact::jumuah_header_roundtrips ... ok
[INFO] [stdout] test compact::invalid_day_records_are_rejected_at_pack_time ... ok
[INFO] [stdout] test compact::p2b_view_next_event_falls_through_to_tomorrow ... ok
[INFO] [stdout] test compact::p2b_view_next_event_beyond_scope_is_none ... ok
[INFO] [stdout] test compact::p2b_compact_next_event_picks_upcoming_adhan ... ok
[INFO] [stdout] test compact::p2b_compact_skips_invalid_iqama ... ok
[INFO] [stdout] test compact::payload_sizes_match_the_layout_contract ... ok
[INFO] [stdout] test compact::start_day_of_year_bounds_are_rejected_with_valid_crc ... ok
[INFO] [stdout] test compact::truncated_and_tiny_buffers_are_rejected ... ok
[INFO] [stdout] test compact::white_night_isha_before_maghrib_is_rejected_in_fajr_relative_format ... ok
[INFO] [stdout] test compact::p2b_compact_rollover_iqama_is_a_tomorrow_instant ... ok
[INFO] [stdout] test compact::year_boundary_days_are_addressable ... ok
[INFO] [stdout] test prayer::p1_prayer_identity_is_stable ... ok
[INFO] [stdout] test prayer::p1_state_keys_cover_every_prayer_and_kind ... ok
[INFO] [stdout] test prayer::p1_labels_and_prayer_cover_every_kind ... ok
[INFO] [stdout] test corpus::unicode_and_control_characters_never_panic ... ok
[INFO] [stdout] test prayer::p2_hostile_times_are_inert ... ok
[INFO] [stdout] test prayer::p2_next_event_picks_the_upcoming_adhan ... ok
[INFO] [stdout] test prayer::p2_iqama_is_an_event_when_resolved ... ok
[INFO] [stdout] test prayer::p2_all_passed_falls_to_tomorrows_first_adhan ... ok
[INFO] [stdout] test corpus::hostile_json_structures_never_panic ... ok
[INFO] [stdout] test corpus::conf_data_lookalikes_never_confuse_the_parser ... ok
[INFO] [stdout] test prayer::p2_shuruq_is_an_event ... ok
[INFO] [stdout] test prayer::p4_today_view_carries_the_full_payload ... ok
[INFO] [stdout] test prayer::p5_is_active_on_windows ... ok
[INFO] [stdout] test prayer::p4_today_view_errors_without_a_calendar ... ok
[INFO] [stdout] test scraper::exotic_invisible_characters_are_stripped_from_display_fields ... ok
[INFO] [stdout] test scraper::extracts_conf_data_from_page ... ok
[INFO] [stdout] test corpus::truncations_of_valid_page_never_panic ... ok
[INFO] [stdout] test prayer::p2_no_iqama_adhan_only ... ok
[INFO] [stdout] test prayer::p2_rollover_iqama_belongs_to_tomorrow ... ok
[INFO] [stdout] test scraper::handles_multiline_and_semicolons_in_strings ... ok
[INFO] [stdout] test scraper::announcement_text_fields_are_all_sanitized ... ok
[INFO] [stdout] test scraper::ignores_conf_data_mentions_that_are_not_assignments ... ok
[INFO] [stdout] test semantics::finding_f21_full_cf_table_and_announcement_dates_are_sanitized ... ok
[INFO] [stdout] test semantics::finding_f26_a_failed_candidate_ends_the_scan ... ok
[INFO] [stdout] test scraper::f26_unbalanced_candidates_stay_linear ... ok
[INFO] [stdout] test prayer::p4_announcement_keys_are_stable_and_content_sensitive ... ok
[INFO] [stdout] test semantics::finding_f28_timezone_accessor_validates_the_wire_designator ... ok
[INFO] [stdout] test semantics::finding_f29c_error_payloads_are_bounded_and_sanitized ... ok
[INFO] [stdout] test semantics::exotic_month_keys_are_skipped ... ok
[INFO] [stdout] test semantics::finding_f5_duplicate_day_keys_yield_one_day ... ok
[INFO] [stdout] test semantics::finding_f6_display_strings_carry_no_control_or_bidi_characters ... ok
[INFO] [stdout] test compact::scope_byte_mapping_is_total_and_unknowns_degrade_to_custom ... ok
[INFO] [stdout] test corpus::byte_flips_never_panic ... ok
[INFO] [stdout] test client::default_and_debug_are_wired ... ok
[INFO] [stdout] test client::invalid_proxy_fails_fast ... ok
[INFO] [stdout] test compact::too_many_days_is_rejected_at_pack_time ... ok
[INFO] [stdout] test semantics::finding_f4_surfaced_times_are_always_valid_hhmm ... ok
[INFO] [stdout] test semantics::finding_f29a_double_sign_is_not_an_offset ... ok
[INFO] [stdout] test semantics::non_string_display_fields_become_none ... ok
[INFO] [stdout] test time::p3_is_due_only_within_the_minute ... ok
[INFO] [stdout] test semantics::finding_f6b_invisible_format_characters_are_stripped ... ok
[INFO] [stdout] test semantics::page_url_is_well_formed_for_benign_slugs ... ok
[INFO] [stdout] test time::p3_lenient_but_accurate_shapes_resolve_to_face_value ... ok
[INFO] [stdout] test time::p3_minutes_before_wraps_across_midnight ... ok
[INFO] [stdout] test voices::urls_are_built_only_from_the_catalog ... ok
[INFO] [stdout] test time::p3_minutes_before_lands_n_minutes_earlier ... ok
[INFO] [stdout] test time::p3_hostile_time_shapes_are_inert ... ok
[INFO] [stdout] test semantics::iqama_offset_rollover_stays_valid_hhmm ... ok
[INFO] [stdout] test semantics::layout_confusion_matrix_never_panics ... ok
[INFO] [stdout] test semantics::imsak_mode_is_decided_by_times_count_alone ... ok
[INFO] [stdout] test time::p3_notify_before_cap_is_sane ... ok
[INFO] [stdout] test voices::catalog_has_no_duplicates ... ok
[INFO] [stdout] test voices::voice_id_from_conf_validates_against_the_catalog ... ok
[INFO] [stdout] test time::p3_day_boundary_alerts_stay_accurate ... ok
[INFO] [stdout] test scraper::missing_conf_data_is_an_error ... ok
[INFO] [stdout] test semantics::all_broken_rows_fail_safe ... ok
[INFO] [stdout] test corpus::oversized_and_repetitive_pages_stay_bounded ... ok
[INFO] [stdout] test client::builders_compose_in_any_order ... ok
[INFO] [stdout] test client::proxy_validation_accepts_socks5h ... ok
[INFO] [stdout] test client::proxy_validation_rejects_everything_that_is_not_socks5h ... ok
[INFO] [stderr]      Running tests/voices.rs (/opt/rustwide/target/release/build/mawaqit-api/b25e5b654f0ba68b/out/voices-b25e5b654f0ba68b)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 111 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.43s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 17 tests
[INFO] [stdout] test f24_tmp_names_are_unique_per_writer ... ok
[INFO] [stdout] test p6_cached_path_is_catalog_validated ... ok
[INFO] [stdout] test download_surfaces_a_truncated_body_as_http ... ok
[INFO] [stdout] test unknown_id_is_rejected_before_any_network ... ok
[INFO] [stdout] test download_writes_atomically_and_skips_when_cached ... ok
[INFO] [stdout] test download_surfaces_a_transport_failure_as_http ... ok
[INFO] [stdout] test download_fails_when_the_tmp_write_is_refused ... FAILED
[INFO] [stdout] test failing_download_leaves_no_partial_file ... ok
[INFO] [stdout] test finding_f24_oversized_cached_voice_is_replaced ... ok
[INFO] [stdout] test download_rejects_an_empty_body ... ok
[INFO] [stdout] test download_ignores_stale_tmp_artifacts ... ok
[INFO] [stdout] test download_fails_when_the_destination_cannot_be_created ... ok
[INFO] [stdout] test download_rejects_oversize_content_length_before_downloading ... ok
[INFO] [stdout] test download_enforces_the_cap_without_content_length ... ok
[INFO] [stdout] test download_fails_when_the_destination_is_a_directory ... ok
[INFO] [stdout] test finding_f24_oversized_stream_is_cut_off_midstream ... ok
[INFO] [stdout] test download_enforces_the_size_cap ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- download_fails_when_the_tmp_write_is_refused stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'download_fails_when_the_tmp_write_is_refused' (4541) panicked at tests/voices.rs:260:65:
[INFO] [stdout] called `Result::unwrap_err()` on an `Ok` value: "/tmp/mawaqit-voices-tmp-readonly-503642998/adhan-quds.mp3"
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x633159e432d1 - <<std[617be2ca0a6fd877]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a373ad73a504971]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x633159e59fca - core[a373ad73a504971]::fmt::write
[INFO] [stdout]    2:     0x633159e483ac - <alloc[2e1b2a31b91974c5]::vec::Vec<u8> as core[a373ad73a504971]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x633159e1c126 - std[617be2ca0a6fd877]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x633159e3a059 - std[617be2ca0a6fd877]::panicking::default_hook
[INFO] [stdout]    5:     0x6331599c9f60 - test[aada8e7e76ba119b]::test_main_inner::{closure#0}
[INFO] [stdout]    6:     0x633159e3a382 - std[617be2ca0a6fd877]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x633159e1c1d2 - std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x633159e14a59 - std[617be2ca0a6fd877]::sys::backtrace::__rust_end_short_backtrace::<std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x633159e1d17d - __rustc[ea4f61d10b84890b]::rust_begin_unwind
[INFO] [stdout]   10:     0x633159e5a72c - core[a373ad73a504971]::panicking::panic_fmt
[INFO] [stdout]   11:     0x633159e5a502 - core[a373ad73a504971]::result::unwrap_failed
[INFO] [stdout]   12:     0x6331599b0ab8 - voices[21a215a5a52c033]::download_fails_when_the_tmp_write_is_refused::{closure#0}
[INFO] [stdout]   13:     0x6331599b7833 - <tokio[d29b92f0249a7f48]::runtime::scheduler::current_thread::Context>::enter::<core[a373ad73a504971]::task::poll::Poll<()>, <tokio[d29b92f0249a7f48]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[a373ad73a504971]::pin::Pin<&mut core[a373ad73a504971]::pin::Pin<&mut dyn core[a373ad73a504971]::future::future::Future<Output = ()>>>>::{closure#0}::{closure#0}>
[INFO] [stdout]   14:     0x6331599bb01c - <tokio[d29b92f0249a7f48]::runtime::context::scoped::Scoped<tokio[d29b92f0249a7f48]::runtime::scheduler::Context>>::set::<<tokio[d29b92f0249a7f48]::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio[d29b92f0249a7f48]::runtime::scheduler::current_thread::CoreGuard>::block_on<core[a373ad73a504971]::pin::Pin<&mut core[a373ad73a504971]::pin::Pin<&mut dyn core[a373ad73a504971]::future::future::Future<Output = ()>>>>::{closure#0}, core[a373ad73a504971]::option::Option<()>>::{closure#0}, (alloc[2e1b2a31b91974c5]::boxed::Box<tokio[d29b92f0249a7f48]::runtime::scheduler::current_thread::Core>, core[a373ad73a504971]::option::Option<()>)>
[INFO] [stdout]   15:     0x6331599b7ca7 - <tokio[d29b92f0249a7f48]::runtime::scheduler::current_thread::CoreGuard>::block_on::<core[a373ad73a504971]::pin::Pin<&mut core[a373ad73a504971]::pin::Pin<&mut dyn core[a373ad73a504971]::future::future::Future<Output = ()>>>>
[INFO] [stdout]   16:     0x6331599bbd3b - tokio[d29b92f0249a7f48]::runtime::context::runtime::enter_runtime::<<tokio[d29b92f0249a7f48]::runtime::scheduler::current_thread::CurrentThread>::block_on<core[a373ad73a504971]::pin::Pin<&mut dyn core[a373ad73a504971]::future::future::Future<Output = ()>>>::{closure#0}, ()>
[INFO] [stdout]   17:     0x6331599badab - <tokio[d29b92f0249a7f48]::runtime::runtime::Runtime>::block_on::<core[a373ad73a504971]::pin::Pin<&mut dyn core[a373ad73a504971]::future::future::Future<Output = ()>>>
[INFO] [stdout]   18:     0x6331599b6a4e - <voices[21a215a5a52c033]::download_fails_when_the_tmp_write_is_refused::{closure#0} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   19:     0x6331599bd3ab - test[aada8e7e76ba119b]::__rust_begin_short_backtrace::<core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>, fn() -> core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>>
[INFO] [stdout]   20:     0x6331599ca585 - test[aada8e7e76ba119b]::run_test::{closure#0}
[INFO] [stdout]   21:     0x6331599c3e74 - std[617be2ca0a6fd877]::sys::backtrace::__rust_begin_short_backtrace::<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>
[INFO] [stdout]   22:     0x6331599cd612 - <std[617be2ca0a6fd877]::thread::lifecycle::spawn_unchecked<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>::{closure#1} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   23:     0x633159e4203f - <std[617be2ca0a6fd877]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   24:     0x77252b58fdfa - <unknown>
[INFO] [stdout]   25:     0x77252b6233d4 - clone
[INFO] [stdout]   26:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     download_fails_when_the_tmp_write_is_refused
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 16 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.24s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--test voices`
[INFO] running `Command { std: "docker" "inspect" "a360b38d9d180bde7b542fcc0640b5779da64bcdb7d567864924a2d7cc6fd6d9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a360b38d9d180bde7b542fcc0640b5779da64bcdb7d567864924a2d7cc6fd6d9", kill_on_drop: false }`
[INFO] [stdout] a360b38d9d180bde7b542fcc0640b5779da64bcdb7d567864924a2d7cc6fd6d9
