[INFO] fetching crate wasm-slim 0.1.1... [INFO] testing wasm-slim-0.1.1 against master#562dee4820c458d823175268e41601d4c060588a for pr-154210-2 [INFO] extracting crate wasm-slim 0.1.1 into /workspace/builds/worker-3-tc1/source [INFO] started tweaking crates.io crate wasm-slim 0.1.1 [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate wasm-slim 0.1.1 [INFO] tweaked toml for crates.io crate wasm-slim 0.1.1 written to /workspace/builds/worker-3-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate wasm-slim 0.1.1 on toolchain 562dee4820c458d823175268e41601d4c060588a [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate wasm-slim 0.1.1 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" "+562dee4820c458d823175268e41601d4c060588a" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded clap_complete v4.5.65 [INFO] [stderr] Downloaded zmij v1.0.10 [INFO] [stderr] Downloaded cargo-platform v0.3.2 [INFO] [stderr] Downloaded toml_edit v0.24.0+spec-1.1.0 [INFO] [stderr] Downloaded criterion-plot v0.8.1 [INFO] [stderr] Downloaded cargo_metadata v0.23.1 [INFO] [stderr] Downloaded env_home v0.1.0 [INFO] [stderr] Downloaded jiff-static v0.2.17 [INFO] [stderr] Downloaded which v8.0.0 [INFO] [stderr] Downloaded criterion v0.8.1 [INFO] [stderr] Downloaded jiff v0.2.17 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 9c6891c7d98336b618c78ab885a45b6414c03c242aac804e860a09eaa88179fb [INFO] running `Command { std: "docker" "start" "-a" "9c6891c7d98336b618c78ab885a45b6414c03c242aac804e860a09eaa88179fb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "9c6891c7d98336b618c78ab885a45b6414c03c242aac804e860a09eaa88179fb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9c6891c7d98336b618c78ab885a45b6414c03c242aac804e860a09eaa88179fb", kill_on_drop: false }` [INFO] [stdout] 9c6891c7d98336b618c78ab885a45b6414c03c242aac804e860a09eaa88179fb [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] f1b0d6dd43e4e5ffb20526531008b3bf31ec808c40f18d7a567415110f83d618 [INFO] running `Command { std: "docker" "start" "-a" "f1b0d6dd43e4e5ffb20526531008b3bf31ec808c40f18d7a567415110f83d618", kill_on_drop: false }` [INFO] [stderr] Compiling unicode-ident v1.0.22 [INFO] [stderr] Compiling quote v1.0.44 [INFO] [stderr] Compiling libc v0.2.179 [INFO] [stderr] Compiling proc-macro2 v1.0.104 [INFO] [stderr] Compiling zmij v1.0.10 [INFO] [stderr] Compiling serde_core v1.0.228 [INFO] [stderr] Compiling aho-corasick v1.1.4 [INFO] [stderr] Compiling regex-syntax v0.8.8 [INFO] [stderr] Compiling rustix v1.1.3 [INFO] [stderr] Compiling clap_lex v0.7.6 [INFO] [stderr] Compiling serde_json v1.0.149 [INFO] [stderr] Compiling camino v1.2.2 [INFO] [stderr] Compiling anyhow v1.0.100 [INFO] [stderr] Compiling toml_parser v1.0.6+spec-1.1.0 [INFO] [stderr] Compiling toml_writer v1.0.6+spec-1.1.0 [INFO] [stderr] Compiling env_home v0.1.0 [INFO] [stderr] Compiling jiff v0.2.17 [INFO] [stderr] Compiling rayon v1.11.0 [INFO] [stderr] Compiling clap_builder v4.5.54 [INFO] [stderr] Compiling syn v2.0.114 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling parking_lot_core v0.9.12 [INFO] [stderr] Compiling console v0.16.2 [INFO] [stderr] Compiling uuid v1.20.0 [INFO] [stderr] Compiling parking_lot v0.12.5 [INFO] [stderr] Compiling which v8.0.0 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling serde_spanned v1.0.4 [INFO] [stderr] Compiling semver v1.0.27 [INFO] [stderr] Compiling toml_datetime v0.7.5+spec-1.1.0 [INFO] [stderr] Compiling cargo-platform v0.3.2 [INFO] [stderr] Compiling toml_edit v0.24.0+spec-1.1.0 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling clap_derive v4.5.49 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling thiserror v2.0.18 [INFO] [stderr] Compiling regex v1.12.2 [INFO] [stderr] Compiling env_filter v0.1.4 [INFO] [stderr] Compiling clap v4.5.54 [INFO] [stderr] Compiling env_logger v0.11.8 [INFO] [stderr] Compiling clap_complete v4.5.65 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling cargo_metadata v0.23.1 [INFO] [stderr] Compiling wasm-slim v0.1.1 (/opt/rustwide/workdir) [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 41.42s [INFO] running `Command { std: "docker" "inspect" "f1b0d6dd43e4e5ffb20526531008b3bf31ec808c40f18d7a567415110f83d618", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f1b0d6dd43e4e5ffb20526531008b3bf31ec808c40f18d7a567415110f83d618", kill_on_drop: false }` [INFO] [stdout] f1b0d6dd43e4e5ffb20526531008b3bf31ec808c40f18d7a567415110f83d618 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] d4c22e32c1f69df2c24e0c023fabda8847d02682ef1ff6029fdbe0b348af54a1 [INFO] running `Command { std: "docker" "start" "-a" "d4c22e32c1f69df2c24e0c023fabda8847d02682ef1ff6029fdbe0b348af54a1", kill_on_drop: false }` [INFO] [stderr] Compiling regex-syntax v0.8.8 [INFO] [stderr] Compiling zerocopy v0.8.31 [INFO] [stderr] Compiling getrandom v0.3.4 [INFO] [stderr] Compiling zerocopy-derive v0.8.31 [INFO] [stderr] Compiling serde v1.0.228 [INFO] [stderr] Compiling alloca v0.4.0 [INFO] [stderr] Compiling which v8.0.0 [INFO] [stderr] Compiling wait-timeout v0.2.1 [INFO] [stderr] Compiling predicates-core v1.0.9 [INFO] [stderr] Compiling float-cmp v0.10.0 [INFO] [stderr] Compiling termtree v0.5.1 [INFO] [stderr] Compiling assert_cmd v2.1.2 [INFO] [stderr] Compiling difflib v0.4.0 [INFO] [stderr] Compiling normalize-line-endings v0.3.0 [INFO] [stderr] Compiling criterion-plot v0.8.1 [INFO] [stderr] Compiling page_size v0.6.0 [INFO] [stderr] Compiling rand_core v0.9.3 [INFO] [stderr] Compiling uuid v1.20.0 [INFO] [stderr] Compiling tempfile v3.24.0 [INFO] [stderr] Compiling predicates-tree v1.0.12 [INFO] [stderr] Compiling oorandom v11.1.5 [INFO] [stderr] Compiling anes v0.1.6 [INFO] [stderr] Compiling unarray v0.1.4 [INFO] [stderr] Compiling rand_xorshift v0.4.0 [INFO] [stderr] Compiling rand v0.9.2 [INFO] [stderr] Compiling rusty-fork v0.3.1 [INFO] [stderr] Compiling cargo_metadata v0.23.1 [INFO] [stderr] Compiling tinytemplate v1.2.1 [INFO] [stderr] Compiling regex-automata v0.4.13 [INFO] [stderr] Compiling half v2.7.1 [INFO] [stderr] Compiling ppv-lite86 v0.2.21 [INFO] [stderr] Compiling ciborium-ll v0.2.2 [INFO] [stderr] Compiling rand_chacha v0.9.0 [INFO] [stderr] Compiling proptest v1.9.0 [INFO] [stderr] Compiling ciborium v0.2.2 [INFO] [stderr] Compiling regex v1.12.2 [INFO] [stderr] Compiling bstr v1.12.1 [INFO] [stderr] Compiling env_filter v0.1.4 [INFO] [stderr] Compiling predicates v3.1.3 [INFO] [stderr] Compiling criterion v0.8.1 [INFO] [stderr] Compiling env_logger v0.11.8 [INFO] [stderr] Compiling wasm-slim v0.1.1 (/opt/rustwide/workdir) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 50.05s [INFO] running `Command { std: "docker" "inspect" "d4c22e32c1f69df2c24e0c023fabda8847d02682ef1ff6029fdbe0b348af54a1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d4c22e32c1f69df2c24e0c023fabda8847d02682ef1ff6029fdbe0b348af54a1", kill_on_drop: false }` [INFO] [stdout] d4c22e32c1f69df2c24e0c023fabda8847d02682ef1ff6029fdbe0b348af54a1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+562dee4820c458d823175268e41601d4c060588a" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] a4242dabe58f2ccd55ba25715fc836d98a54a9c12ed80ad75507fb396c69d1a7 [INFO] running `Command { std: "docker" "start" "-a" "a4242dabe58f2ccd55ba25715fc836d98a54a9c12ed80ad75507fb396c69d1a7", kill_on_drop: false }` [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.33s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/wasm_slim-df05ddfe8cd5a105) [INFO] [stdout] [INFO] [stdout] running 715 tests [INFO] [stdout] test analyzer::allocator::tests::test_estimate_allocator_savings_scales_with_deps ... ok [INFO] [stdout] test analyzer::allocator::tests::test_check_allocator_optimization_with_custom_allocator_returns_none ... ok [INFO] [stdout] test analyzer::allocator::tests::test_check_allocator_optimization_with_few_deps_returns_none ... ok [INFO] [stdout] test analyzer::allocator::tests::test_count_allocation_heavy_deps_accuracy ... ok [INFO] [stdout] test analyzer::allocator::tests::test_is_allocation_heavy_detects_known_crates ... ok [INFO] [stdout] test analyzer::applicator::tests::test_apply_feature_minimization_with_nonexistent_package_returns_false ... ok [INFO] [stdout] test analyzer::applicator::tests::test_apply_feature_minimization_with_multiline_table_adds_default_features ... ok [INFO] [stdout] test analyzer::applicator::tests::test_apply_feature_minimization_with_existing_default_features_false_returns_false ... ok [INFO] [stdout] test analyzer::allocator::tests::test_allocator_detection_recognizes_all_variants ... ok [INFO] [stdout] test analyzer::applicator::tests::test_apply_feature_minimization_with_no_dependencies_table_returns_false ... ok [INFO] [stdout] test analyzer::applicator::tests::test_apply_feature_minimization_adds_default_features_false ... ok [INFO] [stdout] test analyzer::applicator::tests::test_apply_suggestions_with_malformed_toml_returns_error ... ok [INFO] [stdout] test analyzer::applicator::tests::test_apply_suggestions_with_dry_run_does_not_modify_file ... ok [INFO] [stdout] test analyzer::applicator::tests::test_apply_suggestions_with_missing_cargo_toml_returns_error ... ok [INFO] [stdout] test analyzer::applicator::tests::test_apply_wasm_fix_for_getrandom_adds_wasm_js_feature ... ok [INFO] [stdout] test analyzer::applicator::tests::test_apply_wasm_fix_with_existing_wasm_js_feature_does_not_duplicate ... ok [INFO] [stdout] test analyzer::applicator::tests::test_apply_wasm_fix_with_no_dependencies_table_returns_false ... ok [INFO] [stdout] test analyzer::applicator::tests::test_apply_wasm_fix_with_nonexistent_package_returns_false ... ok [INFO] [stdout] test analyzer::applicator::tests::test_apply_feature_minimization_with_inline_table_converts_to_regular_table ... ok [INFO] [stdout] test analyzer::applicator::tests::test_get_minimal_features_with_known_packages_returns_features ... ok [INFO] [stdout] test analyzer::applicator::tests::test_get_wasm_features_with_known_packages_returns_features ... ok [INFO] [stdout] test analyzer::asset_report::tests::test_print_asset_report_all_embedded_assets_no_panic ... ok [INFO] [stdout] test analyzer::asset_report::tests::test_print_asset_report_all_priority_levels_no_panic ... ok [INFO] [stdout] test analyzer::asset_report::tests::test_print_asset_report_extremely_large_numbers_no_panic ... ok [INFO] [stdout] test analyzer::asset_report::tests::test_show_externalization_guide_empty_results_no_output ... ok [INFO] [stdout] test analyzer::asset_report::tests::test_print_json_output_empty_results_succeeds ... ok [INFO] [stdout] test analyzer::asset_report::tests::test_show_externalization_guide_font_assets_shows_font_guide ... ok [INFO] [stdout] test analyzer::asset_report::tests::test_show_externalization_guide_image_assets_shows_image_guide ... ok [INFO] [stdout] test analyzer::asset_report::tests::test_print_json_output_structure_valid_format ... ok [INFO] [stdout] test analyzer::asset_report::tests::test_print_json_output_with_assets_valid_json ... ok [INFO] [stdout] test analyzer::asset_report::tests::test_print_priority_group_empty_list_no_output ... ok [INFO] [stdout] test analyzer::asset_report::tests::test_print_priority_group_with_assets_displays_all ... ok [INFO] [stdout] test analyzer::asset_report::tests::test_print_savings_estimate_critical_assets_shows_potential ... ok [INFO] [stdout] test analyzer::asset_report::tests::test_show_externalization_guide_mixed_types_shows_all_guides ... ok [INFO] [stdout] test analyzer::asset_visitor::tests::test_extract_string_literal_invalid_formats_returns_none ... ok [INFO] [stdout] test analyzer::applicator::tests::test_apply_fix_with_unsupported_alternative_type_handles_gracefully ... ok [INFO] [stdout] test analyzer::asset_visitor::tests::test_extract_string_literal_valid_strings_extracts_content ... ok [INFO] [stdout] test analyzer::asset_report::tests::test_print_asset_report_special_characters_in_paths_no_panic ... ok [INFO] [stdout] test analyzer::asset_report::tests::test_print_asset_report_zero_assets_no_panic ... ok [INFO] [stdout] test analyzer::asset_report::tests::test_print_asset_report_zero_bundle_size_no_panic ... ok [INFO] [stdout] test analyzer::asset_report::tests::test_print_asset_report_large_bundle_no_panic ... ok [INFO] [stdout] test analyzer::asset_report::tests::test_print_savings_estimate_no_assets_shows_zero ... ok [INFO] [stdout] test analyzer::allocator::tests::test_check_allocator_optimization_with_many_deps_returns_issue ... ok [INFO] [stdout] test analyzer::assets::tests::prop_priority_monotonic_with_size_increasing_asset_never_decreases_priority ... ok [INFO] [stdout] test analyzer::assets::tests::prop_asset_larger_than_bundle_oversized_asset_returns_critical ... ok [INFO] [stdout] test analyzer::assets::tests::prop_critical_above_10_percent_over_threshold_returns_critical ... ok [INFO] [stdout] test analyzer::assets::tests::test_detect_type_all_data_extensions_returns_data_type ... ok [INFO] [stdout] test analyzer::assets::tests::test_color_all_priorities_return_valid_ansi_codes ... ok [INFO] [stdout] test analyzer::assets::tests::prop_percentage_non_negative_calculation_always_valid ... ok [INFO] [stdout] test analyzer::assets::tests::prop_low_under_thresholds_small_percentage_returns_low ... ok [INFO] [stdout] test analyzer::assets::tests::test_detect_type_edge_case_extensions_handles_correctly ... ok [INFO] [stdout] test analyzer::assets::tests::test_detect_type_full_path_with_directories_extracts_extension ... ok [INFO] [stdout] test analyzer::assets::tests::test_detect_type_mixed_case_extensions_handles_case_insensitive ... ok [INFO] [stdout] test analyzer::assets::tests::test_detect_type_uncommon_extensions_returns_correct_types ... ok [INFO] [stdout] test analyzer::assets::tests::test_emoji_all_priorities_return_valid_emojis ... ok [INFO] [stdout] test analyzer::assets::tests::test_from_size_boundary_thresholds_assigns_correct_priorities ... ok [INFO] [stdout] test analyzer::assets::tests::test_from_size_various_percentages_returns_correct_priorities ... ok [INFO] [stdout] test analyzer::assets::tests::test_from_size_zero_asset_size_returns_low_priority ... ok [INFO] [stdout] test analyzer::assets::tests::test_detect_type_all_image_extensions_returns_image_type ... ok [INFO] [stdout] test analyzer::assets::tests::test_detect_type_file_without_extension_returns_unknown ... ok [INFO] [stdout] test analyzer::assets::tests::test_detect_type_all_font_extensions_returns_font_type ... ok [INFO] [stdout] test analyzer::assets::tests::prop_priority_boundaries_exact_thresholds_assign_correctly ... ok [INFO] [stdout] test analyzer::assets::tests::prop_image_extensions_all_variations_return_image_type ... ok [INFO] [stdout] test analyzer::assets::tests::test_detect_type_common_extensions_returns_correct_types ... ok [INFO] [stdout] test analyzer::assets::tests::prop_critical_above_500kb_large_assets_always_critical ... ok [INFO] [stdout] test analyzer::assets::tests::test_from_size_zero_bundle_size_returns_low_priority ... ok [INFO] [stdout] test analyzer::bloat::tests::test_generate_recommendations_formatting_bloat_detects_pattern ... ok [INFO] [stdout] test analyzer::bloat::tests::test_generate_recommendations_large_function_creates_p0_priority ... ok [INFO] [stdout] test analyzer::bloat::tests::test_generate_recommendations_heavy_crate_suggests_optimization ... ok [INFO] [stdout] test analyzer::bloat::tests::test_generate_recommendations_no_bloat_returns_empty ... ok [INFO] [stdout] test analyzer::bloat::tests::test_parse_line_invalid_size_returns_error ... ok [INFO] [stdout] test analyzer::bloat::tests::test_parse_line_missing_fields_returns_error ... ok [INFO] [stdout] test analyzer::bloat::tests::test_parse_line_multiword_name_parses_correctly ... ok [INFO] [stdout] test analyzer::bloat::tests::test_parse_line_namespace_prefix_extracts_crate_name ... ok [INFO] [stdout] test analyzer::bloat::tests::test_parse_line_no_namespace_crate_name_is_none ... ok [INFO] [stdout] test analyzer::bloat::tests::test_parse_line_valid_format_extracts_all_fields ... ok [INFO] [stdout] test analyzer::assets::tests::test_detect_type_multiple_dots_in_filename_uses_last_extension ... ok [INFO] [stdout] test analyzer::bloat::tests::test_parse_line_invalid_percentage_returns_error ... ok [INFO] [stdout] test analyzer::bloat::tests::test_parse_line_zero_size_parses_successfully ... ok [INFO] [stdout] test analyzer::bloat::tests::test_parse_output_missing_headers_returns_empty_results ... ok [INFO] [stdout] test analyzer::assets::tests::prop_zero_bundle_no_panic_any_asset_size_never_panics ... ok [INFO] [stdout] test analyzer::bloat::tests::test_parse_output_partial_summary_parses_available_fields ... ok [INFO] [stdout] test analyzer::bloat::tests::test_parse_output_valid_table_parses_all_items ... ok [INFO] [stdout] test analyzer::assets::tests::prop_unknown_extensions_unrecognized_return_unknown_type ... ok [INFO] [stdout] test analyzer::bloat::tests::test_parse_size_bytes_plain_number_parses_directly ... ok [INFO] [stdout] test analyzer::bloat::tests::test_parse_size_invalid_format_returns_error ... ok [INFO] [stdout] test analyzer::bloat::tests::test_parse_size_kib_units_converts_to_bytes ... ok [INFO] [stdout] test analyzer::bloat::tests::test_parse_size_mib_units_converts_to_bytes ... ok [INFO] [stdout] test analyzer::bloat::tests::test_parse_size_negative_number_returns_zero ... ok [INFO] [stdout] test analyzer::bloat::tests::test_parse_size_with_whitespace_trims_and_parses ... ok [INFO] [stdout] test analyzer::bloat::tests::test_parse_size_plain_number_without_units_parses_as_bytes ... ok [INFO] [stdout] test analyzer::bloat::tests::test_parse_size_zero_value_returns_zero ... ok [INFO] [stdout] test analyzer::bloat_report::tests::test_format_bytes_converts_to_readable_units ... ok [INFO] [stdout] test analyzer::bloat_report::tests::test_format_console_report_with_all_priority_levels ... ok [INFO] [stdout] test analyzer::bloat_report::tests::test_format_console_report_with_empty_results ... ok [INFO] [stdout] test analyzer::bloat_report::tests::test_format_console_report_with_many_items ... ok [INFO] [stdout] test analyzer::bloat_report::tests::test_format_json_report_serializes_bloat_results ... ok [INFO] [stdout] test analyzer::bloat::tests::test_parse_output_empty_input_returns_empty_results ... ok [INFO] [stdout] test analyzer::bloat_report::tests::test_format_json_report_with_recommendations ... ok [INFO] [stdout] test analyzer::bloat_report::tests::test_truncate_symbol_with_long_name_adds_ellipsis ... ok [INFO] [stdout] test analyzer::deps::edge_case_tests::test_determine_severity_edge_cases ... ok [INFO] [stdout] test analyzer::deps::tests::test_determine_severity_returns_correct_level_for_size_ranges ... ok [INFO] [stdout] test analyzer::deps::edge_case_tests::test_analyze_deps_with_missing_metadata ... ok [INFO] [stdout] test analyzer::deps_types::tests::test_dependency_report_total_estimated_savings ... ok [INFO] [stdout] test analyzer::deps_types::tests::test_issue_severity_display_format ... ok [INFO] [stdout] test analyzer::deps_types::tests::test_issue_severity_ordering ... ok [INFO] [stdout] test analyzer::feature_report::tests::test_format_console_report_with_all_confidence_levels ... ok [INFO] [stdout] test analyzer::feature_report::tests::test_format_console_report_with_empty_results ... ok [INFO] [stdout] test analyzer::feature_report::tests::test_format_console_report_with_recommendations ... ok [INFO] [stdout] test analyzer::bloat_report::tests::test_format_console_report_with_items ... ok [INFO] [stdout] test analyzer::feature_report::tests::test_format_json_report_serializes_feature_analysis_results ... ok [INFO] [stdout] test analyzer::deps_types::tests::test_dependency_report_issues_by_severity ... ok [INFO] [stdout] test analyzer::feature_report::tests::test_format_json_report_with_unused_features ... ok [INFO] [stdout] test analyzer::feature_report::tests::test_truncate_with_long_string_adds_ellipsis ... ok [INFO] [stdout] test analyzer::features::tests::test_estimate_feature_impact_returns_size_estimate ... ok [INFO] [stdout] test analyzer::features::tests::test_estimate_feature_impact_for_known_packages ... ok [INFO] [stdout] test analyzer::features::tests::test_feature_analyzer_new_with_different_paths ... ok [INFO] [stdout] test analyzer::features::tests::test_generate_recommendations_creates_actionable_suggestions ... ok [INFO] [stdout] test analyzer::features::tests::test_generate_recommendations_with_empty_list ... ok [INFO] [stdout] test analyzer::features::tests::test_generate_recommendations_with_multiple_unused_features ... ok [INFO] [stdout] test analyzer::feature_report::tests::test_format_console_report_with_unused_features ... ok [INFO] [stdout] test analyzer::features::tests::test_feature_analysis_results_creation ... ok [INFO] [stdout] test analyzer::features::tests::test_get_confidence_level_for_different_packages ... ok [INFO] [stdout] test analyzer::features::tests::test_get_confidence_level_returns_correct_level ... ok [INFO] [stdout] test analyzer::features::tests::test_is_commonly_unused_feature_identifies_known_features ... ok [INFO] [stdout] test analyzer::features::tests::test_is_commonly_unused_feature_with_various_packages ... ok [INFO] [stdout] test analyzer::heavy_deps::tests::test_database_bundle_percentages_within_valid_range ... ok [INFO] [stdout] test analyzer::heavy_deps::tests::test_database_initialization_has_entries ... ok [INFO] [stdout] test analyzer::heavy_deps::tests::test_database_size_ranges_consistent_with_savings ... ok [INFO] [stdout] test analyzer::heavy_deps::tests::test_database_all_alternative_types_represented ... ok [INFO] [stdout] test analyzer::heavy_deps::tests::test_get_heavy_dependency_info_chrono_has_lighter_alternatives ... ok [INFO] [stdout] test analyzer::heavy_deps::tests::test_get_heavy_dependency_info_image_supports_feature_minimization ... ok [INFO] [stdout] test analyzer::heavy_deps::tests::test_get_heavy_dependency_info_lopdf_has_lighter_alternative ... ok [INFO] [stdout] test analyzer::heavy_deps::tests::test_get_heavy_dependency_info_async_std_has_wasm_alternative ... ok [INFO] [stdout] test analyzer::assets::tests::prop_data_extensions_all_variations_return_data_type ... ok [INFO] [stdout] test analyzer::heavy_deps::tests::test_get_heavy_dependency_info_printpdf_has_replacement_alternatives ... ok [INFO] [stdout] test analyzer::heavy_deps::tests::test_get_heavy_dependency_info_swc_core_has_split_alternatives ... ok [INFO] [stdout] test analyzer::heavy_deps::tests::test_get_heavy_dependency_info_tokio_has_wasm_alternative ... ok [INFO] [stdout] test analyzer::panic_report::tests::test_group_by_file_counts_correctly ... ok [INFO] [stdout] test analyzer::panics::tests::test_generate_recommendations_critical_level ... ok [INFO] [stdout] test analyzer::heavy_deps::tests::test_get_heavy_dependency_info_regex_supports_feature_minimization ... ok [INFO] [stdout] test analyzer::panics::tests::test_panic_pattern_alternative_returns_suggestions ... ok [INFO] [stdout] test analyzer::panics::tests::test_generate_recommendations_low_level ... ok [INFO] [stdout] test analyzer::heavy_deps::tests::test_get_heavy_dependency_info_rustybuzz_can_be_made_optional ... ok [INFO] [stdout] test analyzer::panics::tests::test_panic_pattern_name_returns_correct_names ... ok [INFO] [stdout] test analyzer::panics::tests::test_scan_with_ast_detects_expect ... ok [INFO] [stdout] test analyzer::panics::tests::test_scan_with_ast_detects_index ... ok [INFO] [stdout] test analyzer::panics::tests::test_scan_with_ast_detects_division ... ok [INFO] [stdout] test analyzer::panics::tests::test_scan_with_ast_detects_unwrap ... ok [INFO] [stdout] test analyzer::panics::tests::test_panic_pattern_size_per_occurrence_returns_nonzero ... ok [INFO] [stdout] test analyzer::panics::tests::test_scan_with_regex_detects_assert_macro ... ok [INFO] [stdout] test analyzer::panics::tests::test_scan_with_regex_detects_panic_macro ... ok [INFO] [stdout] test analyzer::report_utils::tests::test_format_bytes_with_bytes_shows_b_unit ... ok [INFO] [stdout] test analyzer::report_utils::tests::test_format_bytes_with_gigabytes_shows_gb_unit ... ok [INFO] [stdout] test analyzer::report_utils::tests::test_format_number_adds_thousand_separators ... ok [INFO] [stdout] test analyzer::report_utils::tests::test_format_bytes_with_megabytes_shows_mb_unit ... ok [INFO] [stdout] test analyzer::bloat::tests::proptest_parse_size::test_parse_size_whitespace_invariant ... ok [INFO] [stdout] test analyzer::report_utils::tests::test_format_bytes_with_kilobytes_shows_kb_unit ... ok [INFO] [stdout] test analyzer::report_utils::tests::test_truncate_str_max_len_less_than_3_handles_edge_case ... ok [INFO] [stdout] test analyzer::report_utils::tests::test_truncate_str_short_string_returns_unchanged ... ok [INFO] [stdout] test analyzer::report_utils::tests::test_to_json_string_serializes_struct ... ok [INFO] [stdout] test analyzer::twiggy::executor::tests::test_run_dead_code_analysis_with_successful_execution ... ok [INFO] [stdout] test analyzer::bloat::tests::proptest_parse_size::test_parse_size_plain_number_roundtrip ... ok [INFO] [stdout] test analyzer::twiggy::executor::tests::test_run_monos_analysis_with_successful_execution ... ok [INFO] [stdout] test analyzer::report_utils::tests::test_format_percent_rounds_to_2_decimals ... ok [INFO] [stdout] test analyzer::twiggy::executor::tests::test_run_top_analysis_with_successful_execution ... ok [INFO] [stdout] test analyzer::bloat::tests::proptest_parse_size::test_parse_size_bytes_roundtrip ... ok [INFO] [stdout] test analyzer::report_utils::tests::test_truncate_str_long_string_adds_ellipsis ... ok [INFO] [stdout] test analyzer::twiggy::executor::tests::test_run_dominators_analysis_with_successful_execution ... ok [INFO] [stdout] test analyzer::tests::test_analyzer_module_exports_are_accessible ... ok [INFO] [stdout] test analyzer::assets::tests::prop_font_extensions_all_variations_return_font_type ... ok [INFO] [stdout] test analyzer::features::tests::test_unused_feature_creation ... ok [INFO] [stdout] test analyzer::bloat::tests::test_parse_size_fractional_bytes_rounds_to_integer ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::test_parse_diff_output_malformed_input_returns_empty_changes ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::test_parse_diff_output_delta_with_commas_parses ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::test_parse_diff_output_valid_format_parses_deltas ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::test_parse_diff_output_zero_delta_included ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::test_parse_diff_output_large_values_handled ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::test_parse_line_boundary_values_parses_extremes ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::test_parse_line_decimal_percentage_parses_fractional ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::test_parse_line_invalid_formats_returns_none ... ok [INFO] [stdout] test analyzer::bloat::tests::proptest_parse_size::test_parse_size_mib_roundtrip ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::test_parse_line_edge_cases_handles_correctly ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::test_parse_line_name_with_pipes_preserves_content ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::test_parse_line_no_commas_in_size_parses_directly ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::test_parse_line_percentage_boundary_accepts_full_range ... ok [INFO] [stdout] test analyzer::bloat::tests::proptest_parse_size::test_parse_size_kib_roundtrip ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::test_parse_line_size_with_commas_parses_correctly ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::test_parse_line_special_characters_in_name_handles ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::test_parse_output_all_modes_consistent_parsing ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::test_parse_line_valid_format_extracts_all_fields ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::test_parse_line_whitespace_variations_parses_correctly ... ok [INFO] [stdout] test analyzer::twiggy::recommendations::tests::test_extract_base_function_name_fallback ... ok [INFO] [stdout] test analyzer::twiggy::recommendations::tests::test_extract_base_function_name_impl_trait_format ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::proptest_parser::test_parse_line_size_roundtrip ... ok [INFO] [stdout] test analyzer::twiggy::recommendations::tests::test_extract_base_function_name_mangled_symbols ... ok [INFO] [stdout] test analyzer::assets::tests::prop_multiple_extensions_last_extension_determines_type ... ok [INFO] [stdout] test analyzer::twiggy::recommendations::tests::test_generate_monos_recommendations_enhanced_minimal_bloat ... ok [INFO] [stdout] test analyzer::twiggy::recommendations::tests::test_generate_monos_recommendations_enhanced_moderate_bloat ... ok [INFO] [stdout] test analyzer::twiggy::recommendations::tests::test_generate_monos_recommendations_enhanced_priority_thresholds ... ok [INFO] [stdout] test analyzer::twiggy::recommendations::tests::test_generate_monos_recommendations_enhanced_significant_bloat ... ok [INFO] [stdout] test analyzer::twiggy::recommendations::tests::test_generate_recommendations_dominators_mode_high_priority ... ok [INFO] [stdout] test analyzer::twiggy::recommendations::tests::test_generate_recommendations_empty_items_returns_empty ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::test_parse_output_with_headers_skips_non_data_lines ... ok [INFO] [stdout] test analyzer::twiggy::recommendations::tests::test_generate_recommendations_garbage_mode_high_percentage ... ok [INFO] [stdout] test analyzer::twiggy::recommendations::tests::test_generate_recommendations_top_mode_large_data_segment ... ok [INFO] [stdout] test analyzer::twiggy::recommendations::tests::test_generate_recommendations_garbage_mode_low_percentage ... ok [INFO] [stdout] test analyzer::twiggy::recommendations::tests::test_generate_recommendations_monos_mode_suggests_generics ... ok [INFO] [stdout] test analyzer::twiggy::recommendations::tests::test_group_monomorphizations_filters_single_instantiation ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::test_parse_output_empty_lines_skips_blanks ... ok [INFO] [stdout] test analyzer::twiggy::recommendations::tests::test_group_monomorphizations_multiple_instantiations ... ok [INFO] [stdout] test analyzer::twiggy::recommendations::tests::test_group_monomorphizations_sorts_by_savings ... ok [INFO] [stdout] test analyzer::twiggy::recommendations::tests::test_extract_base_function_name_demangled_symbols ... ok [INFO] [stdout] test analyzer::twiggy::recommendations::tests::test_generate_recommendations_top_mode_prioritizes_largest ... ok [INFO] [stdout] test analyzer::twiggy::tests::test_analyze_nonexistent_file_returns_file_error ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::proptest_parser::test_parse_diff_output_roundtrip ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::test_parse_output_malformed_input_returns_empty_items ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::proptest_parser::test_parse_line_with_commas_roundtrip ... ok [INFO] [stdout] test analyzer::twiggy::tests::test_compare_nonexistent_files_returns_file_error ... ok [INFO] [stdout] test analyzer::assets::tests::prop_case_insensitivity_uppercase_extensions_match_lowercase ... ok [INFO] [stdout] test analyzer::twiggy::tests::test_installation_instructions_provides_cargo_command ... ok [INFO] [stdout] test analyzer::twiggy_report::tests::test_format_number_adds_thousand_separators ... ok [INFO] [stdout] test analyzer::twiggy_report::tests::test_format_number_edge_cases ... ok [INFO] [stdout] test analyzer::twiggy::tests::test_analyze_monos_mode_with_invalid_wasm_returns_error ... ok [INFO] [stdout] test analyzer::twiggy::tests::test_compare_with_invalid_wasm_does_not_panic ... ok [INFO] [stdout] test analyzer::twiggy::tests::test_analyze_invalid_wasm_file_handles_corrupted_data ... ok [INFO] [stdout] test analyzer::twiggy::tests::test_analyze_dead_mode_with_invalid_wasm_returns_error ... ok [INFO] [stdout] test analyzer::twiggy::tests::test_analyze_top_mode_with_invalid_wasm_returns_error ... ok [INFO] [stdout] test analyzer::twiggy::tests::test_analyze_dominators_mode_with_invalid_wasm_returns_error ... ok [INFO] [stdout] test analyzer::twiggy_report::tests::test_print_analysis_report_many_mono_groups ... ok [INFO] [stdout] test analyzer::twiggy::tests::test_check_installation_twiggy_availability_succeeds ... ok [INFO] [stdout] test analyzer::twiggy_report::tests::test_print_analysis_report_garbage_mode ... ok [INFO] [stdout] test analyzer::twiggy_report::tests::test_print_analysis_report_large_file_sizes ... ok [INFO] [stdout] test analyzer::twiggy::tests::test_analyze_empty_wasm_file_handles_edge_case ... ok [INFO] [stdout] test analyzer::twiggy_report::tests::test_print_analysis_report_small_file_sizes ... ok [INFO] [stdout] test analyzer::twiggy_report::tests::test_print_analysis_report_with_mono_groups ... ok [INFO] [stdout] test analyzer::twiggy::tests::test_analyze_with_unreadable_file_returns_error ... ok [INFO] [stdout] test analyzer::twiggy_report::tests::test_print_analysis_report_basic ... ok [INFO] [stdout] test analyzer::twiggy_report::tests::test_print_analysis_report_dominators_mode ... ok [INFO] [stdout] test analyzer::twiggy_report::tests::test_print_analysis_report_empty_items ... ok [INFO] [stdout] test analyzer::twiggy_report::tests::test_print_analysis_report_large_item_count ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::proptest_parser::test_parse_line_arbitrary_name ... ok [INFO] [stdout] test analyzer::twiggy_report::tests::test_print_comparison_report_many_changes ... ok [INFO] [stdout] test analyzer::twiggy_report::tests::test_print_comparison_report_size_increase ... ok [INFO] [stdout] test analyzer::twiggy_report::tests::test_print_comparison_report_no_changes ... ok [INFO] [stdout] test analyzer::twiggy_report::tests::test_print_comparison_report_small_delta ... ok [INFO] [stdout] test bench_tracker::comparator::tests::test_compare_with_baseline_detects_improvements ... ok [INFO] [stdout] test analyzer::twiggy_report::tests::test_print_comparison_report_size_reduction ... ok [INFO] [stdout] test bench_tracker::comparator::tests::test_compare_with_baseline_handles_new_benchmarks ... ok [INFO] [stdout] test bench_tracker::comparator::tests::test_has_regressions_with_mixed_results ... ok [INFO] [stdout] test bench_tracker::comparator::tests::test_regression_detection_at_threshold_boundaries ... ok [INFO] [stdout] test bench_tracker::comparator::tests::test_budget_with_max_time_ns_detects_violations ... ok [INFO] [stdout] test bench_tracker::parser::tests::test_parse_criterion_results_empty_directory ... ok [INFO] [stdout] test bench_tracker::parser::tests::test_parse_criterion_results_handles_missing_data ... ok [INFO] [stdout] test bench_tracker::parser::tests::test_parse_criterion_results_with_missing_mean ... ok [INFO] [stdout] test bench_tracker::parser::tests::test_parse_criterion_results_mixed_valid_invalid ... ok [INFO] [stdout] test bench_tracker::parser::tests::test_parse_criterion_results_with_valid_data ... ok [INFO] [stdout] test bench_tracker::reporter::tests::test_format_ns_converts_to_readable_time_units ... ok [INFO] [stdout] test bench_tracker::reporter::tests::test_print_comparison_boundary_change_percent ... ok [INFO] [stdout] test bench_tracker::reporter::tests::test_print_comparison_with_budget_exceeded ... ok [INFO] [stdout] test bench_tracker::reporter::tests::test_print_comparison_with_improvement ... ok [INFO] [stdout] test bench_tracker::parser::tests::test_parse_criterion_results_with_non_numeric_values ... ok [INFO] [stdout] test bench_tracker::reporter::tests::test_format_ns_all_units ... ok [INFO] [stdout] test bench_tracker::reporter::tests::test_print_comparison_with_regression ... ok [INFO] [stdout] test bench_tracker::reporter::tests::test_print_comparison_empty_list ... ok [INFO] [stdout] test bench_tracker::reporter::tests::test_print_comparison_with_stable_performance ... ok [INFO] [stdout] test bench_tracker::reporter::tests::test_reporter_default ... ok [INFO] [stdout] test bench_tracker::reporter::tests::test_print_comparison_long_benchmark_name ... ok [INFO] [stdout] test bench_tracker::reporter::tests::test_print_comparison_multiple_benchmarks ... ok [INFO] [stdout] test bench_tracker::reporter::tests::test_reporter_new ... ok [INFO] [stdout] test bench_tracker::reporter::tests::test_truncate_with_long_string_adds_ellipsis ... ok [INFO] [stdout] test bench_tracker::tests::test_budget_with_max_time_ns_detects_violations ... ok [INFO] [stdout] test bench_tracker::storage::tests::test_load_baseline_returns_none_when_file_missing ... ok [INFO] [stdout] test bench_tracker::tests::test_compare_with_baseline_detects_improvements ... ok [INFO] [stdout] test bench_tracker::tests::test_load_baseline_returns_none_when_file_missing ... ok [INFO] [stdout] test bench_tracker::tests::test_has_regressions_with_mixed_results ... ok [INFO] [stdout] test bench_tracker::tests::test_compare_with_baseline_handles_new_benchmarks ... ok [INFO] [stdout] test bench_tracker::storage::tests::test_save_and_load_baseline_preserves_data ... ok [INFO] [stdout] test bench_tracker::reporter::tests::test_truncate_edge_cases ... ok [INFO] [stdout] test bench_tracker::comparator::tests::test_performance_budget_default_has_expected_values ... ok [INFO] [stdout] test bench_tracker::parser::tests::test_parse_criterion_results_multiple_benchmarks ... ok [INFO] [stdout] test bench_tracker::parser::tests::test_parse_criterion_results_with_incomplete_mean ... ok [INFO] [stdout] test bench_tracker::tests::test_parse_criterion_results_handles_missing_data ... ok [INFO] [stdout] test cicd::budget::tests::prop_bytes_to_kb_conversion ... ok [INFO] [stdout] test cicd::budget::tests::prop_none_thresholds_no_panic ... ok [INFO] [stdout] test bench_tracker::parser::tests::test_parse_criterion_results_with_invalid_json ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::test_parse_output_mixed_lines_parses_valid_only ... ok [INFO] [stdout] test bench_tracker::tests::test_regression_detection_at_threshold_boundaries ... ok [INFO] [stdout] test cicd::budget::tests::test_budget_result_fields_have_correct_values ... ok [INFO] [stdout] test cicd::budget::tests::test_check_budget_above_target_but_within_max_returns_warning ... ok [INFO] [stdout] test cicd::budget::tests::test_check_budget_above_target_has_warning_message ... ok [INFO] [stdout] test cicd::budget::tests::test_check_budget_at_warning_threshold_has_warning_message ... ok [INFO] [stdout] test cicd::budget::tests::test_check_budget_exactly_at_max_returns_failure ... ok [INFO] [stdout] test cicd::budget::tests::test_check_budget_at_warning_threshold_returns_warning ... ok [INFO] [stdout] test cicd::budget::tests::test_check_budget_exactly_at_warning_threshold_returns_warning ... ok [INFO] [stdout] test cicd::budget::tests::test_check_budget_exceeded_has_failure_message ... ok [INFO] [stdout] test cicd::budget::tests::test_check_budget_exactly_at_target_returns_success ... ok [INFO] [stdout] test cicd::budget::tests::test_check_budget_exceeded_max_returns_failure ... ok [INFO] [stdout] test cicd::budget::tests::test_check_budget_under_target_returns_success ... ok [INFO] [stdout] test cicd::budget::tests::test_check_budget_under_target_has_success_message ... ok [INFO] [stdout] test cicd::budget::tests::test_check_budget_with_no_limits_has_success_message ... ok [INFO] [stdout] test cicd::budget::tests::test_check_budget_with_no_limits_returns_success ... ok [INFO] [stdout] test cicd::budget::tests::test_check_budget_with_only_max_limit_returns_correct_status ... ok [INFO] [stdout] test cicd::budget::tests::test_check_budget_with_only_target_no_other_limits_works_correctly ... ok [INFO] [stdout] test cicd::display::tests::test_print_regression_boundary_significant_reduction ... ok [INFO] [stdout] test cicd::display::tests::test_print_regression_boundary_small_reduction ... ok [INFO] [stdout] test cicd::display::tests::test_print_regression_large_numbers ... ok [INFO] [stdout] test cicd::display::tests::test_print_regression_small_numbers ... ok [INFO] [stdout] test cicd::budget::tests::prop_exit_codes_deterministic ... ok [INFO] [stdout] test cicd::display::tests::test_print_regression_with_size_decrease ... ok [INFO] [stdout] test analyzer::bloat::tests::test_check_installation_cargo_bloat_availability_succeeds ... ok [INFO] [stdout] test cicd::budget::tests::prop_message_non_empty ... ok [INFO] [stdout] test cicd::display::tests::test_print_regression_with_size_increase ... ok [INFO] [stdout] test cicd::display::tests::test_print_regression_with_stable_size ... ok [INFO] [stdout] test cicd::display::tests::test_print_regression_zero_change ... ok [INFO] [stdout] test cicd::history::tests::test_build_history_check_regression_with_empty_history_returns_none ... ok [INFO] [stdout] test cicd::history::tests::test_build_history_load_with_corrupted_json_returns_error ... ok [INFO] [stdout] test cicd::history::tests::test_build_history_load_with_invalid_schema_returns_error ... ok [INFO] [stdout] test cicd::history::tests::test_build_history_load_with_empty_json_returns_error ... ok [INFO] [stdout] test cicd::budget::tests::prop_budget_status_monotonic ... ok [INFO] [stdout] test cicd::history::tests::test_build_history_check_regression_just_over_5_percent_returns_regression ... ok [INFO] [stdout] test bench_tracker::tests::test_save_and_load_baseline_preserves_data ... ok [INFO] [stdout] test cicd::history::tests::test_build_history_save_and_load_with_git_metadata_preserves_fields ... ok [INFO] [stdout] test cicd::history::tests::test_build_history_check_regression_at_5_percent_threshold_returns_none ... ok [INFO] [stdout] test cicd::output::tests::test_budget_info_from_result_with_above_target ... ok [INFO] [stdout] test cicd::output::tests::test_budget_info_from_result_with_over_budget ... ok [INFO] [stdout] test cicd::output::tests::test_budget_info_from_result_with_warning ... ok [INFO] [stdout] test cicd::history::tests::test_build_history_save_and_load_preserves_records ... ok [INFO] [stdout] test cicd::history::tests::test_build_history_check_regression_detects_size_increases ... ok [INFO] [stdout] test cicd::output::tests::test_json_output_print_does_not_panic ... ok [INFO] [stdout] test cicd::output::tests::test_json_output_serialization_produces_valid_json ... ok [INFO] [stdout] test cicd::history::tests::test_build_history_save_and_load_without_git_metadata_works ... ok [INFO] [stdout] test cicd::output::tests::test_regression_info_from_result ... ok [INFO] [stdout] test cicd::output::tests::test_size_info_formats_mb_for_large_sizes ... ok [INFO] [stdout] test cicd::history::tests::test_build_history_add_record_and_get_latest_works ... ok [INFO] [stdout] test cicd::output::tests::test_size_info_formats_sizes_correctly ... ok [INFO] [stdout] test cicd::output::tests::test_json_output_basic_includes_size_info ... ok [INFO] [stdout] test cicd::history::tests::test_build_history_save_creates_directory_if_needed ... ok [INFO] [stdout] test cicd::output::tests::test_json_output_with_budget_failed_shows_failure ... ok [INFO] [stdout] test cicd::tests::test_cicd_module_exports_are_accessible ... ok [INFO] [stdout] test cmd::analyze::tests::test_analyze_wasm_binary_all_modes ... ok [INFO] [stdout] test cmd::analyze::tests::test_analyze_wasm_binary_requires_file ... ok [INFO] [stdout] test cicd::output::tests::test_json_output_with_budget_includes_budget_status ... ok [INFO] [stdout] test cmd::analyze::tests::test_cmd_analyze_empty_mode_string ... ok [INFO] [stdout] test cmd::analyze::tests::test_cmd_analyze_case_sensitive ... ok [INFO] [stdout] test cmd::analyze::tests::test_cmd_analyze_error_message_includes_valid_modes ... ok [INFO] [stdout] test cmd::analyze::tests::test_cmd_analyze_unknown_mode ... ok [INFO] [stdout] test cmd::analyze::tests::test_cmd_analyze_mode_with_whitespace ... ok [INFO] [stdout] test cmd::analyze::tests::test_cmd_analyze_wasm_binary_modes_require_file ... ok [INFO] [stdout] test cmd::analyze::tests::test_analyze_wasm_binary_with_file ... ok [INFO] [stdout] test cicd::history::tests::test_build_history_concurrent_add_record_works_correctly ... ok [INFO] [stdout] test cmd::analyze::tests::test_cmd_analyze_whitespace_mode ... ok [INFO] [stdout] test cmd::analyze::tests::test_cmd_analyze_with_file_parameter ... ok [INFO] [stdout] test cicd::history::tests::test_build_history_multiple_save_load_cycles_work_correctly ... ok [INFO] [stdout] test cicd::history::tests::test_build_history_save_overwrites_existing_file ... ok [INFO] [stdout] test cmd::build::tests::test_present_budget_check_with_none ... ok [INFO] [stdout] test cmd::build::tests::test_present_budget_check_with_passed ... ok [INFO] [stdout] test cmd::build::tests::test_present_build_results_with_zero_reduction ... ok [INFO] [stdout] test cmd::build::tests::test_present_cargo_changes_with_changes ... ok [INFO] [stdout] test cmd::build::tests::test_present_cargo_changes_with_empty_list ... ok [INFO] [stdout] test cmd::build::tests::test_present_dry_run_info_with_empty_list ... ok [INFO] [stdout] test cmd::build::tests::test_present_dry_run_info_with_files ... ok [INFO] [stdout] test cicd::history::tests::test_build_record_new_creates_with_current_timestamp ... ok [INFO] [stdout] test cmd::build::tests::test_present_build_results_displays_metrics ... ok [INFO] [stdout] test analyzer::twiggy::parser::tests::proptest_parser::test_parse_output_multiple_lines ... ok [INFO] [stdout] test cmd::build::tests::test_format_bytes_via_shared_module ... ok [INFO] [stdout] test cmd::build::tests::test_present_json_report_generates_valid_json ... ok [INFO] [stdout] test cmd::compare::tests::test_compare_error_message_includes_file_path ... ok [INFO] [stdout] test cmd::compare::tests::test_compare_validates_baseline_before_comparison ... ok [INFO] [stdout] test cmd::completions::tests::test_cmd_completions_all_shells_supported ... ok [INFO] [stdout] test cmd::compare::tests::test_compare_with_both_files_missing ... ok [INFO] [stdout] test cmd::init::tests::test_cmd_init_with_all_templates ... ok [INFO] [stdout] test cmd::init::tests::test_cmd_init_with_existing_config_does_not_overwrite ... ok [INFO] [stdout] test cmd::init::tests::test_cmd_init_with_invalid_template_returns_error ... ok [INFO] [stdout] test cicd::budget::tests::prop_zero_size_passes ... ok [INFO] [stdout] test cmd::workflow::tests::test_build_result_all_fields ... ok [INFO] [stdout] test cmd::init::tests::test_template_resolver_from_template ... ok [INFO] [stdout] test cmd::workflow::tests::test_build_result_can_be_created ... ok [INFO] [stdout] test cmd::compare::tests::test_compare_with_missing_baseline_file ... ok [INFO] [stdout] test cmd::compare::tests::test_compare_with_missing_comparison_file ... ok [INFO] [stdout] test cmd::completions::tests::test_cmd_completions_bash_generates_output ... ok [INFO] [stdout] test cmd::workflow::tests::test_build_result_dry_run_mode ... ok [INFO] [stdout] test cmd::workflow::tests::test_build_result_debug_format ... ok [INFO] [stdout] test cmd::workflow::tests::test_build_workflow_new_with_different_paths ... ok [INFO] [stdout] test cmd::workflow::tests::test_build_result_with_multiple_cargo_changes ... ok [INFO] [stdout] test cmd::workflow::tests::test_build_result_with_budget_check ... ok [INFO] [stdout] test cmd::workflow::tests::test_build_result_with_failed_budget ... ok [INFO] [stdout] test cmd::workflow::tests::test_build_workflow_can_be_created ... ok [INFO] [stdout] test cmd::init::tests::test_cmd_init_creates_config_in_current_dir ... ok [INFO] [stdout] test analyzer::assets::tests::prop_path_depth_any_depth_detects_type_correctly ... ok [INFO] [stdout] test cmd::workflow::tests::test_optimization_result_empty_tuple ... ok [INFO] [stdout] test cmd::workflow::tests::test_rollback_cargo_tomls_restores_content ... ok [INFO] [stdout] test cmd::workflow::tests::test_rollback_cargo_tomls_with_empty_backups ... ok [INFO] [stdout] test config::file::tests::test_config_file_default_has_balanced_template ... ok [INFO] [stdout] test config::file::tests::test_config_file_exists_returns_true_after_save ... ok [INFO] [stdout] test cmd::workflow::tests::test_optimization_result_complete ... ok [INFO] [stdout] test config::file::tests::test_config_file_from_template_creates_from_template ... ok [INFO] [stdout] test config::file::tests::test_config_file_load_with_circular_table_refs_handles_gracefully ... ok [INFO] [stdout] test config::file::tests::test_config_file_exists_with_nonexistent_path_returns_false ... ok [INFO] [stdout] test config::file::tests::test_config_file_load_with_duplicate_keys_returns_error ... ok [INFO] [stdout] test cmd::workflow::tests::test_optimization_result_type_alias ... ok [INFO] [stdout] test cmd::workflow::tests::test_optimization_result_with_backups ... ok [INFO] [stdout] test cmd::workflow::tests::test_optimization_result_with_changes ... ok [INFO] [stdout] test cmd::workflow::tests::test_build_workflow_stores_project_root ... ok [INFO] [stdout] test config::file::tests::test_config_file_load_with_invalid_toml_returns_error ... ok [INFO] [stdout] test config::file::tests::test_config_file_load_with_missing_file_returns_default ... ok [INFO] [stdout] test config::file::tests::test_config_file_load_with_trailing_commas_in_inline_tables_handles_correctly ... ok [INFO] [stdout] test config::file::tests::test_config_file_load_with_unicode_edge_cases_handles_correctly ... ok [INFO] [stdout] test config::file::tests::test_config_file_load_with_deeply_nested_toml_handles_gracefully ... ok [INFO] [stdout] test config::file::tests::test_config_file_load_with_malformed_structure_returns_error ... ok [INFO] [stdout] test config::file::tests::test_config_file_load_with_only_whitespace_returns_default ... ok [INFO] [stdout] test config::file::tests::test_config_file_load_with_invalid_utf8_sequences_returns_error ... ok [INFO] [stdout] test cmd::workflow::tests::test_optimization_result_with_dry_run_files ... ok [INFO] [stdout] test config::file::tests::test_config_file_resolve_template_merges_overrides_with_template ... ok [INFO] [stdout] test config::file::tests::test_size_budget_default_has_no_limits ... ok [INFO] [stdout] test config::file::tests::test_size_budget_validate_with_correct_order_succeeds ... ok [INFO] [stdout] test config::file::tests::test_size_budget_validate_with_target_exceeds_max_returns_error ... ok [INFO] [stdout] test config::file::tests::test_size_budget_validate_with_target_exceeds_warn_returns_error ... ok [INFO] [stdout] test config::file::tests::test_size_budget_validate_with_warn_exceeds_max_returns_error ... ok [INFO] [stdout] test config::file::tests::test_config_file_serialize_deserialize_preserves_data ... ok [INFO] [stdout] test config::loader::tests::test_exists_returns_true_when_file_present ... ok [INFO] [stdout] test config::loader::tests::test_exists_returns_false_for_missing_file ... ok [INFO] [stdout] test config::loader::tests::test_loader_handles_empty_file ... ok [INFO] [stdout] test config::loader::tests::test_loader_handles_partial_config ... ok [INFO] [stdout] test cicd::budget::tests::prop_status_matches_thresholds ... ok [INFO] [stdout] test config::file::tests::test_config_file_save_and_load_preserves_values ... ok [INFO] [stdout] test config::file::tests::test_config_file_load_with_extremely_large_file_handles_gracefully ... ok [INFO] [stdout] test config::loader::tests::test_save_preserves_all_config_fields ... ok [INFO] [stdout] test config::loader::tests::test_loader_with_missing_file_uses_defaults ... ok [INFO] [stdout] test config::loader::tests::test_save_writes_valid_toml ... ok [INFO] [stdout] test config::loader::tests::test_loader_loads_from_valid_toml ... ok [INFO] [stdout] test config::profile_config::tests::test_profile_config_default_has_expected_values ... ok [INFO] [stdout] test config::resolver::tests::test_from_template_creates_complete_config ... ok [INFO] [stdout] test config::resolver::tests::test_from_template_preserves_wasm_opt_flags ... ok [INFO] [stdout] test config::resolver::tests::test_from_template_preserves_all_profile_settings ... ok [INFO] [stdout] test config::resolver::tests::test_resolver_merges_codegen_units_override ... ok [INFO] [stdout] test config::resolver::tests::test_resolver_merges_lto_override ... ok [INFO] [stdout] test config::resolver::tests::test_resolver_merges_opt_level_override ... ok [INFO] [stdout] test config::resolver::tests::test_resolver_merges_panic_override ... ok [INFO] [stdout] test config::resolver::tests::test_resolver_merges_strip_override ... ok [INFO] [stdout] test config::resolver::tests::test_resolver_preserves_template_values_without_overrides ... ok [INFO] [stdout] test config::resolver::tests::test_resolver_merges_wasm_opt_flags ... ok [INFO] [stdout] test config::resolver::tests::test_resolver_resolves_template_by_name ... ok [INFO] [stdout] test config::resolver::tests::test_resolver_with_multiple_overrides ... ok [INFO] [stdout] test config::template::tests::test_template_all_returns_sorted_by_name ... ok [INFO] [stdout] test config::template::tests::test_template_balanced_matches_warp_configuration ... ok [INFO] [stdout] test config::template::tests::test_template_builder ... ok [INFO] [stdout] test config::template::tests::test_template_clone_preserves_all_fields ... ok [INFO] [stdout] test config::template::tests::test_template_contains_all_expected_templates ... ok [INFO] [stdout] test config::template::tests::test_template_framework_variants_have_dependency_hints ... ok [INFO] [stdout] test config::template::tests::test_template_get_and_all_work_correctly ... ok [INFO] [stdout] test config::template::tests::test_template_get_by_name ... ok [INFO] [stdout] test config::template::tests::test_template_get_with_nonexistent_name_returns_none ... ok [INFO] [stdout] test config::template::tests::test_template_methods ... ok [INFO] [stdout] test config::template::tests::test_template_names_returns_sorted_list ... ok [INFO] [stdout] test config::template::tests::test_template_new_creates_with_correct_defaults ... ok [INFO] [stdout] test config::template::tests::test_template_new_for_frameworks_includes_dependency_hints ... ok [INFO] [stdout] test config::template::tests::test_template_profile_settings_are_valid ... ok [INFO] [stdout] test config::template::tests::test_template_type_all_variants_can_be_parsed ... ok [INFO] [stdout] test config::template::tests::test_template_type_all_variants_have_descriptions ... ok [INFO] [stdout] test config::template::tests::test_template_type_all_variants_have_valid_names ... ok [INFO] [stdout] test config::template::tests::test_template_type_from_str_error_messages_are_descriptive ... ok [INFO] [stdout] test config::template::tests::test_template_type_from_str_handles_any_case ... ok [INFO] [stdout] test config::template::tests::test_template_type_from_str_parses_case_insensitively ... ok [INFO] [stdout] test config::template::tests::test_template_type_from_str_with_invalid_names_returns_error ... ok [INFO] [stdout] test config::template::tests::test_template_wasm_opt_flags_are_valid ... ok [INFO] [stdout] test config::tests::test_config_file_name_constant_is_correct ... ok [INFO] [stdout] test config::tests::test_config_module_exports_are_accessible ... ok [INFO] [stdout] test config::tests::test_template_has_all_standard_templates ... ok [INFO] [stdout] test config::validator::tests::test_validation_issue_builder ... ok [INFO] [stdout] test config::validator::tests::test_validation_issue_field_and_message ... ok [INFO] [stdout] test config::validator::tests::test_validation_issue_with_all_severities ... ok [INFO] [stdout] test config::validator::tests::test_validation_result_detects_errors ... ok [INFO] [stdout] test config::validator::tests::test_validation_result_failure_constructor ... ok [INFO] [stdout] test config::validator::tests::test_validation_result_has_errors ... ok [INFO] [stdout] test config::validator::tests::test_validation_result_has_warnings_only ... ok [INFO] [stdout] test config::validator::tests::test_validation_result_is_valid_with_no_issues ... ok [INFO] [stdout] test config::validator::tests::test_validation_result_with_mixed_severities ... ok [INFO] [stdout] test config::validator::tests::test_validation_severity_ordering ... ok [INFO] [stdout] test config::validator::tests::test_validator_allows_compatible_configurations ... ok [INFO] [stdout] test config::validator::tests::test_validator_detects_incompatible_opt_level_and_budget ... ok [INFO] [stdout] test config::validator::tests::test_validator_detects_invalid_wasm_opt_for_target ... ok [INFO] [stdout] test config::validator::tests::test_validator_handles_missing_fields_gracefully ... ok [INFO] [stdout] test config::validator::tests::test_validator_registry_runs_all_validators ... ok [INFO] [stdout] test config::validator::tests::test_validator_with_multiple_constraint_violations ... ok [INFO] [stdout] test config::validator::tests::test_validator_with_partial_cross_field_data ... ok [INFO] [stdout] test config::wasm_config::tests::test_wasm_bindgen_config_default_disables_debug ... ok [INFO] [stdout] test config::wasm_config::tests::test_wasm_bindgen_config_default_has_empty_flags ... ok [INFO] [stdout] test config::wasm_config::tests::test_wasm_bindgen_config_default_removes_producers ... ok [INFO] [stdout] test config::wasm_config::tests::test_wasm_opt_config_default_has_expected_flags ... ok [INFO] [stdout] test config::wasm_config::tests::test_wasm_opt_config_default_includes_bulk_memory ... ok [INFO] [stdout] test config::wasm_config::tests::test_wasm_opt_config_default_includes_sign_ext ... ok [INFO] [stdout] test error::tests::test_all_error_variants_have_exit_codes ... ok [INFO] [stdout] test error::tests::test_all_error_variants_have_suggestions ... ok [INFO] [stdout] test error::tests::test_budget_exceeded_has_actionable_suggestion ... ok [INFO] [stdout] test error::tests::test_build_failed_generic_error ... ok [INFO] [stdout] test error::tests::test_build_failed_with_missing_target ... ok [INFO] [stdout] test error::tests::test_config_not_found_has_suggestion ... ok [INFO] [stdout] test error::tests::test_exit_codes_follow_conventions ... ok [INFO] [stdout] test error::tests::test_file_not_found_has_context ... ok [INFO] [stdout] test error::tests::test_invalid_analysis_mode_lists_valid_modes ... ok [INFO] [stdout] test error::tests::test_invalid_template_lists_alternatives ... ok [INFO] [stdout] test error::tests::test_io_error_has_context ... ok [INFO] [stdout] test error::tests::test_pipeline_error_accessor ... ok [INFO] [stdout] test error::tests::test_pipeline_error_has_suggestion ... ok [INFO] [stdout] test error::tests::test_pipeline_error_with_wasm_target_has_install_suggestion ... ok [INFO] [stdout] test error::tests::test_tool_missing_has_suggestion ... ok [INFO] [stdout] test error::tests::test_wasm_file_required_has_usage_hint ... ok [INFO] [stdout] test fmt::tests::test_format_bytes_various_sizes ... ok [INFO] [stdout] test git::tests::test_get_branch_name_consistency ... ok [INFO] [stdout] test config::file::tests::test_config_file_load_with_unreadable_file_returns_error ... FAILED [INFO] [stdout] test config::file::tests::test_config_file_resolve_template_with_invalid_name_returns_error ... ok [INFO] [stdout] test git::tests::test_get_branch_name_in_new_repo_no_commits ... ok [INFO] [stdout] test config::loader::tests::test_save_with_write_error_returns_error ... ok [INFO] [stdout] test config::file::tests::test_config_file_save_with_readonly_directory_returns_error ... FAILED [INFO] [stdout] test config::loader::tests::test_loader_with_permission_error_returns_error ... ok [INFO] [stdout] test config::resolver::tests::test_resolver_with_invalid_template_name_returns_error ... ok [INFO] [stdout] test config::loader::tests::test_loader_with_invalid_toml_returns_error ... ok [INFO] [stdout] test git::tests::test_get_branch_name_format_validation ... ok [INFO] [stdout] test git::tests::test_get_branch_name_with_special_characters ... ok [INFO] [stdout] test git::tests::test_get_commit_hash_success ... ok [INFO] [stdout] test git::tests::test_get_commit_hash_with_full_hash ... ok [INFO] [stdout] test git::tests::test_get_commit_hash_with_short_hash ... ok [INFO] [stdout] test git::tests::test_get_branch_name_detached_head_returns_head ... ok [INFO] [stdout] test git::tests::test_get_branch_name_success ... ok [INFO] [stdout] test git::tests::test_git_functions_outside_repository ... ok [INFO] [stdout] test [INFO] [stdout] test [INFO] [stdout] test infra::tests::test_real_command_executor_clone ... ok [INFO] [stdout] test git::tests::test_get_commit_hash_handles_detached_head ... ok [INFO] [stdout] test git::tests::test_get_branch_name_returns_option ... ok [INFO] [stdout] test git::tests::test_get_commit_hash_consistency ... ok [INFO] [stdout] test git::tests::test_get_commit_hash_returns_option ... ok [INFO] [stdout] test infra::tests::test_real_command_executor_execute_with_builder ... ok [INFO] [stdout] test infra::tests::test_real_filesystem_clone ... ok [INFO] [stdout] test [INFO] [stdout] test infra::tests::test_real_command_executor_nonexistent_command_returns_error ... ok [INFO] [stdout] test infra::tests::test_real_command_executor_failed_command_returns_non_success ... ok [INFO] [stdout] test infra::tests::test_real_filesystem_copy ... ok [INFO] [stdout] test infra::tests::test_real_command_executor_status_success ... ok [INFO] [stdout] test_arg [INFO] [stdout] test infra::tests::test_real_filesystem_copy_nonexistent_file_returns_error ... ok [INFO] [stdout] test infra::tests::test_real_command_executor_run_with_builder ... ok [INFO] [stdout] test infra::tests::test_real_filesystem_create_dir_all ... ok [INFO] [stdout] test infra::tests::test_real_filesystem_metadata ... ok [INFO] [stdout] test infra::tests::test_real_command_executor_output_captures_stdout ... ok [INFO] [stdout] test infra::tests::test_real_filesystem_read_dir ... ok [INFO] [stdout] test optimizer::backup::tests::concurrency::test_backup_error_copy_file_display ... ok [INFO] [stdout] test infra::tests::test_real_filesystem_read_nonexistent_file_returns_error ... ok [INFO] [stdout] test optimizer::backup::tests::basic_operations::test_format_timestamp_generates_valid_format ... ok [INFO] [stdout] test optimizer::backup::tests::concurrency::test_backup_error_copy_file_variant ... ok [INFO] [stdout] test optimizer::backup::tests::concurrency::test_format_timestamp_contains_expected_separators ... ok [INFO] [stdout] test optimizer::backup::tests::concurrency::test_backup_manager_new_with_temp_dir ... ok [INFO] [stdout] test optimizer::backup::tests::concurrency::test_backup_manager_backup_dir_stored_correctly ... ok [INFO] [stdout] test optimizer::backup::tests::concurrency::test_format_timestamp_has_correct_format ... ok [INFO] [stdout] test optimizer::backup::tests::concurrency::test_format_timestamp_returns_nonempty_string ... ok [INFO] [stdout] test optimizer::backup::tests::error_handling::test_create_backup_after_previous_failure_succeeds ... ok [INFO] [stdout] test optimizer::backup::tests::error_handling::test_create_backup_with_invalid_filename_returns_error ... ok [INFO] [stdout] test optimizer::backup::tests::error_handling::test_create_backup_with_missing_source_returns_error ... ok [INFO] [stdout] test optimizer::build_std::tests::test_build_std_config_minimal_enables_feature ... ok [INFO] [stdout] test optimizer::backup::tests::error_handling::test_create_backup_with_nonexistent_source_returns_error ... ok [INFO] [stdout] test optimizer::build_std::tests::test_build_std_config_with_ssr_includes_target_and_rustflags ... ok [INFO] [stdout] test optimizer::build_std::tests::test_invalid_toml_structure_returns_error ... ok [INFO] [stdout] test optimizer::backup::tests::error_handling::test_create_backup_with_readonly_backup_dir_returns_error ... FAILED [INFO] [stdout] test optimizer::build_std::tests::test_build_std_config_default_has_expected_values ... ok [INFO] [stdout] test optimizer::build_std::tests::test_optimizer_creates_config_toml_with_build_std ... ok [INFO] [stdout] test optimizer::build_std::tests::test_optimizer_disabled_config_returns_no_changes ... ok [INFO] [stdout] test infra::tests::test_real_filesystem_write_and_read ... ok [INFO] [stdout] test optimizer::build_std::tests::test_optimizer_is_configured_returns_false_when_missing ... ok [INFO] [stdout] test optimizer::build_std::tests::test_optimizer_is_configured_detects_existing_setup ... ok [INFO] [stdout] test optimizer::build_std::tests::test_optimizer_with_ssr_adds_build_section ... ok [INFO] [stdout] test optimizer::build_std::tests::test_optimizer_preserves_existing_config ... ok [INFO] [stdout] test optimizer::build_std::tests::test_build_section_invalid_structure_returns_error ... ok [INFO] [stdout] test optimizer::cargo::cargo_analyzer::tests::test_is_wasm_crate_with_wasm_bindgen_returns_true ... ok [INFO] [stdout] test optimizer::cargo::cargo_analyzer::tests::test_is_wasm_crate_without_indicators_returns_false ... ok [INFO] [stdout] test optimizer::cargo::cargo_file_finder::tests::test_find_cargo_tomls_with_root_cargo_toml ... ok [INFO] [stdout] test optimizer::build_std::tests::test_optimizer_dry_run_does_not_modify_files ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_dry_run_does_not_modify_file ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_dry_run_no_backup_created ... ok [INFO] [stdout] test optimizer::build_std::tests::test_toml_parse_error_returns_error ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_default_creates_editor ... ok [INFO] [stdout] test optimizer::cargo::cargo_file_finder::tests::test_find_cargo_tomls_in_empty_directory_returns_empty_list ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_edit_toml_with_inline_comments ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_edit_toml_with_mixed_indentation ... ok [INFO] [stdout] test optimizer::cargo::cargo_analyzer::tests::test_is_wasm_crate_with_wasm_pack_metadata_returns_true ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_edit_toml_preserves_formatting ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_edit_toml_with_windows_line_endings ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_optimize_empty_file ... ok [INFO] [stdout] test optimizer::backup::tests::concurrency::test_create_backup_with_concurrent_requests_creates_unique_filenames ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_optimize_file_with_only_package ... ok [INFO] [stdout] test optimizer::build_std::tests::test_readonly_directory_returns_io_error ... FAILED [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_optimize_minimal_file_adds_optimizations ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_optimize_nonexistent_file_returns_error ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_optimize_returns_changes_list ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_optimize_updates_different_wasm_opt_flags ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_optimize_with_existing_profile_release ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_optimize_with_invalid_toml_returns_error ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_optimize_preserves_existing_panic ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_optimize_with_codegen_units_already_set ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_optimize_with_matching_opt_level_string ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_optimize_with_multiple_profiles ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_optimize_skips_wasm_opt_when_none ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_optimize_with_existing_wasm_pack_profile ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_optimize_with_opt_level_as_integer ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_optimize_with_lto_already_set ... ok [INFO] [stdout] test optimizer::tests::test_optimization_configs_default_have_expected_values ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_optimize_with_wasm_pack_profile ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_optimize_with_panic_setting ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_optimize_with_strip_already_set ... ok [INFO] [stdout] test pipeline::build_orchestrator::integration_tests::test_orchestrator_runs_wasm_opt_when_enabled_and_available ... ok [INFO] [stdout] test optimizer::cargo::cargo_toml_editor::tests::test_with_fs_creates_editor ... ok [INFO] [stdout] test pipeline::build_orchestrator::integration_tests::test_orchestrator_runs_wasm_snip_when_enabled_and_available ... ok [INFO] [stdout] test optimizer::tests::test_optimizer_module_exports_are_accessible ... ok [INFO] [stdout] test pipeline::build_orchestrator::tests::test_build_with_toolchain_structure ... ok [INFO] [stdout] test pipeline::build_orchestrator::tests::test_concurrent_builds ... ok [INFO] [stdout] test pipeline::build_orchestrator::tests::test_orchestrator_respects_config_flags ... ok [INFO] [stdout] test pipeline::build_orchestrator::tests::test_orchestrator_stores_config ... ok [INFO] [stdout] test pipeline::build_orchestrator::integration_tests::test_orchestrator_tracks_size_changes_through_pipeline ... ok [INFO] [stdout] test pipeline::build_orchestrator::integration_tests::test_orchestrator_skips_wasm_snip_when_disabled ... ok [INFO] [stdout] test pipeline::build_orchestrator::integration_tests::test_orchestrator_skips_wasm_opt_when_disabled ... ok [INFO] [stdout] test pipeline::build_orchestrator::integration_tests::test_orchestrator_with_failed_cargo_stops_pipeline ... ok [INFO] [stdout] test pipeline::config::tests::test_bindgen_target_default ... ok [INFO] [stdout] test pipeline::config::tests::test_bindgen_target_equality ... ok [INFO] [stdout] test pipeline::config::tests::test_pipeline_config_custom_target_dir ... ok [INFO] [stdout] test pipeline::config::tests::test_pipeline_config_default_values ... ok [INFO] [stdout] test pipeline::config::tests::test_wasm_opt_level_as_arg ... ok [INFO] [stdout] test pipeline::config::tests::test_wasm_target_as_str_all_variants ... ok [INFO] [stdout] test pipeline::config::tests::test_wasm_target_default ... ok [INFO] [stdout] test pipeline::config::tests::test_wasm_target_equality ... ok [INFO] [stdout] test pipeline::executor::tests::test_new_pipeline_creates_orchestrator ... ok [INFO] [stdout] test pipeline::executor::tests::test_new_pipeline_with_custom_config ... ok [INFO] [stdout] test pipeline::executor::tests::test_pipeline_default_bindgen_target_is_web ... ok [INFO] [stdout] test pipeline::executor::tests::test_pipeline_default_opt_level_is_oz ... ok [INFO] [stdout] test pipeline::executor::tests::test_pipeline_default_target_is_wasm32_unknown_unknown ... ok [INFO] [stdout] test pipeline::executor::tests::test_pipeline_with_custom_bindgen_target ... ok [INFO] [stdout] test pipeline::executor::tests::test_pipeline_with_wasm_snip_disabled ... ok [INFO] [stdout] test pipeline::executor::tests::test_pipeline_with_wasm_snip_enabled ... ok [INFO] [stdout] test pipeline::result_formatter::tests::test_format_with_99_percent_reduction ... ok [INFO] [stdout] test pipeline::result_formatter::tests::test_format_with_exact_half_reduction ... ok [INFO] [stdout] test pipeline::result_formatter::tests::test_format_with_extremely_large_numbers ... ok [INFO] [stdout] test pipeline::result_formatter::tests::test_format_with_one_byte ... ok [INFO] [stdout] test pipeline::result_formatter::tests::test_format_with_size_increase ... ok [INFO] [stdout] test pipeline::config::tests::test_bindgen_target_as_str_all_variants ... ok [INFO] [stdout] test pipeline::result_formatter::tests::test_format_with_unicode_content ... ok [INFO] [stdout] test pipeline::config::tests::test_pipeline_config_builder_pattern ... ok [INFO] [stdout] test pipeline::result_formatter::tests::test_format_with_very_small_sizes ... ok [INFO] [stdout] test pipeline::config::tests::test_pipeline_config_clone ... ok [INFO] [stdout] test pipeline::config::tests::test_pipeline_config_custom_profile ... ok [INFO] [stdout] test pipeline::result_formatter::tests::test_format_with_zero_before_size ... ok [INFO] [stdout] test pipeline::result_formatter::tests::test_format_with_zero_reduction ... ok [INFO] [stdout] test pipeline::result_formatter::tests::test_result_formatter_exists ... ok [INFO] [stdout] test pipeline::telemetry::tests::test_memory_collector_clear_removes_all_data ... ok [INFO] [stdout] test pipeline::telemetry::tests::test_memory_collector_records_events ... ok [INFO] [stdout] test pipeline::telemetry::tests::test_build_event_equality ... ok [INFO] [stdout] test pipeline::telemetry::tests::test_memory_collector_records_metrics ... ok [INFO] [stdout] test pipeline::telemetry::tests::test_metric_data_new_creates_with_timestamp ... ok [INFO] [stdout] test pipeline::telemetry::tests::test_metric_data_with_tag_adds_tags ... ok [INFO] [stdout] test pipeline::telemetry::tests::test_noop_collector_does_nothing ... ok [INFO] [stdout] test pipeline::telemetry::tests::test_record_duration_creates_correct_metric ... ok [INFO] [stdout] test pipeline::telemetry::tests::test_stdout_collector_does_not_panic ... ok [INFO] [stdout] test pipeline::telemetry::tests::test_telemetry_with_invalid_data_handles_gracefully ... ok [INFO] [stdout] test pipeline::tests::test_format_bytes_at_unit_boundaries_formats_correctly ... ok [INFO] [stdout] test pipeline::tests::test_format_bytes_with_fractional_kb_shows_precision ... ok [INFO] [stdout] test pipeline::tests::test_format_bytes_with_gigabyte_sizes_formats_as_megabytes ... ok [INFO] [stdout] test pipeline::tests::test_pipeline_config_with_custom_values_sets_correctly ... ok [INFO] [stdout] test pipeline::tests::test_pipeline_config_default_has_expected_values ... ok [INFO] [stdout] test pipeline::tests::test_pipeline_config_with_empty_strings_sets_correctly ... ok [INFO] [stdout] test pipeline::tests::test_format_bytes_converts_to_readable_units ... ok [INFO] [stdout] test pipeline::tests::test_size_metrics_calculates_reduction_correctly ... ok [INFO] [stdout] test pipeline::telemetry::tests::test_record_size_creates_correct_metric ... ok [INFO] [stdout] test pipeline::telemetry::tests::test_memory_collector_handles_concurrent_events ... ok [INFO] [stdout] test pipeline::tests::test_size_metrics_with_large_values_above_1gb_calculates_correctly ... ok [INFO] [stdout] test pipeline::tests::test_size_metrics_reduction_percent_precision ... ok [INFO] [stdout] test pipeline::tests::test_pipeline_config_with_special_characters_in_paths ... ok [INFO] [stdout] test pipeline::tests::test_size_metrics_with_no_change_returns_zero_reduction ... ok [INFO] [stdout] test pipeline::tests::test_size_metrics_with_zero_before_size_handles_division_by_zero ... ok [INFO] [stdout] test pipeline::tests::test_size_metrics_with_size_increase_returns_negative_reduction ... ok [INFO] [stdout] test pipeline::tests::test_size_metrics_with_large_values_near_i64_max ... ok [INFO] [stdout] test pipeline::tests::test_wasm_opt_level_all_variants_have_correct_args ... ok [INFO] [stdout] test pipeline::tests::test_wasm_opt_level_returns_correct_arguments ... ok [INFO] [stdout] test pipeline::tool_runner::tests::test_cargo_build_with_no_wasm_files_returns_file_not_found ... ok [INFO] [stdout] test pipeline::tool_runner::tests::test_cargo_build_with_non_zero_exit_returns_build_failed ... ok [INFO] [stdout] test pipeline::tool_runner::tests::test_cargo_build_with_nonexistent_tool_returns_error ... ok [INFO] [stdout] test pipeline::tool_runner::tests::test_run_wasm_bindgen_with_non_zero_exit_returns_tool_failed ... ok [INFO] [stdout] test pipeline::tool_runner::tests::test_run_wasm_opt_with_non_zero_exit_returns_tool_failed ... ok [INFO] [stdout] test pipeline::tool_runner::tests::test_run_wasm_opt_with_success_returns_ok ... ok [INFO] [stdout] test pipeline::tool_runner::tests::test_run_wasm_snip_with_non_zero_exit_returns_tool_failed ... ok [INFO] [stdout] test pipeline::tool_runner::tests::test_tool_runner_stores_config ... ok [INFO] [stdout] test pipeline::tool_runner::tests::test_run_wasm_snip_with_success_returns_ok ... ok [INFO] [stdout] test toolchain::tests::test_is_nightly_toolchain_detects_nightly ... ok [INFO] [stdout] test tools::tests::test_cargo_check_with_installed_tool_returns_true ... ok [INFO] [stdout] test toolchain::tests::test_is_nightly_toolchain_detects_stable ... ok [INFO] [stdout] test tools::tests::test_check_all_with_all_tools_available ... ok [INFO] [stdout] test tools::tests::test_check_all_with_missing_required_returns_error ... ok [INFO] [stdout] test tools::tests::test_tool_check_with_installed_tool_returns_available_status_mock ... ok [INFO] [stdout] test tools::tests::test_tool_check_with_nonexistent_binary_returns_missing_status ... ok [INFO] [stdout] test tools::tests::test_tool_version_extracts_first_line_only ... ok [INFO] [stdout] test tools::tests::test_tool_is_installed_with_nonexistent_binary_returns_false ... ok [INFO] [stdout] test tools::tests::test_tool_version_with_failed_command_returns_error ... ok [INFO] [stdout] test tools::tests::test_tool_version_with_io_error_returns_error ... ok [INFO] [stdout] test tools::tests::test_tool_version_with_mocked_executor_returns_version ... ok [INFO] [stdout] test tools::tests::test_tool_version_with_valid_tool_returns_parseable_version_mock ... ok [INFO] [stdout] test tools::tests::test_toolchain_new_creates_with_default_tools ... ok [INFO] [stdout] test tools::tests::test_toolchain_required_tools_are_marked_correctly ... ok [INFO] [stdout] test tools::tests::test_check_required_with_all_required_tools_present_succeeds ... ok [INFO] [stdout] test tools::tests::test_tool_version_with_binary_no_version_flag_succeeds_gracefully ... ok [INFO] [stdout] test tools::tests::test_check_required_with_missing_required_tool_returns_error ... ok [INFO] [stdout] test pipeline::build_orchestrator::tests::test_orchestrator_creates_with_toolchain ... ok [INFO] [stdout] test cmd::analyze::tests::test_cmd_analyze_with_guide_flag ... ok [INFO] [stdout] test tools::tests::test_check_all_with_missing_optional_tools_succeeds ... ok [INFO] [stdout] test toolchain::tests::test_is_nightly_toolchain_returns_bool ... ok [INFO] [stdout] test git::tests::test_get_commit_hash_format_validation ... ok [INFO] [stdout] test cmd::analyze::tests::test_cmd_analyze_multiple_flags ... ok [INFO] [stdout] test cmd::analyze::tests::test_cmd_analyze_with_dry_run_flag ... ok [INFO] [stdout] test analyzer::deps::edge_case_tests::test_analyze_deps_with_workspace_members ... ok [INFO] [stdout] test cmd::analyze::tests::test_cmd_analyze_with_fix_flag ... ok [INFO] [stdout] test cmd::analyze::tests::test_cmd_analyze_with_json_flag ... ok [INFO] [stdout] test cicd::history::tests::test_build_history_add_record_maintains_max_records_limit ... ok [INFO] [stdout] test cmd::analyze::tests::test_cmd_analyze_valid_modes ... ok [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] [INFO] [stdout] ---- config::file::tests::test_config_file_load_with_unreadable_file_returns_error stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'config::file::tests::test_config_file_load_with_unreadable_file_returns_error' (542) panicked at src/config/file.rs:381:9: [INFO] [stdout] assertion failed: result.is_err() [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5b6a2b6d866a - std[31e582c13f4e914f]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5b6a2b6d866a - std[31e582c13f4e914f]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5b6a2b6d866a - std[31e582c13f4e914f]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x5b6a2b6d866a - <::print::DisplayBacktrace as core[fa0eadad68403074]::fmt::Display>::fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x5b6a2b6f090a - ::fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x5b6a2b6f090a - core[fa0eadad68403074]::fmt::write [INFO] [stdout] 6: 0x5b6a2b6ddbd2 - std[31e582c13f4e914f]::io::default_write_fmt::> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5b6a2b6ddbd2 - as std[31e582c13f4e914f]::io::Write>::write_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x5b6a2b6b31bf - ::print [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x5b6a2b6b31bf - std[31e582c13f4e914f]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x5b6a2b6cec99 - std[31e582c13f4e914f]::panicking::default_hook [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x5b6a2b0c581c - core[fa0eadad68403074]::ops::function::Fn<(&'a std[31e582c13f4e914f]::panic::PanicHookInfo<'b>,), Output = ()> + core[fa0eadad68403074]::marker::Sync + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::Fn<(&std[31e582c13f4e914f]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 12: 0x5b6a2b0c581c - test[7530e63dc052480e]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5b6a2b6cef12 - core[fa0eadad68403074]::ops::function::Fn<(&'a std[31e582c13f4e914f]::panic::PanicHookInfo<'b>,), Output = ()> + core[fa0eadad68403074]::marker::Sync + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::Fn<(&std[31e582c13f4e914f]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 14: 0x5b6a2b6cef12 - std[31e582c13f4e914f]::panicking::panic_with_hook [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x5b6a2b6b32aa - std[31e582c13f4e914f]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:691:13 [INFO] [stdout] 16: 0x5b6a2b6a7ba9 - std[31e582c13f4e914f]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x5b6a2b6b410d - __rustc[fc8e3a9f23f26cb]::rust_begin_unwind [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x5b6a2b6f114c - core[fa0eadad68403074]::panicking::panic_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x5b6a2b6f1112 - core[fa0eadad68403074]::panicking::panic [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panicking.rs:150:5 [INFO] [stdout] 20: 0x5b6a2b030576 - wasm_slim[b8c7113e46e09f4c]::config::file::tests::test_config_file_load_with_unreadable_file_returns_error [INFO] [stdout] at /opt/rustwide/workdir/src/config/file.rs:381:9 [INFO] [stdout] 21: 0x5b6a2b01f9b7 - wasm_slim[b8c7113e46e09f4c]::config::file::tests::test_config_file_load_with_unreadable_file_returns_error::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/config/file.rs:357:66 [INFO] [stdout] 22: 0x5b6a2af84026 - >::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x5b6a2b0b98fb - core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 24: 0x5b6a2b0b98fb - test[7530e63dc052480e]::__rust_begin_short_backtrace::, fn() -> core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:663:18 [INFO] [stdout] 25: 0x5b6a2b0c62eb - test[7530e63dc052480e]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:686:74 [INFO] [stdout] 26: 0x5b6a2b0c62eb - as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 27: 0x5b6a2b0c62eb - std[31e582c13f4e914f]::panicking::catch_unwind::do_call::, core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:581:40 [INFO] [stdout] 28: 0x5b6a2b0c62eb - std[31e582c13f4e914f]::panicking::catch_unwind::, core[fa0eadad68403074]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:544:19 [INFO] [stdout] 29: 0x5b6a2b0c62eb - std[31e582c13f4e914f]::panic::catch_unwind::, core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panic.rs:359:14 [INFO] [stdout] 30: 0x5b6a2b0c62eb - test[7530e63dc052480e]::run_test_in_process [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:686:27 [INFO] [stdout] 31: 0x5b6a2b0c62eb - test[7530e63dc052480e]::run_test::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:607:43 [INFO] [stdout] 32: 0x5b6a2b0c0744 - test[7530e63dc052480e]::run_test::{closure#1} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:637:41 [INFO] [stdout] 33: 0x5b6a2b0c0744 - std[31e582c13f4e914f]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 34: 0x5b6a2b0c8ef2 - std[31e582c13f4e914f]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 35: 0x5b6a2b0c8ef2 - ::{closure#1}::{closure#0}> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 36: 0x5b6a2b0c8ef2 - std[31e582c13f4e914f]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:581:40 [INFO] [stdout] 37: 0x5b6a2b0c8ef2 - std[31e582c13f4e914f]::panicking::catch_unwind::<(), core[fa0eadad68403074]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:544:19 [INFO] [stdout] 38: 0x5b6a2b0c8ef2 - std[31e582c13f4e914f]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panic.rs:359:14 [INFO] [stdout] 39: 0x5b6a2b0c8ef2 - std[31e582c13f4e914f]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 40: 0x5b6a2b0c8ef2 - ::{closure#1} as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 41: 0x5b6a2b6d796f - + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2240:9 [INFO] [stdout] 42: 0x5b6a2b6d796f - ::new::thread_start [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/thread/unix.rs:118:17 [INFO] [stdout] 43: 0x73e36837baa4 - [INFO] [stdout] 44: 0x73e368408a64 - clone [INFO] [stdout] 45: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- config::file::tests::test_config_file_save_with_readonly_directory_returns_error stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'config::file::tests::test_config_file_save_with_readonly_directory_returns_error' (546) panicked at src/config/file.rs:288:9: [INFO] [stdout] assertion failed: result.is_err() [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5b6a2b6d866a - std[31e582c13f4e914f]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5b6a2b6d866a - std[31e582c13f4e914f]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5b6a2b6d866a - std[31e582c13f4e914f]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x5b6a2b6d866a - <::print::DisplayBacktrace as core[fa0eadad68403074]::fmt::Display>::fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x5b6a2b6f090a - ::fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x5b6a2b6f090a - core[fa0eadad68403074]::fmt::write [INFO] [stdout] 6: 0x5b6a2b6ddbd2 - std[31e582c13f4e914f]::io::default_write_fmt::> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5b6a2b6ddbd2 - as std[31e582c13f4e914f]::io::Write>::write_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x5b6a2b6b31bf - ::print [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x5b6a2b6b31bf - std[31e582c13f4e914f]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x5b6a2b6cec99 - std[31e582c13f4e914f]::panicking::default_hook [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x5b6a2b0c581c - core[fa0eadad68403074]::ops::function::Fn<(&'a std[31e582c13f4e914f]::panic::PanicHookInfo<'b>,), Output = ()> + core[fa0eadad68403074]::marker::Sync + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::Fn<(&std[31e582c13f4e914f]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 12: 0x5b6a2b0c581c - test[7530e63dc052480e]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5b6a2b6cef12 - core[fa0eadad68403074]::ops::function::Fn<(&'a std[31e582c13f4e914f]::panic::PanicHookInfo<'b>,), Output = ()> + core[fa0eadad68403074]::marker::Sync + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::Fn<(&std[31e582c13f4e914f]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 14: 0x5b6a2b6cef12 - std[31e582c13f4e914f]::panicking::panic_with_hook [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x5b6a2b6b32aa - std[31e582c13f4e914f]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:691:13 [INFO] [stdout] 16: 0x5b6a2b6a7ba9 - std[31e582c13f4e914f]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x5b6a2b6b410d - __rustc[fc8e3a9f23f26cb]::rust_begin_unwind [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x5b6a2b6f114c - core[fa0eadad68403074]::panicking::panic_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x5b6a2b6f1112 - core[fa0eadad68403074]::panicking::panic [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panicking.rs:150:5 [INFO] [stdout] 20: 0x5b6a2b03135e - wasm_slim[b8c7113e46e09f4c]::config::file::tests::test_config_file_save_with_readonly_directory_returns_error [INFO] [stdout] at /opt/rustwide/workdir/src/config/file.rs:288:9 [INFO] [stdout] 21: 0x5b6a2b01fa47 - wasm_slim[b8c7113e46e09f4c]::config::file::tests::test_config_file_save_with_readonly_directory_returns_error::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/config/file.rs:268:69 [INFO] [stdout] 22: 0x5b6a2af840e6 - >::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x5b6a2b0b98fb - core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 24: 0x5b6a2b0b98fb - test[7530e63dc052480e]::__rust_begin_short_backtrace::, fn() -> core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:663:18 [INFO] [stdout] 25: 0x5b6a2b0c62eb - test[7530e63dc052480e]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:686:74 [INFO] [stdout] 26: 0x5b6a2b0c62eb - as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 27: 0x5b6a2b0c62eb - std[31e582c13f4e914f]::panicking::catch_unwind::do_call::, core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:581:40 [INFO] [stdout] 28: 0x5b6a2b0c62eb - std[31e582c13f4e914f]::panicking::catch_unwind::, core[fa0eadad68403074]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:544:19 [INFO] [stdout] 29: 0x5b6a2b0c62eb - std[31e582c13f4e914f]::panic::catch_unwind::, core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panic.rs:359:14 [INFO] [stdout] 30: 0x5b6a2b0c62eb - test[7530e63dc052480e]::run_test_in_process [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:686:27 [INFO] [stdout] 31: 0x5b6a2b0c62eb - test[7530e63dc052480e]::run_test::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:607:43 [INFO] [stdout] 32: 0x5b6a2b0c0744 - test[7530e63dc052480e]::run_test::{closure#1} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:637:41 [INFO] [stdout] 33: 0x5b6a2b0c0744 - std[31e582c13f4e914f]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 34: 0x5b6a2b0c8ef2 - std[31e582c13f4e914f]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 35: 0x5b6a2b0c8ef2 - ::{closure#1}::{closure#0}> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 36: 0x5b6a2b0c8ef2 - std[31e582c13f4e914f]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:581:40 [INFO] [stdout] 37: 0x5b6a2b0c8ef2 - std[31e582c13f4e914f]::panicking::catch_unwind::<(), core[fa0eadad68403074]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:544:19 [INFO] [stdout] 38: 0x5b6a2b0c8ef2 - std[31e582c13f4e914f]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panic.rs:359:14 [INFO] [stdout] 39: 0x5b6a2b0c8ef2 - std[31e582c13f4e914f]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 40: 0x5b6a2b0c8ef2 - ::{closure#1} as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 41: 0x5b6a2b6d796f - + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2240:9 [INFO] [stdout] 42: 0x5b6a2b6d796f - ::new::thread_start [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/thread/unix.rs:118:17 [INFO] [stdout] 43: 0x73e36837baa4 - [INFO] [stdout] 44: 0x73e368408a64 - clone [INFO] [stdout] 45: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- optimizer::backup::tests::error_handling::test_create_backup_with_readonly_backup_dir_returns_error stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'optimizer::backup::tests::error_handling::test_create_backup_with_readonly_backup_dir_returns_error' (744) panicked at src/optimizer/backup.rs:227:13: [INFO] [stdout] assertion failed: result.is_err() [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5b6a2b6d866a - std[31e582c13f4e914f]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5b6a2b6d866a - std[31e582c13f4e914f]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5b6a2b6d866a - std[31e582c13f4e914f]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x5b6a2b6d866a - <::print::DisplayBacktrace as core[fa0eadad68403074]::fmt::Display>::fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x5b6a2b6f090a - ::fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x5b6a2b6f090a - core[fa0eadad68403074]::fmt::write [INFO] [stdout] 6: 0x5b6a2b6ddbd2 - std[31e582c13f4e914f]::io::default_write_fmt::> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5b6a2b6ddbd2 - as std[31e582c13f4e914f]::io::Write>::write_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x5b6a2b6b31bf - ::print [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x5b6a2b6b31bf - std[31e582c13f4e914f]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x5b6a2b6cec99 - std[31e582c13f4e914f]::panicking::default_hook [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x5b6a2b0c581c - core[fa0eadad68403074]::ops::function::Fn<(&'a std[31e582c13f4e914f]::panic::PanicHookInfo<'b>,), Output = ()> + core[fa0eadad68403074]::marker::Sync + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::Fn<(&std[31e582c13f4e914f]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 12: 0x5b6a2b0c581c - test[7530e63dc052480e]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5b6a2b6cef12 - core[fa0eadad68403074]::ops::function::Fn<(&'a std[31e582c13f4e914f]::panic::PanicHookInfo<'b>,), Output = ()> + core[fa0eadad68403074]::marker::Sync + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::Fn<(&std[31e582c13f4e914f]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 14: 0x5b6a2b6cef12 - std[31e582c13f4e914f]::panicking::panic_with_hook [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x5b6a2b6b32aa - std[31e582c13f4e914f]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:691:13 [INFO] [stdout] 16: 0x5b6a2b6a7ba9 - std[31e582c13f4e914f]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x5b6a2b6b410d - __rustc[fc8e3a9f23f26cb]::rust_begin_unwind [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x5b6a2b6f114c - core[fa0eadad68403074]::panicking::panic_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x5b6a2b6f1112 - core[fa0eadad68403074]::panicking::panic [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panicking.rs:150:5 [INFO] [stdout] 20: 0x5b6a2b044bd1 - wasm_slim[b8c7113e46e09f4c]::optimizer::backup::tests::error_handling::test_create_backup_with_readonly_backup_dir_returns_error [INFO] [stdout] at /opt/rustwide/workdir/src/optimizer/backup.rs:227:13 [INFO] [stdout] 21: 0x5b6a2b020917 - wasm_slim[b8c7113e46e09f4c]::optimizer::backup::tests::error_handling::test_create_backup_with_readonly_backup_dir_returns_error::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/optimizer/backup.rs:200:71 [INFO] [stdout] 22: 0x5b6a2af8af66 - >::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x5b6a2b0b98fb - core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 24: 0x5b6a2b0b98fb - test[7530e63dc052480e]::__rust_begin_short_backtrace::, fn() -> core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:663:18 [INFO] [stdout] 25: 0x5b6a2b0c62eb - test[7530e63dc052480e]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:686:74 [INFO] [stdout] 26: 0x5b6a2b0c62eb - as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 27: 0x5b6a2b0c62eb - std[31e582c13f4e914f]::panicking::catch_unwind::do_call::, core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:581:40 [INFO] [stdout] 28: 0x5b6a2b0c62eb - std[31e582c13f4e914f]::panicking::catch_unwind::, core[fa0eadad68403074]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:544:19 [INFO] [stdout] 29: 0x5b6a2b0c62eb - std[31e582c13f4e914f]::panic::catch_unwind::, core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panic.rs:359:14 [INFO] [stdout] 30: 0x5b6a2b0c62eb - test[7530e63dc052480e]::run_test_in_process [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:686:27 [INFO] [stdout] 31: 0x5b6a2b0c62eb - test[7530e63dc052480e]::run_test::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:607:43 [INFO] [stdout] 32: 0x5b6a2b0c0744 - test[7530e63dc052480e]::run_test::{closure#1} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:637:41 [INFO] [stdout] 33: 0x5b6a2b0c0744 - std[31e582c13f4e914f]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 34: 0x5b6a2b0c8ef2 - std[31e582c13f4e914f]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 35: 0x5b6a2b0c8ef2 - ::{closure#1}::{closure#0}> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 36: 0x5b6a2b0c8ef2 - std[31e582c13f4e914f]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:581:40 [INFO] [stdout] 37: 0x5b6a2b0c8ef2 - std[31e582c13f4e914f]::panicking::catch_unwind::<(), core[fa0eadad68403074]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:544:19 [INFO] [stdout] 38: 0x5b6a2b0c8ef2 - std[31e582c13f4e914f]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panic.rs:359:14 [INFO] [stdout] 39: 0x5b6a2b0c8ef2 - std[31e582c13f4e914f]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 40: 0x5b6a2b0c8ef2 - ::{closure#1} as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 41: 0x5b6a2b6d796f - + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2240:9 [INFO] [stdout] 42: 0x5b6a2b6d796f - ::new::thread_start [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/thread/unix.rs:118:17 [INFO] [stdout] 43: 0x73e36837baa4 - [INFO] [stdout] 44: 0x73e368408a64 - clone [INFO] [stdout] 45: 0x0 - [INFO] [stdout] [INFO] [stdout] ---- optimizer::build_std::tests::test_readonly_directory_returns_io_error stdout ---- [INFO] [stdout] [INFO] [stdout] thread 'optimizer::build_std::tests::test_readonly_directory_returns_io_error' (762) panicked at src/optimizer/build_std.rs:628:13: [INFO] [stdout] assertion failed: result.is_err() [INFO] [stdout] stack backtrace: [INFO] [stdout] 0: 0x5b6a2b6d866a - std[31e582c13f4e914f]::backtrace_rs::backtrace::libunwind::trace [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9 [INFO] [stdout] 1: 0x5b6a2b6d866a - std[31e582c13f4e914f]::backtrace_rs::backtrace::trace_unsynchronized:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14 [INFO] [stdout] 2: 0x5b6a2b6d866a - std[31e582c13f4e914f]::sys::backtrace::_print_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:74:9 [INFO] [stdout] 3: 0x5b6a2b6d866a - <::print::DisplayBacktrace as core[fa0eadad68403074]::fmt::Display>::fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:44:26 [INFO] [stdout] 4: 0x5b6a2b6f090a - ::fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/fmt/rt.rs:152:76 [INFO] [stdout] 5: 0x5b6a2b6f090a - core[fa0eadad68403074]::fmt::write [INFO] [stdout] 6: 0x5b6a2b6ddbd2 - std[31e582c13f4e914f]::io::default_write_fmt::> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/io/mod.rs:639:11 [INFO] [stdout] 7: 0x5b6a2b6ddbd2 - as std[31e582c13f4e914f]::io::Write>::write_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/io/mod.rs:1994:13 [INFO] [stdout] 8: 0x5b6a2b6b31bf - ::print [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:47:9 [INFO] [stdout] 9: 0x5b6a2b6b31bf - std[31e582c13f4e914f]::panicking::default_hook::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:292:27 [INFO] [stdout] 10: 0x5b6a2b6cec99 - std[31e582c13f4e914f]::panicking::default_hook [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:316:9 [INFO] [stdout] 11: 0x5b6a2b0c581c - core[fa0eadad68403074]::ops::function::Fn<(&'a std[31e582c13f4e914f]::panic::PanicHookInfo<'b>,), Output = ()> + core[fa0eadad68403074]::marker::Sync + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::Fn<(&std[31e582c13f4e914f]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 12: 0x5b6a2b0c581c - test[7530e63dc052480e]::test_main_with_exit_callback::::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:145:21 [INFO] [stdout] 13: 0x5b6a2b6cef12 - core[fa0eadad68403074]::ops::function::Fn<(&'a std[31e582c13f4e914f]::panic::PanicHookInfo<'b>,), Output = ()> + core[fa0eadad68403074]::marker::Sync + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::Fn<(&std[31e582c13f4e914f]::panic::PanicHookInfo,)>>::call [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2254:9 [INFO] [stdout] 14: 0x5b6a2b6cef12 - std[31e582c13f4e914f]::panicking::panic_with_hook [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:833:13 [INFO] [stdout] 15: 0x5b6a2b6b32aa - std[31e582c13f4e914f]::panicking::panic_handler::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:691:13 [INFO] [stdout] 16: 0x5b6a2b6a7ba9 - std[31e582c13f4e914f]::sys::backtrace::__rust_end_short_backtrace:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:182:18 [INFO] [stdout] 17: 0x5b6a2b6b410d - __rustc[fc8e3a9f23f26cb]::rust_begin_unwind [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:689:5 [INFO] [stdout] 18: 0x5b6a2b6f114c - core[fa0eadad68403074]::panicking::panic_fmt [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panicking.rs:80:14 [INFO] [stdout] 19: 0x5b6a2b6f1112 - core[fa0eadad68403074]::panicking::panic [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panicking.rs:150:5 [INFO] [stdout] 20: 0x5b6a2af152fc - wasm_slim[b8c7113e46e09f4c]::optimizer::build_std::tests::test_readonly_directory_returns_io_error [INFO] [stdout] at /opt/rustwide/workdir/src/optimizer/build_std.rs:628:13 [INFO] [stdout] 21: 0x5b6a2aefcac7 - wasm_slim[b8c7113e46e09f4c]::optimizer::build_std::tests::test_readonly_directory_returns_io_error::{closure#0} [INFO] [stdout] at /opt/rustwide/workdir/src/optimizer/build_std.rs:601:50 [INFO] [stdout] 22: 0x5b6a2af89566 - >::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 23: 0x5b6a2b0b98fb - core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 24: 0x5b6a2b0b98fb - test[7530e63dc052480e]::__rust_begin_short_backtrace::, fn() -> core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:663:18 [INFO] [stdout] 25: 0x5b6a2b0c62eb - test[7530e63dc052480e]::run_test_in_process::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:686:74 [INFO] [stdout] 26: 0x5b6a2b0c62eb - as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 27: 0x5b6a2b0c62eb - std[31e582c13f4e914f]::panicking::catch_unwind::do_call::, core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:581:40 [INFO] [stdout] 28: 0x5b6a2b0c62eb - std[31e582c13f4e914f]::panicking::catch_unwind::, core[fa0eadad68403074]::panic::unwind_safe::AssertUnwindSafe> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:544:19 [INFO] [stdout] 29: 0x5b6a2b0c62eb - std[31e582c13f4e914f]::panic::catch_unwind::, core[fa0eadad68403074]::result::Result<(), alloc[49b8922c36ca62de]::string::String>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panic.rs:359:14 [INFO] [stdout] 30: 0x5b6a2b0c62eb - test[7530e63dc052480e]::run_test_in_process [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:686:27 [INFO] [stdout] 31: 0x5b6a2b0c62eb - test[7530e63dc052480e]::run_test::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:607:43 [INFO] [stdout] 32: 0x5b6a2b0c0744 - test[7530e63dc052480e]::run_test::{closure#1} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/test/src/lib.rs:637:41 [INFO] [stdout] 33: 0x5b6a2b0c0744 - std[31e582c13f4e914f]::sys::backtrace::__rust_begin_short_backtrace:: [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/backtrace.rs:166:18 [INFO] [stdout] 34: 0x5b6a2b0c8ef2 - std[31e582c13f4e914f]::thread::lifecycle::spawn_unchecked::::{closure#1}::{closure#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/thread/lifecycle.rs:91:13 [INFO] [stdout] 35: 0x5b6a2b0c8ef2 - ::{closure#1}::{closure#0}> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/panic/unwind_safe.rs:275:9 [INFO] [stdout] 36: 0x5b6a2b0c8ef2 - std[31e582c13f4e914f]::panicking::catch_unwind::do_call::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:581:40 [INFO] [stdout] 37: 0x5b6a2b0c8ef2 - std[31e582c13f4e914f]::panicking::catch_unwind::<(), core[fa0eadad68403074]::panic::unwind_safe::AssertUnwindSafe::{closure#1}::{closure#0}>> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panicking.rs:544:19 [INFO] [stdout] 38: 0x5b6a2b0c8ef2 - std[31e582c13f4e914f]::panic::catch_unwind::::{closure#1}::{closure#0}>, ()> [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/panic.rs:359:14 [INFO] [stdout] 39: 0x5b6a2b0c8ef2 - std[31e582c13f4e914f]::thread::lifecycle::spawn_unchecked::::{closure#1} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/thread/lifecycle.rs:89:26 [INFO] [stdout] 40: 0x5b6a2b0c8ef2 - ::{closure#1} as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/core/src/ops/function.rs:250:5 [INFO] [stdout] 41: 0x5b6a2b6d796f - + core[fa0eadad68403074]::marker::Send> as core[fa0eadad68403074]::ops::function::FnOnce<()>>::call_once [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/alloc/src/boxed.rs:2240:9 [INFO] [stdout] 42: 0x5b6a2b6d796f - ::new::thread_start [INFO] [stdout] at /rustc/562dee4820c458d823175268e41601d4c060588a/library/std/src/sys/thread/unix.rs:118:17 [INFO] [stdout] 43: 0x73e36837baa4 - [INFO] [stdout] 44: 0x73e368408a64 - clone [INFO] [stdout] 45: 0x0 - [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] failures: [INFO] [stdout] config::file::tests::test_config_file_load_with_unreadable_file_returns_error [INFO] [stdout] config::file::tests::test_config_file_save_with_readonly_directory_returns_error [INFO] [stdout] optimizer::backup::tests::error_handling::test_create_backup_with_readonly_backup_dir_returns_error [INFO] [stdout] optimizer::build_std::tests::test_readonly_directory_returns_io_error [INFO] [stdout] [INFO] [stdout] test result: FAILED. 711 passed; 4 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.13s [INFO] [stdout] [INFO] [stderr] error: test failed, to rerun pass `--lib` [INFO] running `Command { std: "docker" "inspect" "a4242dabe58f2ccd55ba25715fc836d98a54a9c12ed80ad75507fb396c69d1a7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a4242dabe58f2ccd55ba25715fc836d98a54a9c12ed80ad75507fb396c69d1a7", kill_on_drop: false }` [INFO] [stdout] a4242dabe58f2ccd55ba25715fc836d98a54a9c12ed80ad75507fb396c69d1a7