[INFO] fetching crate bbdown-core 0.5.0...
[INFO] testing bbdown-core-0.5.0 against 1.98.0-beta.1 for beta-1.98-1
[INFO] extracting crate bbdown-core 0.5.0 into /workspace/builds/worker-6-tc2/source
[INFO] started tweaking crates.io crate bbdown-core 0.5.0
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate bbdown-core 0.5.0
[INFO] tweaked toml for crates.io crate bbdown-core 0.5.0 written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate bbdown-core 0.5.0 on toolchain 1.98.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate bbdown-core 0.5.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.98.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 0ec5445358c5a178f441e837418bccdf294c4aab37678526d1152d6b3d9a02ec
[INFO] running `Command { std: "docker" "start" "0ec5445358c5a178f441e837418bccdf294c4aab37678526d1152d6b3d9a02ec", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0ec5445358c5a178f441e837418bccdf294c4aab37678526d1152d6b3d9a02ec", 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" "0ec5445358c5a178f441e837418bccdf294c4aab37678526d1152d6b3d9a02ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0ec5445358c5a178f441e837418bccdf294c4aab37678526d1152d6b3d9a02ec", 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" "0ec5445358c5a178f441e837418bccdf294c4aab37678526d1152d6b3d9a02ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling stable_deref_trait v1.2.1
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]    Compiling pin-project-lite v0.2.17
[INFO] [stderr]    Compiling futures-core v0.3.32
[INFO] [stderr]    Compiling find-msvc-tools v0.1.9
[INFO] [stderr]    Compiling shlex v2.0.1
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling writeable v0.6.3
[INFO] [stderr]    Compiling litemap v0.8.2
[INFO] [stderr]    Compiling cc v1.2.63
[INFO] [stderr]    Compiling utf8_iter v1.0.4
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling icu_normalizer_data v2.2.0
[INFO] [stderr]    Compiling icu_properties_data v2.2.0
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling zeroize v1.8.2
[INFO] [stderr]    Compiling version_check v0.9.5
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling rustls-pki-types v1.14.1
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling equivalent v1.0.2
[INFO] [stderr]    Compiling untrusted v0.9.0
[INFO] [stderr]    Compiling http v1.4.1
[INFO] [stderr]    Compiling simd-adler32 v0.3.9
[INFO] [stderr]    Compiling adler2 v2.0.1
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]    Compiling futures-task v0.3.32
[INFO] [stderr]    Compiling httparse v1.10.1
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling socket2 v0.6.4
[INFO] [stderr]    Compiling mio v1.2.1
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling http-body v1.0.1
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling tower-service v0.3.3
[INFO] [stderr]    Compiling ring v0.17.14
[INFO] [stderr]    Compiling rustls v0.23.40
[INFO] [stderr]    Compiling memchr v2.8.1
[INFO] [stderr]    Compiling atomic-waker v1.1.2
[INFO] [stderr]    Compiling try-lock v0.2.5
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling want v0.3.1
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]    Compiling futures-channel v0.3.32
[INFO] [stderr]    Compiling subtle v2.6.1
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling compression-core v0.4.32
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling compression-codecs v0.4.38
[INFO] [stderr]    Compiling tower-layer v0.3.3
[INFO] [stderr]    Compiling base64 v0.22.1
[INFO] [stderr]    Compiling ipnet v2.12.0
[INFO] [stderr]    Compiling either v1.16.0
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling itertools v0.14.0
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling webpki-roots v1.0.7
[INFO] [stderr]    Compiling ryu v1.0.23
[INFO] [stderr]    Compiling bitflags v2.13.0
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling encoding_rs v0.8.35
[INFO] [stderr]    Compiling mime v0.3.17
[INFO] [stderr]    Compiling log v0.4.32
[INFO] [stderr]    Compiling md-5 v0.10.6
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling displaydoc v0.2.6
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling prost-derive v0.14.4
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling rustls-webpki v0.103.13
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling prost v0.14.4
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[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.18
[INFO] [stderr]    Compiling async-compression v0.4.42
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling h2 v0.4.14
[INFO] [stderr]    Compiling tower-http v0.6.11
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling hyper v1.10.1
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling hyper-rustls v0.27.9
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling bbdown-core v0.5.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 52s
[INFO] running `Command { std: "docker" "inspect" "0ec5445358c5a178f441e837418bccdf294c4aab37678526d1152d6b3d9a02ec", 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" "0ec5445358c5a178f441e837418bccdf294c4aab37678526d1152d6b3d9a02ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling httpdate v1.0.3
[INFO] [stderr]    Compiling bitflags v2.13.0
[INFO] [stderr]    Compiling parking v2.2.1
[INFO] [stderr]    Compiling anyhow v1.0.102
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling cpufeatures v0.2.17
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling sha1 v0.10.6
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling tabwriter v1.4.1
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling path-tree v0.8.3
[INFO] [stderr]    Compiling event-listener v5.4.1
[INFO] [stderr]    Compiling futures-timer v3.0.4
[INFO] [stderr]    Compiling event-listener-strategy v0.5.4
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling async-lock v3.4.2
[INFO] [stderr]    Compiling similar v2.7.0
[INFO] [stderr]    Compiling stringmetrics v2.2.2
[INFO] [stderr]    Compiling async-object-pool v0.2.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling displaydoc v0.2.6
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling prost-derive v0.14.4
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling bytes v1.11.1
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling assert-json-diff v2.0.2
[INFO] [stderr]    Compiling serde_regex v1.2.0
[INFO] [stderr]    Compiling http v1.4.1
[INFO] [stderr]    Compiling tokio v1.52.3
[INFO] [stderr]    Compiling prost v0.14.4
[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 http-body v1.0.1
[INFO] [stderr]    Compiling headers-core v0.3.0
[INFO] [stderr]    Compiling http-body-util v0.1.3
[INFO] [stderr]    Compiling headers v0.4.1
[INFO] [stderr]    Compiling tokio-util v0.7.18
[INFO] [stderr]    Compiling tokio-rustls v0.26.4
[INFO] [stderr]    Compiling async-compression v0.4.42
[INFO] [stderr]    Compiling tower v0.5.3
[INFO] [stderr]    Compiling h2 v0.4.14
[INFO] [stderr]    Compiling tower-http v0.6.11
[INFO] [stderr]    Compiling hyper v1.10.1
[INFO] [stderr]    Compiling hyper-util v0.1.20
[INFO] [stderr]    Compiling hyper-rustls v0.27.9
[INFO] [stderr]    Compiling httpmock v0.8.3
[INFO] [stderr]    Compiling reqwest v0.12.28
[INFO] [stderr]    Compiling bbdown-core v0.5.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 2m 32s
[INFO] running `Command { std: "docker" "inspect" "0ec5445358c5a178f441e837418bccdf294c4aab37678526d1152d6b3d9a02ec", 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" "0ec5445358c5a178f441e837418bccdf294c4aab37678526d1152d6b3d9a02ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.35s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/bbdown_core-8772545ac2ff3e52)
[INFO] [stdout] 
[INFO] [stdout] running 332 tests
[INFO] [stdout] test app_playurl::tests::grpc_frame_decodes_uncompressed_payload ... ok
[INFO] [stdout] test app_playurl::tests::grpc_frame_rejects_trailing_bytes ... ok
[INFO] [stdout] test app_playurl::tests::grpc_frame_decodes_compressed_payload ... ok
[INFO] [stdout] test app_playurl::tests::pgc_view_info_limit_maps_to_access_restricted ... ok
[INFO] [stdout] test app_playurl::tests::normal_app_field_3_does_not_trigger_preview_only ... ok
[INFO] [stdout] test app_playurl::tests::pgc_preview_only_streams_map_to_access_restricted ... ok
[INFO] [stdout] test app_playurl::tests::play_view_reply_keeps_one_flv_quality ... ok
[INFO] [stdout] test app_playurl::tests::pgc_view_info_limit_with_audio_only_maps_to_access_restricted ... ok
[INFO] [stdout] test app_playurl::tests::play_view_headers_use_configured_grpc_timeout ... ok
[INFO] [stdout] test app_playurl::tests::pgc_view_info_field_9_limit_maps_to_access_restricted ... ok
[INFO] [stdout] test app_playurl::tests::play_view_reply_maps_to_stream_set ... ok
[INFO] [stdout] test app_playurl::tests::play_view_reply_preserves_repeated_dolby_audio ... ok
[INFO] [stdout] test app_playurl::tests::pgc_preview_only_streams_keep_stable_prefix_with_access_message ... ok
[INFO] [stdout] test app_playurl::tests::play_view_request_asks_pgc_for_view_info ... ok
[INFO] [stdout] test cancellation::tests::cancellation_reason_is_available_after_cancel ... ok
[INFO] [stdout] test bv::tests::decodes_known_bv ... ok
[INFO] [stdout] test app_playurl::tests::play_view_request_omits_view_info_for_normal_video ... ok
[INFO] [stdout] test cancellation::tests::cancelled_returns_for_late_subscriber ... ok
[INFO] [stdout] test cancellation::tests::cancelled_returns_for_waiting_subscriber ... ok
[INFO] [stdout] test client::tests::collection_current_selection_is_rejected ... ok
[INFO] [stdout] test client::tests::app_grpc_trailing_status_error_is_reported ... ok
[INFO] [stdout] test client::tests::collection_index_fetch_mode_stops_after_max_requested_index ... ok
[INFO] [stdout] test client::tests::collection_index_selection_selects_list_and_ranges ... ok
[INFO] [stdout] test client::tests::collection_latest_selects_first_parsed_item ... ok
[INFO] [stdout] test client::tests::collection_all_selection_allows_empty_items ... ok
[INFO] [stdout] test client::tests::credential_health_oauth2_info_params_are_scope_specific_and_signed ... ok
[INFO] [stdout] test client::tests::app_grpc_status_error_is_reported ... ok
[INFO] [stdout] test client::tests::credential_health_redacts_short_exact_cookie_values ... ok
[INFO] [stdout] test client::tests::credential_health_checks_raw_stored_access_key_value ... ok
[INFO] [stdout] test client::tests::cheese_episode_non_current_selection_refetches_from_first_page ... ok
[INFO] [stdout] test client::tests::credential_health_cookie_probe_does_not_require_wbi_image ... ok
[INFO] [stdout] test client::tests::cheese_episode_current_uses_global_index_from_loaded_order ... ok
[INFO] [stdout] test client::tests::endpoint_defaults_use_app_grpc_playurl_host ... ok
[INFO] [stdout] test client::tests::credential_health_reports_missing_credentials ... ok
[INFO] [stdout] test client::tests::endpoint_url_preserves_path_prefix ... ok
[INFO] [stdout] test client::tests::credential_health_uses_tv_passport_poll_base_for_tv_access_key ... ok
[INFO] [stdout] test client::tests::endpoint_client_and_restricted_area_builders_configure_embedding_inputs ... ok
[INFO] [stdout] test client::tests::intl_region_limit_returns_access_restricted_error ... ok
[INFO] [stdout] test client::tests::latest_ignores_section_extras ... ok
[INFO] [stdout] test client::tests::latest_uses_filtered_main_episode_count ... ok
[INFO] [stdout] test client::tests::medialist_desc_matches_bbdown_parity ... ok
[INFO] [stdout] test client::tests::pgc_app_body_limit_falls_back_to_restricted_area_proxy ... ok
[INFO] [stdout] test client::tests::credential_health_checks_configured_credentials_redacted ... ok
[INFO] [stdout] test client::tests::favorite_collection_accepts_null_media_list_as_empty ... ok
[INFO] [stdout] test client::tests::deduplicates_medialist_current_item_cursor_pages ... ok
[INFO] [stdout] test client::tests::intl_access_key_is_redacted_from_http_errors ... ok
[INFO] [stdout] test client::tests::favorite_collection_skips_non_video_entries ... ok
[INFO] [stdout] test client::tests::intl_ogv_playurl_params_are_signed_in_helper_order ... ok
[INFO] [stdout] test client::tests::pgc_bilibili_api_proxy_preserves_base_query_for_web_and_v2_paths ... ok
[INFO] [stdout] test client::tests::dynamic_feed_stops_when_next_offset_is_missing ... ok
[INFO] [stdout] test client::tests::pgc_app_preview_only_body_falls_back_to_restricted_area_proxy ... ok
[INFO] [stdout] test client::tests::pgc_app_status_code_falls_back_to_restricted_area_proxy ... ok
[INFO] [stdout] test client::tests::pgc_streams_fall_back_to_restricted_area_proxy ... ok
[INFO] [stdout] test client::tests::pgc_bilibili_api_proxy_falls_back_to_v2_path ... ok
[INFO] [stdout] test client::tests::plans_intl_download_with_access_key_for_subtitles ... ok
[INFO] [stdout] test client::tests::pgc_app_streams_fall_back_to_restricted_area_proxy ... ok
[INFO] [stdout] test client::tests::plans_history_latest_as_normal_video_entry ... ok
[INFO] [stdout] test client::tests::pgc_proxy_invalid_candidate_diagnostics_redact_endpoint ... ok
[INFO] [stdout] test client::tests::plan_video_ignores_tag_failure ... ok
[INFO] [stdout] test client::tests::pgc_restricted_area_failure_redacts_sensitive_messages ... ok
[INFO] [stdout] test client::tests::pgc_proxy_fallback_requires_area_restriction ... ok
[INFO] [stdout] test client::tests::plans_cheese_download_with_pugv_source ... ok
[INFO] [stdout] test client::tests::plans_pgc_download_with_tv_playurl_mode ... ok
[INFO] [stdout] test client::tests::plans_pgc_download_from_video_info_payload ... ok
[INFO] [stdout] test client::tests::playurl_accepts_intl_mobile_video_info_shape ... ok
[INFO] [stdout] test client::tests::plans_recommendation_latest_as_normal_video_entry ... ok
[INFO] [stdout] test client::tests::plans_pgc_download_with_app_playurl_mode ... ok
[INFO] [stdout] test client::tests::playurl_accepts_null_durl_with_dash_streams ... ok
[INFO] [stdout] test client::tests::playurl_accepts_top_level_mobile_dash_shape ... ok
[INFO] [stdout] test client::tests::playurl_accepts_nullable_dash_lists_with_flv_fallback ... ok
[INFO] [stdout] test client::tests::playurl_accepts_top_level_bpplayurl_flv_shape ... ok
[INFO] [stdout] test client::tests::playurl_uses_non_empty_camel_media_fields_when_snake_fields_are_empty ... ok
[INFO] [stdout] test client::tests::plans_video_download_with_app_playurl_mode ... ok
[INFO] [stdout] test client::tests::plans_video_download_with_tv_playurl_mode ... ok
[INFO] [stdout] test client::tests::propagates_watch_later_item_fallback_auth_error ... ok
[INFO] [stdout] test client::tests::plans_space_dynamic_latest_as_normal_video_entry ... ok
[INFO] [stdout] test client::tests::plans_video_download_with_streams_subtitles_and_danmaku ... ok
[INFO] [stdout] test client::tests::resolver_error_message_redacts_mixed_case_urls ... ok
[INFO] [stdout] test client::tests::plans_watch_later_latest_as_normal_video_entry ... ok
[INFO] [stdout] test client::tests::resolver_error_message_redacts_sensitive_values ... ok
[INFO] [stdout] test client::tests::resolves_favorite_item_without_first_cid_from_video_metadata ... ok
[INFO] [stdout] test client::tests::resolves_episode_from_section ... ok
[INFO] [stdout] test client::tests::resolves_following_feed_archive_items ... ok
[INFO] [stdout] test client::tests::resolves_history_archive_items_from_cursor ... ok
[INFO] [stdout] test client::tests::resolves_paginated_cheese_season_latest ... ok
[INFO] [stdout] test client::tests::resolves_medialist_item_without_pages_from_video_metadata ... ok
[INFO] [stdout] test client::tests::pugv_pagination_uses_stable_page_size_when_size_is_missing ... ok
[INFO] [stdout] test client::tests::resolves_recommendation_feed_items ... ok
[INFO] [stdout] test client::tests::resolves_medialist_collection_after_filtered_cursor_page ... ok
[INFO] [stdout] test client::tests::resolves_favorite_collection_and_plans_selected_item ... ok
[INFO] [stdout] test client::tests::resolve_collection_selection_keeps_full_items_while_plan_fetches_selected_item ... ok
[INFO] [stdout] test client::tests::resolves_intl_episode_from_module_episodes ... ok
[INFO] [stdout] test client::tests::resolves_recommendation_latest_keeps_batch_metadata ... ok
[INFO] [stdout] test client::tests::resolves_season_latest ... ok
[INFO] [stdout] test client::tests::resolves_space_series_with_owner_mid_endpoint ... ok
[INFO] [stdout] test client::tests::resolves_recommendation_latest_retries_after_filtered_batch ... ok
[INFO] [stdout] test client::tests::resolves_video_metadata_with_tags ... ok
[INFO] [stdout] test client::tests::resolves_watch_later_item_cid_from_video_metadata ... ok
[INFO] [stdout] test client::tests::resolves_space_videos_from_wbi_response_shape ... ok
[INFO] [stdout] test client::tests::restricted_area_message_accepts_common_chinese_unavailable_phrasing ... ok
[INFO] [stdout] test client::tests::resolves_watch_later_items ... ok
[INFO] [stdout] test client::tests::season_index_selection_selects_episode_indices ... ok
[INFO] [stdout] test client::tests::season_links_require_selection ... ok
[INFO] [stdout] test client::tests::resolves_recommendation_page_selection_after_filtered_cards ... ok
[INFO] [stdout] test client::tests::video_index_selection_preserves_selector_order_and_deduplicates ... ok
[INFO] [stdout] test client::tests::video_index_selection_rejects_partial_hits ... ok
[INFO] [stdout] test client::tests::skips_watch_later_item_when_fallback_page_is_missing ... ok
[INFO] [stdout] test client::tests::video_info_applies_page_selection ... ok
[INFO] [stdout] test client::tests::restricted_area_proxies_are_ordered_by_hint_then_generic_then_area ... ok
[INFO] [stdout] test credentials::tests::credential_profiles_debug_is_redacted ... ok
[INFO] [stdout] test client::tests::resolves_short_link_input_from_redirect_target ... ok
[INFO] [stdout] test credentials::tests::credentials_debug_is_redacted ... ok
[INFO] [stdout] test client::tests::video_info_rejects_missing_page_selection ... ok
[INFO] [stdout] test client::tests::video_tag_failure_is_not_silent ... ok
[INFO] [stdout] test credentials::tests::legacy_flat_credentials_with_profile_like_unknown_fields_are_not_profiles ... ok
[INFO] [stdout] test credentials::tests::load_profiles_wraps_legacy_flat_credentials ... ok
[INFO] [stdout] test credentials::tests::invalid_profile_document_default_profile_is_rejected ... ok
[INFO] [stdout] test credentials::tests::malformed_profile_document_does_not_fall_back_to_flat_credentials ... ok
[INFO] [stdout] test credentials::tests::profile_names_reject_blank_values ... ok
[INFO] [stdout] test credentials::tests::malformed_existing_store_is_not_overwritten_by_save ... ok
[INFO] [stdout] test credentials::tests::remove_missing_profile_does_not_create_store ... ok
[INFO] [stdout] test client::tests::resolves_recommendation_page_selection_across_refresh_batches ... ok
[INFO] [stdout] test client::tests::space_collection_latest_requests_newest_first ... ok
[INFO] [stdout] test client::tests::skips_watch_later_item_when_cid_fallback_fails ... ok
[INFO] [stdout] test credentials::tests::remove_missing_profile_keeps_legacy_flat_store ... ok
[INFO] [stdout] test credentials::tests::save_allows_bare_relative_path ... ok
[INFO] [stdout] test credentials::tests::profile_document_default_profile_controls_load_and_save ... ok
[INFO] [stdout] test credentials::tests::selected_profile_rejects_blank_named_profile ... ok
[INFO] [stdout] test credentials::tests::unsupported_profile_document_version_is_rejected ... ok
[INFO] [stdout] test credentials::tests::save_profile_migrates_legacy_flat_file ... ok
[INFO] [stdout] test credentials::tests::save_tightens_existing_file_permissions ... ok
[INFO] [stdout] test credentials::tests::save_without_profiles_keeps_legacy_flat_format ... ok
[INFO] [stdout] test danmaku::tests::decodes_numeric_entities_and_single_quoted_attributes ... ok
[INFO] [stdout] test danmaku::tests::merge_xml_append_only_adds_new_comments_before_root_close ... ok
[INFO] [stdout] test credentials::tests::stores_credentials_without_leaking_values_in_summary ... ok
[INFO] [stdout] test danmaku::tests::merge_xml_append_only_does_not_insert_comments_into_chatserver ... ok
[INFO] [stdout] test danmaku::tests::merge_xml_append_only_keeps_existing_when_no_new_comments ... ok
[INFO] [stdout] test danmaku::tests::merge_xml_append_only_inserts_after_last_complete_comment_when_existing_has_dangling_tail ... ok
[INFO] [stdout] test credentials::tests::selected_profile_helpers_preserve_default_and_named_profiles ... ok
[INFO] [stdout] test danmaku::tests::merge_xml_append_only_uses_fetched_xml_when_existing_is_empty ... ok
[INFO] [stdout] test danmaku::tests::converts_common_xml_comments_to_ass_dialogues ... ok
[INFO] [stdout] test danmaku::tests::merge_xml_append_only_uses_fetched_xml_when_existing_root_is_self_closing ... ok
[INFO] [stdout] test credentials::tests::version_only_legacy_flat_credentials_are_not_profiles ... ok
[INFO] [stdout] test download::tests::archive_decision_keep_both_skips_broken_symlink_output_root ... ok
[INFO] [stdout] test download::tests::archive_cancellation_after_plan_completed_keeps_archive_record ... ok
[INFO] [stdout] test download::tests::accepts_unknown_total_content_range_when_expected_size_matches ... ok
[INFO] [stdout] test download::tests::archive_decision_replace_forces_fresh_writes ... ok
[INFO] [stdout] test download::tests::archive_entry_danmaku_update_target_requires_danmaku_eligible_archive_mode ... ok
[INFO] [stdout] test download::tests::archive_decision_replace_removes_broken_symlink_output_root ... ok
[INFO] [stdout] test download::tests::archive_preflight_cancel_rejects_late_output_conflict ... ok
[INFO] [stdout] test download::tests::archive_decision_replace_validates_templates_before_removing_output ... ok
[INFO] [stdout] test download::tests::archive_preflight_keep_both_rejects_stale_archive_reservations ... ok
[INFO] [stdout] test download::tests::archive_decision_keep_both_uses_new_output_root ... ok
[INFO] [stdout] test danmaku::tests::merge_xml_append_only_deduplicates_equivalent_entities ... ok
[INFO] [stdout] test download::tests::archive_preflight_replace_removes_late_output_conflict ... ok
[INFO] [stdout] test download::tests::cancelled_download_plan_reports_plan_cancelled_before_start ... ok
[INFO] [stdout] test download::tests::cancellation_after_entry_completion_reports_completed_entries ... ok
[INFO] [stdout] test download::tests::cancelled_single_url_retry_backoff_does_not_duplicate_file_failed ... ok
[INFO] [stdout] test download::tests::cancelled_retry_backoff_does_not_duplicate_file_failed ... ok
[INFO] [stdout] test download::tests::cancelled_started_file_does_not_retry_or_duplicate_file_failed ... ok
[INFO] [stdout] test download::tests::candidate_urls_do_not_rewrite_local_ports_for_cli_default ... ok
[INFO] [stdout] test download::tests::candidate_urls_force_replace_ordinary_hosts ... ok
[INFO] [stdout] test download::tests::candidate_urls_preserve_explicit_replacement_default_port ... ok
[INFO] [stdout] test download::tests::candidate_urls_preserve_explicit_replacement_default_port_from_url_like_input ... ok
[INFO] [stdout] test download::tests::candidate_urls_rewrite_custom_ipv6_upos_host ... ok
[INFO] [stdout] test download::tests::candidate_urls_rewrite_custom_upos_hosts_and_dedupe ... ok
[INFO] [stdout] test download::tests::candidate_urls_preserve_media_hosts_by_default ... ok
[INFO] [stdout] test download::tests::candidate_urls_rewrite_remote_pcdn_hosts_for_cli_default ... ok
[INFO] [stdout] test download::tests::danmaku_archive_key_refresh_preserves_stream_selection_prefix ... ok
[INFO] [stdout] test download::tests::danmaku_archive_key_refresh_preserves_subtitle_ai_token_order ... ok
[INFO] [stdout] test download::tests::archive_decision_keep_both_avoids_archive_only_output_root ... ok
[INFO] [stdout] test download::tests::cancelled_started_file_rolls_back_and_reports_cancelled ... ok
[INFO] [stdout] test download::tests::default_entry_template_preserves_existing_title_sanitization ... ok
[INFO] [stdout] test download::tests::archive_decision_keep_both_avoids_unrelated_archive_output_root ... ok
[INFO] [stdout] test download::tests::default_path_templates_preserve_existing_names ... ok
[INFO] [stdout] test download::tests::danmaku_update_archive_appends_xml_and_regenerates_ass ... ok
[INFO] [stdout] test download::tests::ass_only_danmaku_progress_excludes_internal_source_file ... ok
[INFO] [stdout] test download::tests::default_path_templates_preserve_existing_truncation_budgets ... ok
[INFO] [stdout] test download::tests::download_archive_distinguishes_danmaku_format_outputs ... ok
[INFO] [stdout] test download::tests::download_archive_matches_audio_language_aliases_by_selected_stream ... ok
[INFO] [stdout] test download::tests::download_archive_record_resolves_symlink_parent_output_path ... ok
[INFO] [stdout] test download::tests::can_skip_cover_sidecar_downloads ... ok
[INFO] [stdout] test download::tests::download_archive_keeps_same_output_stream_variants_when_files_remain ... ok
[INFO] [stdout] test download::tests::download_archive_record_stores_absolute_paths ... ok
[INFO] [stdout] test download::tests::download_archive_records_can_be_queried_by_download_mode ... ok
[INFO] [stdout] test download::tests::download_archive_round_trips_without_urls ... ok
[INFO] [stdout] test download::tests::download_archive_save_replaces_existing_file ... ok
[INFO] [stdout] test download::tests::danmaku_update_partial_selection_keeps_record_content_key_conservative ... ok
[INFO] [stdout] test download::tests::download_content_key_distinguishes_explicit_audio_language_selection ... ok
[INFO] [stdout] test download::tests::download_content_key_distinguishes_subtitle_ai_policy ... ok
[INFO] [stdout] test download::tests::download_archive_records_can_be_queried_by_stream_selection_variant ... ok
[INFO] [stdout] test download::tests::download_archive_save_preserves_symlink_target ... ok
[INFO] [stdout] test download::tests::download_entry_content_key_ignores_display_index ... ok
[INFO] [stdout] test download::tests::download_archive_save_rejects_directory_path ... ok
[INFO] [stdout] test download::tests::download_entry_content_key_matches_episode_and_video_forms ... ok
[INFO] [stdout] test download::tests::danmaku_update_skips_archive_entries_without_danmaku_sidecars ... ok
[INFO] [stdout] test download::tests::download_options_builders_configure_embedding_controls ... ok
[INFO] [stdout] test download::tests::download_input_reports_parse_failure_terminal_event ... ok
[INFO] [stdout] test download::tests::download_media_rewrites_custom_upos_host ... ok
[INFO] [stdout] test download::tests::download_plan_reports_entry_setup_failure_terminal_event ... ok
[INFO] [stdout] test download::tests::download_plan_reports_failure_terminal_events ... ok
[INFO] [stdout] test download::tests::download_audio_only_skips_video_sidecars_and_mux ... ok
[INFO] [stdout] test download::tests::download_preflight_matches_legacy_bvid_entry_key ... ok
[INFO] [stdout] test download::tests::download_danmaku_only_can_generate_ass_sidecar ... ok
[INFO] [stdout] test download::tests::download_danmaku_multiple_formats_writes_xml_and_ass_sidecars ... ok
[INFO] [stdout] test download::tests::download_preflight_matches_symlink_parent_archive_output ... ok
[INFO] [stdout] test download::tests::download_plan_reports_setup_failure_terminal_event ... ok
[INFO] [stdout] test download::tests::download_preflight_reports_archive_hit_and_output_conflict ... ok
[INFO] [stdout] test download::tests::download_preflight_reports_broken_symlink_output_conflict ... ok
[INFO] [stdout] test download::tests::download_report_summary_counts_files_mux_and_bytes ... ok
[INFO] [stdout] test download::tests::download_preflight_reports_same_output_archive_record ... ok
[INFO] [stdout] test download::tests::download_preflight_reports_entry_overlap_after_index_change ... ok
[INFO] [stdout] test download::tests::download_preflight_reports_entry_overlap_from_archive ... ok
[INFO] [stdout] test download::tests::download_preflight_round_trip_preserves_reserved_output_dirs ... ok
[INFO] [stdout] test download::tests::download_plan_reports_progress_events ... ok
[INFO] [stdout] test download::tests::duplicate_cancel_reports_plan_cancelled_progress ... ok
[INFO] [stdout] test download::tests::ffmpeg_chapter_metadata_escapes_values ... ok
[INFO] [stdout] test download::tests::entry_dir_name_distinguishes_content_identity ... ok
[INFO] [stdout] test download::tests::entry_dir_name_limits_final_component_bytes ... ok
[INFO] [stdout] test download::tests::ffmpeg_mux_cancel_after_process_removes_temporary_output ... ok
[INFO] [stdout] test download::tests::download_video_only_skips_audio_sidecars_and_mux ... ok
[INFO] [stdout] test download::tests::ffmpeg_mux_failure_preserves_existing_output ... ok
[INFO] [stdout] test download::tests::ffmpeg_mux_includes_chapter_metadata ... ok
[INFO] [stdout] test download::tests::ffmpeg_mux_rejects_empty_output_file ... ok
[INFO] [stdout] test download::tests::downloads_media_sidecars_and_danmaku ... ok
[INFO] [stdout] test download::tests::falls_back_to_backup_media_url ... ok
[INFO] [stdout] test download::tests::ffmpeg_mux_failure_is_reported ... ok
[INFO] [stdout] test download::tests::ffmpeg_mux_success_is_reported ... ok
[INFO] [stdout] test download::tests::ffmpeg_mux_sigint_exit_code_maps_to_delayed_cancellation ... ok
[INFO] [stdout] test download::tests::ffmpeg_mux_rejects_stale_output_file ... ok
[INFO] [stdout] test download::tests::invalid_audio_selection_fails_before_media_writes ... ok
[INFO] [stdout] test download::tests::generated_danmaku_failure_reports_file_failed_progress ... ok
[INFO] [stdout] test download::tests::media_download_does_not_send_cookie_header ... ok
[INFO] [stdout] test download::tests::ffmpeg_mux_sigint_status_maps_to_delayed_cancellation ... ok
[INFO] [stdout] test download::tests::media_file_name_distinguishes_non_ascii_language_doc_only_streams ... ok
[INFO] [stdout] test download::tests::matching_416_resume_response_is_treated_as_complete ... ok
[INFO] [stdout] test download::tests::multi_entry_invalid_selection_fails_before_any_media_writes ... ok
[INFO] [stdout] test download::tests::media_file_name_distinguishes_stream_identity_without_query ... ok
[INFO] [stdout] test client::tests::request_timeout_bounds_hung_endpoint ... ok
[INFO] [stdout] test download::tests::no_resume_preserves_existing_file_when_fresh_write_fails ... ok
[INFO] [stdout] test download::tests::path_templates_escape_literal_braces_and_sanitize_paths ... ok
[INFO] [stdout] test download::tests::path_templates_reject_duplicate_entry_directories ... ok
[INFO] [stdout] test download::tests::path_templates_reject_excessive_number_width ... ok
[INFO] [stdout] test download::tests::path_templates_reject_string_placeholder_formats ... ok
[INFO] [stdout] test download::tests::path_templates_reject_unknown_placeholders ... ok
[INFO] [stdout] test download::tests::path_templates_render_known_placeholders ... ok
[INFO] [stdout] test download::tests::preserves_partial_file_when_full_retry_fails_after_ignored_range ... ok
[INFO] [stdout] test download::tests::no_resume_replaces_existing_file_after_fresh_write_validates ... ok
[INFO] [stdout] test download::tests::ffmpeg_mux_requires_output_file ... ok
[INFO] [stdout] test download::tests::media_download_request_timeout_still_bounds_response_headers ... ok
[INFO] [stdout] test download::tests::media_download_uses_idle_timeout_instead_of_request_total_timeout ... ok
[INFO] [stdout] test download::tests::rejects_empty_unknown_size_media_response ... ok
[INFO] [stdout] test download::tests::rejects_expected_media_size_mismatch ... ok
[INFO] [stdout] test download::tests::rejects_ignored_range_without_length_proof ... ok
[INFO] [stdout] test download::tests::rejects_content_range_on_non_partial_response ... ok
[INFO] [stdout] test download::tests::rejects_content_range_total_mismatch_on_resume ... ok
[INFO] [stdout] test download::tests::rejects_empty_cover_sidecar_response ... ok
[INFO] [stdout] test download::tests::rejects_unknown_total_content_range_without_expected_size ... ok
[INFO] [stdout] test download::tests::rejects_unsatisfied_content_range_on_non_partial_response ... ok
[INFO] [stdout] test download::tests::rejects_incomplete_dash_without_flv_fallback ... ok
[INFO] [stdout] test download::tests::rejects_short_content_range_body_on_resume ... ok
[INFO] [stdout] test download::tests::rejects_empty_zero_size_media_response ... ok
[INFO] [stdout] test download::tests::rejects_mismatched_content_range_on_resume ... ok
[INFO] [stdout] test download::tests::replaces_partial_file_when_full_retry_succeeds_after_ignored_range ... ok
[INFO] [stdout] test download::tests::resumes_partial_files_with_range_request ... ok
[INFO] [stdout] test download::tests::safe_file_name_limits_utf8_bytes ... ok
[INFO] [stdout] test download::tests::select_audio_stream_reports_available_languages ... ok
[INFO] [stdout] test download::tests::replaces_existing_file_when_ignored_range_has_content_length ... ok
[INFO] [stdout] test download::tests::select_audio_stream_supports_language_metadata ... ok
[INFO] [stdout] test download::tests::select_media_stream_reports_available_ids ... ok
[INFO] [stdout] test download::tests::sidecar_only_modes_reject_stream_quality_selection ... ok
[INFO] [stdout] test download::tests::safe_file_name_with_tiny_budget_stays_in_budget ... ok
[INFO] [stdout] test download::tests::subtitle_ai_policy_filters_tracks ... ok
[INFO] [stdout] test download::tests::started_primary_candidate_failure_is_closed_before_backup ... ok
[INFO] [stdout] test download::tests::retries_failed_downloads ... ok
[INFO] [stdout] test download::tests::skips_duplicate_subtitle_urls ... ok
[INFO] [stdout] test download::tests::subtitle_ai_policy_prefers_regioned_manual_track_over_generic_ai_track ... ok
[INFO] [stdout] test download::tests::subtitle_dedup_key_ignores_url_fragment ... ok
[INFO] [stdout] test download::tests::subtitle_file_name_distinguishes_duplicate_languages ... ok
[INFO] [stdout] test download::tests::subtitle_file_name_limits_unknown_extension_bytes ... ok
[INFO] [stdout] test download::tests::temporary_file_names_reserve_suffix_budget ... ok
[INFO] [stdout] test feed_list::tests::feed_list_all_selection_allows_empty_items ... ok
[INFO] [stdout] test feed_list::tests::feed_list_current_selection_is_rejected ... ok
[INFO] [stdout] test feed_list::tests::feed_list_index_fetch_mode_stops_after_max_requested_index ... ok
[INFO] [stdout] test feed_list::tests::feed_list_items_can_be_deduplicated_and_renumbered ... ok
[INFO] [stdout] test feed_list::tests::feed_list_selection_preserves_selector_order_and_deduplicates ... ok
[INFO] [stdout] test input::tests::parses_collection_inputs ... ok
[INFO] [stdout] test download::tests::subtitle_ai_policy_prefers_non_ai_tracks ... ok
[INFO] [stdout] test input::tests::parses_common_inputs ... ok
[INFO] [stdout] test input::tests::parses_feed_inputs ... ok
[INFO] [stdout] test login::tests::access_key_login_ticket_debug_redacts_auth_url ... ok
[INFO] [stdout] test download::tests::uses_flv_segments_when_dash_pair_is_incomplete ... ok
[INFO] [stdout] test login::tests::access_key_login_ticket_validates_message_origin ... ok
[INFO] [stdout] test login::tests::access_key_login_ticket_revalidates_public_config_fields ... ok
[INFO] [stdout] test login::tests::converts_web_success_url_query_to_cookie ... ok
[INFO] [stdout] test login::tests::access_key_login_config_builds_biliplus_ticket ... ok
[INFO] [stdout] test login::tests::converts_set_cookie_headers_to_cookie ... ok
[INFO] [stdout] test download::tests::write_generated_text_file_replaces_existing_target ... ok
[INFO] [stdout] test login::tests::extracts_qrcode_key_from_login_url ... ok
[INFO] [stdout] test login::tests::parses_balh_raw_query_callback ... ok
[INFO] [stdout] test login::tests::parses_balh_url_callback_with_access_token_alias ... ok
[INFO] [stdout] test login::tests::parses_balh_fragment_callback_with_access_token_alias ... ok
[INFO] [stdout] test login::tests::parses_balh_json_access_key_credentials ... ok
[INFO] [stdout] test login::tests::preferred_balh_expiry_fields_skip_invalid_fallbacks ... ok
[INFO] [stdout] test login::tests::qr_login_ticket_debug_is_redacted ... ok
[INFO] [stdout] test login::tests::qr_login_ticket_output_exposes_scan_payload_but_redacts_debug ... ok
[INFO] [stdout] test login::tests::rejects_balh_payload_without_access_key ... ok
[INFO] [stdout] test login::tests::signs_stable_tv_login_params_after_auth_code ... ok
[INFO] [stdout] test models::tests::download_entry_defaults_missing_cover_url ... ok
[INFO] [stdout] test login::tests::tv_login_context_reuses_device_identity_for_poll ... ok
[INFO] [stdout] test playback::tests::abr_groups_isolate_missing_video_codecs ... ok
[INFO] [stdout] test playback::tests::abr_groups_separate_other_video_codec_strings ... ok
[INFO] [stdout] test playback::tests::builds_dash_playback_variants_from_download_plan ... ok
[INFO] [stdout] test playback::tests::abr_order_treats_partial_combined_bandwidth_as_unknown ... ok
[INFO] [stdout] test login::tests::polls_web_qr_login_states ... ok
[INFO] [stdout] test playback::tests::builds_flv_playback_variant_with_segment_specs ... ok
[INFO] [stdout] test playback::tests::codec_family_distinguishes_mp4a_object_types ... ok
[INFO] [stdout] test playback::tests::codec_family_keeps_family_only_app_audio_visible ... ok
[INFO] [stdout] test playback::tests::codec_family_keeps_family_only_app_streams_selectable ... ok
[INFO] [stdout] test playback::tests::codec_preference_can_prioritize_non_h264_variants ... ok
[INFO] [stdout] test login::tests::creates_and_polls_tv_qr_login ... ok
[INFO] [stdout] test playback::tests::deserializes_legacy_entry_without_cache_or_abr_metadata ... ok
[INFO] [stdout] test playback::tests::source_hash_preserves_query_identity_and_ignores_fragments ... ok
[INFO] [stdout] test playback::tests::deserializes_legacy_variant_without_selection_hints ... ok
[INFO] [stdout] test playback::tests::deserializes_legacy_avplayer_h264_aac_hint_by_rebuilding_current_hint ... ok
[INFO] [stdout] test download::tests::sidecar_only_modes_do_not_require_media_streams ... ok
[INFO] [stdout] test selection::tests::parses_page_range_and_list_selection ... ok
[INFO] [stdout] test selection::tests::parses_single_bare_index_as_page_selection ... ok
[INFO] [stdout] test selection::tests::rejects_zero_and_reversed_ranges ... ok
[INFO] [stdout] test download::tests::download_archive_load_reports_metadata_errors ... FAILED
[INFO] [stdout] test download::tests::flv_mux_concat_file_uses_paths_relative_to_entry_dir ... FAILED
[INFO] [stdout] test download::tests::output_occupancy_reports_metadata_errors ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- download::tests::download_archive_load_reports_metadata_errors stdout ----
[INFO] [stdout] Error: expected archive load permission error, got 0 records
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: <anyhow::Error>::msg::<alloc::string::String>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/backtrace.rs:10:14
[INFO] [stdout]    1: bbdown_core::download::tests::download_archive_load_reports_metadata_errors
[INFO] [stdout]              at ./src/download.rs:11082:17
[INFO] [stdout]    2: bbdown_core::download::tests::download_archive_load_reports_metadata_errors::{closure#0}
[INFO] [stdout]              at ./src/download.rs:11066:59
[INFO] [stdout]    3: <bbdown_core::download::tests::download_archive_load_reports_metadata_errors::{closure#0} as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]    4: <fn() -> core::result::Result<(), alloc::string::String> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]    5: test::__rust_begin_short_backtrace::<core::result::Result<(), alloc::string::String>, fn() -> core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]    6: test::run_test_in_process::{closure#0}
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]    7: <core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]    8: std::panicking::catch_unwind::do_call::<core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>, core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]    9: std::panicking::catch_unwind::<core::result::Result<(), alloc::string::String>, core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   10: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>, core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   11: test::run_test_in_process
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   12: test::run_test::{closure#0}
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   13: test::run_test::{closure#1}
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   14: std::sys::backtrace::__rust_begin_short_backtrace::<test::run_test::{closure#1}, ()>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   15: std::thread::lifecycle::spawn_unchecked::<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   16: <core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   17: std::panicking::catch_unwind::do_call::<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   18: std::panicking::catch_unwind::<(), core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   19: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   20: std::thread::lifecycle::spawn_unchecked::<test::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   21: <std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   22: <alloc::boxed::Box<dyn core::ops::function::FnOnce<(), Output = ()> + core::marker::Send> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   23: <std::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   24: <unknown>
[INFO] [stdout]   25: clone
[INFO] [stdout] 
[INFO] [stdout] ---- download::tests::flv_mux_concat_file_uses_paths_relative_to_entry_dir stdout ----
[INFO] [stdout] Error: Read-only file system (os error 30) at path "/opt/rustwide/workdir/./.bbdown-flv-mux-LGv9mu"
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: <anyhow::Error as core::convert::From<core::io::error::Error>>::from
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/backtrace.rs:10:14
[INFO] [stdout]    1: <core::result::Result<(), anyhow::Error> as core::ops::try_trait::FromResidual<core::result::Result<core::convert::Infallible, core::io::error::Error>>>::from_residual
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/result.rs:2192:27
[INFO] [stdout]    2: bbdown_core::download::tests::flv_mux_concat_file_uses_paths_relative_to_entry_dir::{closure#0}
[INFO] [stdout]              at ./src/download.rs:9446:20
[INFO] [stdout]    3: <core::pin::Pin<&mut dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>> as core::future::future::Future>::poll
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/future/future.rs:133:9
[INFO] [stdout]    4: <core::pin::Pin<&mut core::pin::Pin<&mut dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>> as core::future::future::Future>::poll
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/future/future.rs:133:9
[INFO] [stdout]    5: <tokio::runtime::scheduler::current_thread::CoreGuard>::block_on::<core::pin::Pin<&mut core::pin::Pin<&mut dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>>::{closure#0}::{closure#0}::{closure#0}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/scheduler/current_thread/mod.rs:778:70
[INFO] [stdout]    6: tokio::task::coop::with_budget::<core::task::poll::Poll<core::result::Result<(), anyhow::Error>>, <tokio::runtime::scheduler::current_thread::CoreGuard>::block_on<core::pin::Pin<&mut core::pin::Pin<&mut dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>>::{closure#0}::{closure#0}::{closure#0}>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/task/coop/mod.rs:167:5
[INFO] [stdout]    7: tokio::task::coop::budget::<core::task::poll::Poll<core::result::Result<(), anyhow::Error>>, <tokio::runtime::scheduler::current_thread::CoreGuard>::block_on<core::pin::Pin<&mut core::pin::Pin<&mut dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>>::{closure#0}::{closure#0}::{closure#0}>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/task/coop/mod.rs:133:5
[INFO] [stdout]    8: <tokio::runtime::scheduler::current_thread::CoreGuard>::block_on::<core::pin::Pin<&mut core::pin::Pin<&mut dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>>::{closure#0}::{closure#0}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/scheduler/current_thread/mod.rs:778:25
[INFO] [stdout]    9: <tokio::runtime::scheduler::current_thread::Context>::enter::<core::task::poll::Poll<core::result::Result<(), anyhow::Error>>, <tokio::runtime::scheduler::current_thread::CoreGuard>::block_on<core::pin::Pin<&mut core::pin::Pin<&mut dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>>::{closure#0}::{closure#0}>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/scheduler/current_thread/mod.rs:451:19
[INFO] [stdout]   10: <tokio::runtime::scheduler::current_thread::CoreGuard>::block_on::<core::pin::Pin<&mut core::pin::Pin<&mut dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>>::{closure#0}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/scheduler/current_thread/mod.rs:777:44
[INFO] [stdout]   11: <tokio::runtime::scheduler::current_thread::CoreGuard>::enter::<<tokio::runtime::scheduler::current_thread::CoreGuard>::block_on<core::pin::Pin<&mut core::pin::Pin<&mut dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>>::{closure#0}, core::option::Option<core::result::Result<(), anyhow::Error>>>::{closure#0}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/scheduler/current_thread/mod.rs:865:68
[INFO] [stdout]   12: <tokio::runtime::context::scoped::Scoped<tokio::runtime::scheduler::Context>>::set::<<tokio::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio::runtime::scheduler::current_thread::CoreGuard>::block_on<core::pin::Pin<&mut core::pin::Pin<&mut dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>>::{closure#0}, core::option::Option<core::result::Result<(), anyhow::Error>>>::{closure#0}, (alloc::boxed::Box<tokio::runtime::scheduler::current_thread::Core>, core::option::Option<core::result::Result<(), anyhow::Error>>)>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/context/scoped.rs:40:9
[INFO] [stdout]   13: tokio::runtime::context::set_scheduler::<(alloc::boxed::Box<tokio::runtime::scheduler::current_thread::Core>, core::option::Option<core::result::Result<(), anyhow::Error>>), <tokio::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio::runtime::scheduler::current_thread::CoreGuard>::block_on<core::pin::Pin<&mut core::pin::Pin<&mut dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>>::{closure#0}, core::option::Option<core::result::Result<(), anyhow::Error>>>::{closure#0}>::{closure#0}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/context.rs:181:38
[INFO] [stdout]   14: <std::thread::local::LocalKey<tokio::runtime::context::Context>>::try_with::<tokio::runtime::context::set_scheduler<(alloc::boxed::Box<tokio::runtime::scheduler::current_thread::Core>, core::option::Option<core::result::Result<(), anyhow::Error>>), <tokio::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio::runtime::scheduler::current_thread::CoreGuard>::block_on<core::pin::Pin<&mut core::pin::Pin<&mut dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>>::{closure#0}, core::option::Option<core::result::Result<(), anyhow::Error>>>::{closure#0}>::{closure#0}, (alloc::boxed::Box<tokio::runtime::scheduler::current_thread::Core>, core::option::Option<core::result::Result<(), anyhow::Error>>)>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/local.rs:463:12
[INFO] [stdout]   15: <std::thread::local::LocalKey<tokio::runtime::context::Context>>::with::<tokio::runtime::context::set_scheduler<(alloc::boxed::Box<tokio::runtime::scheduler::current_thread::Core>, core::option::Option<core::result::Result<(), anyhow::Error>>), <tokio::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio::runtime::scheduler::current_thread::CoreGuard>::block_on<core::pin::Pin<&mut core::pin::Pin<&mut dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>>::{closure#0}, core::option::Option<core::result::Result<(), anyhow::Error>>>::{closure#0}>::{closure#0}, (alloc::boxed::Box<tokio::runtime::scheduler::current_thread::Core>, core::option::Option<core::result::Result<(), anyhow::Error>>)>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/local.rs:427:20
[INFO] [stdout]   16: tokio::runtime::context::set_scheduler::<(alloc::boxed::Box<tokio::runtime::scheduler::current_thread::Core>, core::option::Option<core::result::Result<(), anyhow::Error>>), <tokio::runtime::scheduler::current_thread::CoreGuard>::enter<<tokio::runtime::scheduler::current_thread::CoreGuard>::block_on<core::pin::Pin<&mut core::pin::Pin<&mut dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>>::{closure#0}, core::option::Option<core::result::Result<(), anyhow::Error>>>::{closure#0}>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/context.rs:181:17
[INFO] [stdout]   17: <tokio::runtime::scheduler::current_thread::CoreGuard>::enter::<<tokio::runtime::scheduler::current_thread::CoreGuard>::block_on<core::pin::Pin<&mut core::pin::Pin<&mut dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>>::{closure#0}, core::option::Option<core::result::Result<(), anyhow::Error>>>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/scheduler/current_thread/mod.rs:865:27
[INFO] [stdout]   18: <tokio::runtime::scheduler::current_thread::CoreGuard>::block_on::<core::pin::Pin<&mut core::pin::Pin<&mut dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/scheduler/current_thread/mod.rs:765:24
[INFO] [stdout]   19: <tokio::runtime::scheduler::current_thread::CurrentThread>::block_on::<core::pin::Pin<&mut dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>::{closure#0}
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/scheduler/current_thread/mod.rs:205:33
[INFO] [stdout]   20: tokio::runtime::context::runtime::enter_runtime::<<tokio::runtime::scheduler::current_thread::CurrentThread>::block_on<core::pin::Pin<&mut dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>::{closure#0}, core::result::Result<(), anyhow::Error>>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/context/runtime.rs:65:16
[INFO] [stdout]   21: <tokio::runtime::scheduler::current_thread::CurrentThread>::block_on::<core::pin::Pin<&mut dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/scheduler/current_thread/mod.rs:193:9
[INFO] [stdout]   22: <tokio::runtime::runtime::Runtime>::block_on_inner::<core::pin::Pin<&mut dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/runtime.rs:371:52
[INFO] [stdout]   23: <tokio::runtime::runtime::Runtime>::block_on::<core::pin::Pin<&mut dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.52.3/src/runtime/runtime.rs:345:18
[INFO] [stdout]   24: bbdown_core::download::tests::flv_mux_concat_file_uses_paths_relative_to_entry_dir
[INFO] [stdout]              at ./src/download.rs:9492:11
[INFO] [stdout]   25: bbdown_core::download::tests::flv_mux_concat_file_uses_paths_relative_to_entry_dir::{closure#0}
[INFO] [stdout]              at ./src/download.rs:9440:72
[INFO] [stdout]   26: <bbdown_core::download::tests::flv_mux_concat_file_uses_paths_relative_to_entry_dir::{closure#0} as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27: <fn() -> core::result::Result<(), alloc::string::String> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28: test::__rust_begin_short_backtrace::<core::result::Result<(), alloc::string::String>, fn() -> core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   29: test::run_test_in_process::{closure#0}
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   30: <core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31: std::panicking::catch_unwind::do_call::<core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>, core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   32: std::panicking::catch_unwind::<core::result::Result<(), alloc::string::String>, core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>, core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   34: test::run_test_in_process
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   35: test::run_test::{closure#0}
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   36: test::run_test::{closure#1}
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   37: std::sys::backtrace::__rust_begin_short_backtrace::<test::run_test::{closure#1}, ()>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38: std::thread::lifecycle::spawn_unchecked::<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39: <core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40: std::panicking::catch_unwind::do_call::<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   41: std::panicking::catch_unwind::<(), core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   43: std::thread::lifecycle::spawn_unchecked::<test::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44: <std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45: <alloc::boxed::Box<dyn core::ops::function::FnOnce<(), Output = ()> + core::marker::Send> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   46: <std::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   47: <unknown>
[INFO] [stdout]   48: clone
[INFO] [stdout] 
[INFO] [stdout] ---- download::tests::output_occupancy_reports_metadata_errors stdout ----
[INFO] [stdout] Error: expected metadata permission error, got occupied=false
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: <anyhow::Error>::msg::<alloc::string::String>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/backtrace.rs:10:14
[INFO] [stdout]    1: anyhow::__private::format_err
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/lib.rs:690:13
[INFO] [stdout]    2: bbdown_core::download::tests::output_occupancy_reports_metadata_errors
[INFO] [stdout]              at ./src/download.rs:9573:17
[INFO] [stdout]    3: bbdown_core::download::tests::output_occupancy_reports_metadata_errors::{closure#0}
[INFO] [stdout]              at ./src/download.rs:9557:54
[INFO] [stdout]    4: <bbdown_core::download::tests::output_occupancy_reports_metadata_errors::{closure#0} as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]    5: <fn() -> core::result::Result<(), alloc::string::String> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]    6: test::__rust_begin_short_backtrace::<core::result::Result<(), alloc::string::String>, fn() -> core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]    7: test::run_test_in_process::{closure#0}
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]    8: <core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]    9: std::panicking::catch_unwind::do_call::<core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>, core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   10: std::panicking::catch_unwind::<core::result::Result<(), alloc::string::String>, core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   11: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>, core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   12: test::run_test_in_process
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   13: test::run_test::{closure#0}
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   14: test::run_test::{closure#1}
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   15: std::sys::backtrace::__rust_begin_short_backtrace::<test::run_test::{closure#1}, ()>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   16: std::thread::lifecycle::spawn_unchecked::<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   17: <core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   18: std::panicking::catch_unwind::do_call::<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   19: std::panicking::catch_unwind::<(), core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   20: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   21: std::thread::lifecycle::spawn_unchecked::<test::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   22: <std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23: <alloc::boxed::Box<dyn core::ops::function::FnOnce<(), Output = ()> + core::marker::Send> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   24: <std::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]              at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   25: <unknown>
[INFO] [stdout]   26: clone
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     download::tests::download_archive_load_reports_metadata_errors
[INFO] [stdout]     download::tests::flv_mux_concat_file_uses_paths_relative_to_entry_dir
[INFO] [stdout]     download::tests::output_occupancy_reports_metadata_errors
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 329 passed; 3 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.58s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "0ec5445358c5a178f441e837418bccdf294c4aab37678526d1152d6b3d9a02ec", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0ec5445358c5a178f441e837418bccdf294c4aab37678526d1152d6b3d9a02ec", kill_on_drop: false }`
[INFO] [stdout] 0ec5445358c5a178f441e837418bccdf294c4aab37678526d1152d6b3d9a02ec
