[INFO] fetching crate shuck-formatter 0.2.3...
[INFO] testing shuck-formatter-0.2.3 against 1.99.0-beta.8 for beta-1.100-2
[INFO] extracting crate shuck-formatter 0.2.3 into /workspace/builds/worker-2-tc1/source
[INFO] started tweaking crates.io crate shuck-formatter 0.2.3
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate shuck-formatter 0.2.3
[INFO] tweaked toml for crates.io crate shuck-formatter 0.2.3 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate shuck-formatter 0.2.3 on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate shuck-formatter 0.2.3 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded compact_str v0.8.1
[INFO] [stderr]   Downloaded shuck-ast v0.2.3
[INFO] [stderr]   Downloaded digest v0.11.2
[INFO] [stderr]   Downloaded shuck-indexer v0.2.3
[INFO] [stderr]   Downloaded hybrid-array v0.4.10
[INFO] [stderr]   Downloaded rayon v1.11.0
[INFO] [stderr]   Downloaded shuck-semantic v0.2.3
[INFO] [stderr]   Downloaded shuck-parser v0.2.3
[INFO] [stderr]   Downloaded shuck-linter v0.2.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] b0cd6e0f6bcb537cedf7ac4041ae67e349ab4e581512e33082c0174b78a17605
[INFO] running `Command { std: "docker" "start" "b0cd6e0f6bcb537cedf7ac4041ae67e349ab4e581512e33082c0174b78a17605", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b0cd6e0f6bcb537cedf7ac4041ae67e349ab4e581512e33082c0174b78a17605", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b0cd6e0f6bcb537cedf7ac4041ae67e349ab4e581512e33082c0174b78a17605" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b0cd6e0f6bcb537cedf7ac4041ae67e349ab4e581512e33082c0174b78a17605", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b0cd6e0f6bcb537cedf7ac4041ae67e349ab4e581512e33082c0174b78a17605" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling rustversion v1.0.22
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling rustc-hash v2.1.2
[INFO] [stderr]    Compiling castaway v0.2.4
[INFO] [stderr]    Compiling compact_str v0.8.1
[INFO] [stderr]    Compiling shuck-ast v0.2.3
[INFO] [stderr]    Compiling shuck-parser v0.2.3
[INFO] [stderr]    Compiling shuck-indexer v0.2.3
[INFO] [stderr]    Compiling shuck-formatter v0.2.3 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 11.39s
[INFO] running `Command { std: "docker" "inspect" "b0cd6e0f6bcb537cedf7ac4041ae67e349ab4e581512e33082c0174b78a17605", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b0cd6e0f6bcb537cedf7ac4041ae67e349ab4e581512e33082c0174b78a17605" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.20
[INFO] [stderr]    Compiling hashbrown v0.17.0
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling bstr v1.12.1
[INFO] [stderr]    Compiling const-oid v0.10.2
[INFO] [stderr]    Compiling bitflags v2.11.0
[INFO] [stderr]    Compiling similar v2.7.0
[INFO] [stderr]    Compiling shuck-semantic v0.2.3
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling hybrid-array v0.4.10
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling crypto-common v0.2.1
[INFO] [stderr]    Compiling block-buffer v0.12.0
[INFO] [stderr]    Compiling digest v0.11.2
[INFO] [stderr]    Compiling sha2 v0.11.0
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling globset v0.4.18
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling shuck-linter v0.2.3
[INFO] [stderr]    Compiling shuck-formatter v0.2.3 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1m 03s
[INFO] running `Command { std: "docker" "inspect" "b0cd6e0f6bcb537cedf7ac4041ae67e349ab4e581512e33082c0174b78a17605", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b0cd6e0f6bcb537cedf7ac4041ae67e349ab4e581512e33082c0174b78a17605" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/shuck_formatter-ffe030e67a31d777)
[INFO] [stdout] 
[INFO] [stdout] running 71 tests
[INFO] [stdout] test comments::tests::source_map_can_skip_alignment_only_indexes ... ok
[INFO] [stdout] test facts::tests::brace_group_attachment_span_reaches_wrapper_close_after_line_continuation ... ok
[INFO] [stdout] test facts::tests::captures_group_attachment_and_blank_line_layout ... ok
[INFO] [stdout] test facts::tests::brace_form_loop_close_suffix_comments_extend_attachment_span ... ok
[INFO] [stdout] test comments::tests::source_map_uses_indexed_lines_and_comment_contexts ... ok
[INFO] [stdout] test command::compound_assignments::tests::compound_assignment_command_substitution_matches_unclosed_opener ... ok
[INFO] [stdout] test command::groups::tests::group_verbatim_span_keeps_wrapper_comments_across_line_continuations ... ok
[INFO] [stdout] test facts::tests::brace_group_attachment_span_keeps_semicolon_terminated_trailing_comments ... ok
[INFO] [stdout] test command::groups::tests::group_verbatim_span_keeps_wrapper_comments_around_heredoc_bodies ... ok
[INFO] [stdout] test comments::tests::comment_attachment_model_uses_indexed_comments ... ok
[INFO] [stdout] test facts::tests::captures_group_open_suffix_comments ... ok
[INFO] [stdout] test facts::tests::captures_then_branch_open_suffix_comments ... ok
[INFO] [stdout] test facts::tests::brace_group_attachment_span_reaches_wrapper_close_after_parameter_expansion ... ok
[INFO] [stdout] test command::groups::tests::group_verbatim_span_keeps_wrapper_comments_with_semicolon_terminated_body ... ok
[INFO] [stdout] test facts::tests::builds_branch_comment_sequence_facts ... ok
[INFO] [stdout] test facts::tests::function_body_comments_with_parameter_syntax_attach_to_first_stmt ... ok
[INFO] [stdout] test facts::tests::captures_case_prefix_suffix_and_blank_line_regions ... ok
[INFO] [stdout] test facts::tests::brace_group_attachment_span_reaches_wrapper_close_after_heredoc_body ... ok
[INFO] [stdout] test facts::tests::precomputes_trailing_comment_alignment_targets ... ok
[INFO] [stdout] test facts::tests::records_non_layout_classification_facts ... ok
[INFO] [stdout] test options::tests::explicit_zsh_dialect_overrides_path_inference ... ok
[INFO] [stdout] test options::tests::zsh_extension_resolves_to_zsh_dialect ... ok
[INFO] [stdout] test facts::tests::records_explicit_break_layout_facts ... ok
[INFO] [stdout] test facts::tests::captures_branch_prefix_region_layout ... ok
[INFO] [stdout] test raw_syntax::tests::pipeline_continuation_normalization_moves_leading_operator ... ok
[INFO] [stdout] test facts::tests::records_padding_and_heredoc_verbatim_facts ... ok
[INFO] [stdout] test facts::tests::grouped_condition_sequences_do_not_capture_later_file_comments ... ok
[INFO] [stdout] test raw_syntax::tests::raw_scanner_finds_shell_comments_outside_quotes ... ok
[INFO] [stdout] test facts::tests::records_nested_sequence_comment_classification_facts ... ok
[INFO] [stdout] test raw_syntax::tests::raw_scanner_matches_nested_command_substitutions ... ok
[INFO] [stdout] test facts::tests::subshell_attachment_span_reaches_wrapper_close_after_command_substitution ... ok
[INFO] [stdout] test raw_syntax::tests::raw_scanner_finds_unclosed_process_substitution ... ok
[INFO] [stdout] test options::tests::zsh_shebang_resolves_to_zsh_dialect ... ok
[INFO] [stdout] test raw_syntax::tests::rendered_pipeline_continuation_ignores_quoted_pipe ... ok
[INFO] [stdout] test render_plan::layout_plan_tests::layout_plan_plans_inline_function_subshell_body ... ok
[INFO] [stdout] test render_plan::layout_plan_tests::layout_plan_plans_inline_do_done_body ... ok
[INFO] [stdout] test render_plan::layout_plan_tests::layout_plan_plans_inline_then_if ... ok
[INFO] [stdout] test render_plan::layout_plan_tests::layout_plan_plans_function_next_line_subshell_body_as_multiline ... ok
[INFO] [stdout] test render_plan::layout_plan_tests::layout_plan_plans_legacy_inline_do_if_separator ... ok
[INFO] [stdout] test render_plan::layout_plan_tests::layout_plan_plans_inline_function_brace_body ... ok
[INFO] [stdout] test raw_syntax::tests::unclosed_command_substitution_ignores_quoted_open ... ok
[INFO] [stdout] test raw_syntax::tests::raw_scanner_skips_escaped_command_substitutions ... ok
[INFO] [stdout] test render_plan::layout_plan_tests::layout_plan_plans_header_line_case_items_for_multiline_case ... ok
[INFO] [stdout] test render_plan::layout_plan_tests::layout_plan_plans_legacy_inline_do_brace_group_separator ... ok
[INFO] [stdout] test render_plan::layout_plan_tests::layout_plan_plans_function_header_comment_body ... ok
[INFO] [stdout] test render_plan::layout_plan_tests::layout_plan_plans_multiline_do_done_body_with_open_suffix ... ok
[INFO] [stdout] test render_plan::layout_plan_tests::layout_plan_plans_direct_repeat_body ... ok
[INFO] [stdout] test render_plan::layout_plan_tests::layout_plan_plans_function_next_line_brace_body_as_multiline ... ok
[INFO] [stdout] test render_plan::layout_plan_tests::layout_plan_plans_inline_source_case_as_inline ... ok
[INFO] [stdout] test render_plan::layout_plan_tests::layout_plan_plans_split_condition_if ... ok
[INFO] [stdout] test render_plan::layout_plan_tests::layout_plan_plans_multiline_function_brace_body ... ok
[INFO] [stdout] test render_plan::layout_plan_tests::layout_plan_plans_multiline_function_subshell_body ... ok
[INFO] [stdout] test simplify::tests::quote_tightening_skips_mixed_expansions ... ok
[INFO] [stdout] test render_plan::layout_plan_tests::layout_plan_plans_split_do_done_with_plain_do_opener ... ok
[INFO] [stdout] test source::tests::command_substitution_view_slices_body_with_nested_close ... ok
[INFO] [stdout] test word::core::tests::decision_preserves_escaped_command_substitutions_when_allowed ... ok
[INFO] [stdout] test source::tests::command_substitution_view_reports_source_shape ... ok
[INFO] [stdout] test simplify::tests::quote_tightening_rewrites_simple_literal_quotes ... ok
[INFO] [stdout] test simplify::tests::conditional_rewrite_normalizes_not_and_short_equals ... ok
[INFO] [stdout] test simplify::tests::simplify_report_tracks_applied_rewrites ... ok
[INFO] [stdout] test simplify::tests::paren_cleanup_simplifies_index_fragments ... ok
[INFO] [stdout] test simplify::tests::arithmetic_var_rewrite_skips_special_parameters ... ok
[INFO] [stdout] test simplify::tests::arithmetic_var_rewrite_unwraps_simple_parameters ... ok
[INFO] [stdout] test simplify::tests::arithmetic_var_rewrite_updates_expanding_heredoc_bodies ... ok
[INFO] [stdout] test word::core::tests::decision_normalizes_command_substitution_padding_before_structural_rendering ... ok
[INFO] [stdout] test simplify::tests::paren_cleanup_skips_dynamic_indexes ... ok
[INFO] [stdout] test simplify::tests::quote_tightening_rewrites_command_substitutions_inside_heredoc_bodies ... ok
[INFO] [stdout] test word::core::tests::decision_normalizes_unquoted_word_continuations_before_fallbacks ... ok
[INFO] [stdout] test word::core::tests::decision_uses_raw_fallback_for_preservable_plain_syntax ... ok
[INFO] [stdout] test word::core::tests::decision_skips_raw_fallbacks_when_simplifying ... ok
[INFO] [stdout] test word::core::tests::decision_routes_special_words_through_part_renderer_with_raw_fallback ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 71 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.20s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/format_cases.rs (/opt/rustwide/target/debug/deps/format_cases-60abd241b66f62ea)
[INFO] [stdout] 
[INFO] [stdout] running 515 tests
[INFO] [stdout] test aligns_nested_close_suffix_comments_by_column ... ok
[INFO] [stdout] test aligns_multiline_single_quoted_process_substitution_words ... ok
[INFO] [stdout] test aligns_comments_before_elif_and_else_with_branch_keywords ... ok
[INFO] [stdout] test aligns_old_style_function_header_comments_like_shfmt ... ok
[INFO] [stdout] test aligns_else_suffix_comments_with_nested_multiline_header_suffix_comments ... ok
[INFO] [stdout] test aligns_case_terminator_comments_after_pattern_pipe_spacing ... ok
[INFO] [stdout] test aligns_moved_function_header_comments_with_first_body_comment ... ok
[INFO] [stdout] test aligns_space_indented_close_suffix_comments_by_column ... ok
[INFO] [stdout] test aligns_runs_of_trailing_comments ... ok
[INFO] [stdout] test aligns_brace_group_open_suffix_comments_with_body_comments ... ok
[INFO] [stdout] test aligns_case_terminator_comments_by_contiguous_runs ... ok
[INFO] [stdout] test aligns_trailing_comments_after_adjacent_redirect_commands ... ok
[INFO] [stdout] test adds_blank_line_after_multiline_case_patterns ... ok
[INFO] [stdout] test aligns_raw_pipeline_comments_after_continuation_stages ... ok
[INFO] [stdout] test aligns_case_terminator_comments_when_single_digit_patterns_have_source_padding ... ok
[INFO] [stdout] test aligns_compound_assignment_command_substitution_close_suffixes ... ok
[INFO] [stdout] test aligns_trailing_comments_after_empty_array_assignments ... ok
[INFO] [stdout] test aligns_trailing_comments_after_bare_redirect_spacing ... ok
[INFO] [stdout] test aligns_trailing_comments_after_empty_parameter_replacements ... ok
[INFO] [stdout] test aligns_else_comments_with_space_indented_nested_then_comments ... ok
[INFO] [stdout] test auto_dialect_honors_zsh_paths_and_shebangs ... ok
[INFO] [stdout] test aligns_case_pattern_suffix_comments_with_body_comments ... ok
[INFO] [stdout] test aligns_list_rhs_comments_with_following_branch_header_comments ... ok
[INFO] [stdout] test auto_dialect_honors_env_shebang ... ok
[INFO] [stdout] test aligns_trailing_comments_after_removed_semicolons ... ok
[INFO] [stdout] test aligns_trailing_comments_across_tab_indented_if_body ... ok
[INFO] [stdout] test backtick_in_redirect_is_idempotent ... ok
[INFO] [stdout] test aligns_trailing_comments_after_normalized_array_assignments ... ok
[INFO] [stdout] test aligns_inline_if_close_comments_after_reindent ... ok
[INFO] [stdout] test aligns_trailing_comments_after_parameter_replacements_inside_functions ... ok
[INFO] [stdout] test aligns_trailing_comments_after_normalized_command_substitutions ... ok
[INFO] [stdout] test aligns_trailing_comments_after_normalized_arithmetic_assignments ... ok
[INFO] [stdout] test aligns_trailing_comments_after_normalized_redirect_spacing ... ok
[INFO] [stdout] test assignment_command_substitution_heredoc_keeps_literal_tail_unindented ... ok
[INFO] [stdout] test aligns_trailing_comments_after_parameter_replacements ... ok
[INFO] [stdout] test binary_next_line_does_not_force_single_line_pipelines_to_wrap ... ok
[INFO] [stdout] test binary_next_line_pipeline_keeps_heredoc_body_unindented ... ok
[INFO] [stdout] test case_terminator_suffix_scan_handles_utf8_prefixes ... ok
[INFO] [stdout] test check_path_reports_already_formatted_sources ... ok
[INFO] [stdout] test binary_brace_group_does_not_gain_blank_before_next_command ... ok
[INFO] [stdout] test collapses_extra_blank_lines_between_items ... ok
[INFO] [stdout] test collapses_negated_condition_continuation_before_pipeline ... ok
[INFO] [stdout] test collapses_backslash_breaks_inside_conditional_comparisons ... ok
[INFO] [stdout] test case_item_comments_do_not_leak_to_previous_arm ... ok
[INFO] [stdout] test body_comment_stops_moved_function_header_comment_alignment ... ok
[INFO] [stdout] test aligns_comments_across_space_indented_multiline_headers ... ok
[INFO] [stdout] test block_command_substitution_pipelines_keep_nested_indent ... ok
[INFO] [stdout] test command_substitution_bounds_do_not_capture_following_comments ... ok
[INFO] [stdout] test command_position_command_substitution_heredoc_keeps_literal_tail_unindented ... ok
[INFO] [stdout] test command_substitution_heredocs_normalize_top_level_operator_spacing ... ok
[INFO] [stdout] test aligns_trailing_comments_with_following_outdented_branch ... ok
[INFO] [stdout] test command_substitutions_with_heredocs_use_block_layout ... ok
[INFO] [stdout] test command_substitutions_with_comments_fall_back_to_raw_source ... ok
[INFO] [stdout] test command_substitution_bounds_do_not_capture_following_list_operators ... ok
[INFO] [stdout] test command_substitutions_with_comments_and_own_line_close_use_block_layout ... ok
[INFO] [stdout] test block_command_substitution_pipeline_stage_after_multiline_literal_keeps_stage_indent ... ok
[INFO] [stdout] test command_substitution_heredocs_strip_wrapper_indent ... ok
[INFO] [stdout] test carries_normalized_pipeline_indent_inside_raw_command_substitutions ... ok
[INFO] [stdout] test compacts_parameter_slice_arithmetic_operands ... ok
[INFO] [stdout] test collapses_then_on_next_line_after_simple_if_conditions_like_shfmt ... ok
[INFO] [stdout] test block_command_substitution_pipeline_after_command_continuations_keeps_stage_indent ... ok
[INFO] [stdout] test compound_assignment_command_substitution_heredoc_is_idempotent ... ok
[INFO] [stdout] test compound_assignment_quoted_heredoc_keeps_body_unindented ... ok
[INFO] [stdout] test command_substitution_stripped_heredoc_closer_follows_command_indent ... ok
[INFO] [stdout] test compound_assignment_tab_stripped_heredoc_keeps_valid_tab_indentation ... ok
[INFO] [stdout] test does_not_duplicate_process_substitution_comments_before_pipeline_rhs ... ok
[INFO] [stdout] test defers_heredoc_body_until_continued_pipeline_head_finishes ... ok
[INFO] [stdout] test does_not_insert_blank_after_then_suffix_comment_before_body_comment ... ok
[INFO] [stdout] test compacts_raw_process_substitution_semicolon_terminators ... ok
[INFO] [stdout] test compound_assignment_command_substitution_heredoc_keeps_body_unindented ... ok
[INFO] [stdout] test command_substitution_assignment_continuations_do_not_double_context_indent ... ok
[INFO] [stdout] test does_not_treat_comment_internal_blank_as_case_pattern_gap ... ok
[INFO] [stdout] test does_not_treat_comment_internal_blank_as_case_terminator_gap ... ok
[INFO] [stdout] test compound_assignment_heredoc_does_not_close_on_indented_delimiter_text ... ok
[INFO] [stdout] test does_not_preserve_branch_blanks_from_inline_keywords ... ok
[INFO] [stdout] test does_not_insert_blank_before_body_leading_brace_pipeline ... ok
[INFO] [stdout] test formats_arithmetic_expansion_array_subscripts_like_shfmt ... ok
[INFO] [stdout] test does_not_treat_comment_internal_blank_as_fi_gap ... ok
[INFO] [stdout] test collapses_then_after_multiline_grouped_if_conditions ... ok
[INFO] [stdout] test format_file_ast_requires_explicit_clone_for_ast_reuse ... ok
[INFO] [stdout] test formats_arithmetic_expansions_from_ruby_build ... ok
[INFO] [stdout] test formats_arithmetic_expansions_from_pyenv_python_build ... ok
[INFO] [stdout] test does_not_duplicate_leading_comments_inside_brace_groups ... ok
[INFO] [stdout] test expands_multistatement_assignment_command_substitutions ... ok
[INFO] [stdout] test dirname_command_substitution_bounds_do_not_capture_following_comments ... ok
[INFO] [stdout] test expands_subshells_with_line_continuation_headers ... ok
[INFO] [stdout] test expands_multistatement_process_substitutions_as_blocks ... ok
[INFO] [stdout] test command_substitution_heredoc_arguments_keep_body_unindented ... ok
[INFO] [stdout] test formats_arithmetic_for_init_assignment_spacing ... ok
[INFO] [stdout] test formats_case_items_with_expected_indentation ... ok
[INFO] [stdout] test formats_arithmetic_command_assignment_spacing ... ok
[INFO] [stdout] test formats_braced_shell_style_variables_inside_arithmetic_expansions_like_shfmt ... ok
[INFO] [stdout] test formats_decl_heredoc_heads_structurally ... ok
[INFO] [stdout] test formats_completion_function_subscripts_and_case_indent_like_shfmt ... ok
[INFO] [stdout] test formats_binary_spacing_around_command_substitution_arithmetic_operands ... ok
[INFO] [stdout] test formats_commented_if_command_substitutions_structurally ... ok
[INFO] [stdout] test formats_heredoc_command_heads_structurally ... ok
[INFO] [stdout] test formats_heredoc_pipeline_with_trailing_comment_structurally ... ok
[INFO] [stdout] test formats_multiline_command_substitutions ... ok
[INFO] [stdout] test formats_nested_heredoc_commands_without_indenting_body ... ok
[INFO] [stdout] test expands_multistatement_command_substitutions_in_array_values ... ok
[INFO] [stdout] test formats_case_command_substitution_array_assignment_like_shfmt ... ok
[INFO] [stdout] test formats_multiline_arithmetic_expansions_with_continuations ... ok
[INFO] [stdout] test formats_nvm_args_command_substitution_without_losing_sed_body_layout ... ok
[INFO] [stdout] test formats_multiline_arithmetic_commands_with_continuations ... ok
[INFO] [stdout] test formats_process_substitution_heredocs_as_blocks ... ok
[INFO] [stdout] test expands_inline_command_substitution_pipeline_brace_groups ... ok
[INFO] [stdout] test formats_process_substitution_with_own_line_close_as_block ... ok
[INFO] [stdout] test formats_major_minor_multiline_command_substitution_like_shfmt ... ok
[INFO] [stdout] test formats_multiline_compound_assignments_structurally ... ok
[INFO] [stdout] test format_file_ast_matches_format_source_for_formatter_fixtures ... ok
[INFO] [stdout] test formats_parenthesized_array_subscripts_like_shfmt ... ok
[INFO] [stdout] test formats_multiline_command_substitutions_with_escaped_quotes_structurally ... ok
[INFO] [stdout] test formats_multiline_command_substitutions_with_compound_commands ... ok
[INFO] [stdout] test formats_quoted_continued_command_substitution_lists_like_shfmt ... ok
[INFO] [stdout] test formats_block_command_substitutions_with_trailing_comments ... ok
[INFO] [stdout] test function_next_line_expands_inline_brace_body ... ok
[INFO] [stdout] test function_next_line_expands_inline_subshell_body ... ok
[INFO] [stdout] test expands_nested_inline_command_substitutions_inside_raw_blocks ... ok
[INFO] [stdout] test formats_commented_inline_subshell_here_string_targets ... ok
[INFO] [stdout] test heredoc_command_substitution_continuations_follow_shell_indent ... ok
[INFO] [stdout] test formats_simple_command_with_tabs_by_default ... ok
[INFO] [stdout] test formats_redirect_spacing_inside_process_substitution ... ok
[INFO] [stdout] test honors_function_next_line_option ... ok
[INFO] [stdout] test ignores_branch_keywords_inside_leading_comments ... ok
[INFO] [stdout] test indents_assignment_continuations_after_nonleading_command_substitution ... ok
[INFO] [stdout] test heredoc_function_close_suffix_keeps_closing_brace ... ok
[INFO] [stdout] test formats_quoted_block_command_substitution_conditions_like_shfmt ... ok
[INFO] [stdout] test ignores_comments_for_multiline_compound_assignment_body_indent ... ok
[INFO] [stdout] test indents_dangling_comments_before_done_like_shfmt ... ok
[INFO] [stdout] test indents_command_substitution_continuations_after_multiline_literals ... ok
[INFO] [stdout] test formats_commented_brace_group_pipeline_command_substitutions_structurally ... ok
[INFO] [stdout] test ignores_commented_branch_keywords_when_finding_else ... ok
[INFO] [stdout] test indents_block_command_substitution_comments_inside_assignments ... ok
[INFO] [stdout] test indents_array_append_command_substitution_elements_like_shfmt ... ok
[INFO] [stdout] test indents_disabled_case_arm_comments_before_next_pattern ... ok
[INFO] [stdout] test indents_assignment_command_substitution_leading_pipe_continuations ... ok
[INFO] [stdout] test indents_block_command_substitution_loop_body_comments ... ok
[INFO] [stdout] test indents_block_command_substitution_pipeline_comments_inside_assignments ... ok
[INFO] [stdout] test indents_block_command_substitution_assignments_with_multiline_literals ... ok
[INFO] [stdout] test indents_inline_command_substitution_backslash_continuations ... ok
[INFO] [stdout] test formats_shell_style_variables_inside_arithmetic_expansions_like_shfmt ... ok
[INFO] [stdout] test does_not_introduce_unused_assignment_for_backslash_heredoc_reproducer ... ok
[INFO] [stdout] test indents_process_substitution_pipeline_comments ... ok
[INFO] [stdout] test indents_multiline_here_string_command_substitution_targets ... ok
[INFO] [stdout] test indents_multiline_parameter_replacement_payloads ... ok
[INFO] [stdout] test indents_aligned_disabled_case_arm_comments_before_next_pattern ... ok
[INFO] [stdout] test indents_assignment_command_substitution_pipelines_after_multiline_literals ... ok
[INFO] [stdout] test indents_continued_process_substitution_comments_once ... ok
[INFO] [stdout] test indents_quoted_block_command_substitution_loop_close ... ok
[INFO] [stdout] test indents_inline_command_substitution_pipeline_words ... ok
[INFO] [stdout] test indents_raw_command_substitution_brace_group_bodies ... ok
[INFO] [stdout] test indents_raw_block_command_substitution_pipeline_after_compound_close ... ok
[INFO] [stdout] test indents_tab_stripped_heredoc_body_to_context_depth ... ok
[INFO] [stdout] test invalid_shebang_like_line_does_not_move_off_the_first_line ... ok
[INFO] [stdout] test inserts_empty_replacement_delimiter_after_escaped_quote_replacements ... ok
[INFO] [stdout] test keep_padding_preserves_safe_verbatim_regions ... ok
[INFO] [stdout] test indents_inline_continued_command_substitution_assignments ... ok
[INFO] [stdout] test indents_literal_assignment_command_substitution_pipeline_continuations ... ok
[INFO] [stdout] test indents_raw_command_substitution_pipeline_continuations ... ok
[INFO] [stdout] test indents_raw_command_substitution_pipeline_before_multiline_literal_command ... ok
[INFO] [stdout] test keeps_array_subscript_arithmetic_compact_like_shfmt ... ok
[INFO] [stdout] test indents_inline_raw_command_substitution_compound_pipeline_bodies ... ok
[INFO] [stdout] test indents_raw_command_substitution_compound_pipeline_bodies ... ok
[INFO] [stdout] test keeps_array_subscript_modulo_compact_like_shfmt ... ok
[INFO] [stdout] test keeps_assignment_command_substitution_condition_suffix_comment_after_then ... ok
[INFO] [stdout] test keeps_body_indented_comments_before_elif_inside_previous_branch ... ok
[INFO] [stdout] test keeps_aligned_disabled_case_patterns_at_pattern_indent ... ok
[INFO] [stdout] test indents_space_disabled_case_pattern_comments_between_arms ... ok
[INFO] [stdout] test keeps_attached_multiline_case_patterns_compact ... ok
[INFO] [stdout] test keeps_disabled_case_comments_with_explanatory_prefix_comments ... ok
[INFO] [stdout] test keeps_case_items_multiline_when_terminator_was_multiline ... ok
[INFO] [stdout] test keeps_command_list_rhs_brace_group_body_comments_inside_group ... ok
[INFO] [stdout] test keeps_case_header_comments_before_inline_first_pattern ... ok
[INFO] [stdout] test keeps_disabled_case_arm_body_comments_at_pattern_indent_without_hash_tabs ... ok
[INFO] [stdout] test keeps_case_header_items_inline_when_later_body_wraps ... ok
[INFO] [stdout] test keeps_if_close_comments_after_literal_fi_arguments ... ok
[INFO] [stdout] test keeps_if_close_suffix_comment_on_outer_close ... ok
[INFO] [stdout] test keeps_empty_case_terminators_after_pattern_suffix_comments_parseable ... ok
[INFO] [stdout] test keeps_inline_case_commands_with_multiple_patterns ... ok
[INFO] [stdout] test keeps_inline_case_close_suffix_comment_on_esac ... ok
[INFO] [stdout] test keeps_disabled_elif_comment_block_before_real_elif ... ok
[INFO] [stdout] test keeps_command_substitution_condition_continuation_at_block_indent ... ok
[INFO] [stdout] test inline_assignment_command_substitution_pipeline_after_multiline_literal_keeps_body_indent ... ok
[INFO] [stdout] test keeps_inline_case_commands_with_missing_terminators ... ok
[INFO] [stdout] test keeps_identifier_array_subscript_arithmetic_compact_like_shfmt ... ok
[INFO] [stdout] test keeps_inline_case_item_when_terminator_is_missing ... ok
[INFO] [stdout] test keeps_inline_if_close_suffix_comment_on_fi ... ok
[INFO] [stdout] test keeps_inline_case_arms_with_if_else_bodies ... ok
[INFO] [stdout] test keeps_loop_and_case_close_suffix_comments_on_close_keywords ... ok
[INFO] [stdout] test keeps_inline_case_conditions_before_then ... ok
[INFO] [stdout] test keeps_loop_close_comments_after_literal_done_arguments ... ok
[INFO] [stdout] test keeps_inline_case_arms_with_if_bodies ... ok
[INFO] [stdout] test keeps_explanatory_if_comment_before_elif_at_branch_indent ... ok
[INFO] [stdout] test keeps_leading_command_substitution_assignment_continuations_flush_left ... ok
[INFO] [stdout] test keeps_inline_case_inside_if_command_lists ... ok
[INFO] [stdout] test keeps_inline_list_rhs_after_wrapped_conditional ... ok
[INFO] [stdout] test keeps_inline_nested_subshells_from_becoming_arithmetic_commands ... ok
[INFO] [stdout] test keeps_multiline_arithmetic_if_condition_then_attached ... ok
[INFO] [stdout] test keeps_nested_parameter_operand_subscripts_compact_like_shfmt ... ok
[INFO] [stdout] test keeps_multiline_literal_if_conditions_inline_like_shfmt ... ok
[INFO] [stdout] test keeps_pipeline_blank_before_disabled_comment_block ... ok
[INFO] [stdout] test keeps_inline_then_arm_before_multiline_else ... ok
[INFO] [stdout] test keeps_inline_else_arm_after_multiline_then ... ok
[INFO] [stdout] test keeps_inline_process_substitution_brace_group_attached ... ok
[INFO] [stdout] test keeps_nested_same_line_pipeline_rhs_brace_group_attached ... ok
[INFO] [stdout] test keeps_pipeline_continuation_at_list_rhs_indent ... ok
[INFO] [stdout] test keeps_plain_array_subscripts_compact_like_shfmt ... ok
[INFO] [stdout] test keeps_pipeline_rhs_brace_group_body_comments_inside_group ... ok
[INFO] [stdout] test keep_padding_still_formats_unpadded_syntax ... ok
[INFO] [stdout] test keeps_trailing_backslash_pipeline_reproducer_parseable ... ok
[INFO] [stdout] test keeps_single_quoted_command_substitution_literal_spacing_in_arrays ... ok
[INFO] [stdout] test keeps_inline_case_arms_inside_command_substitutions ... ok
[INFO] [stdout] test keeps_same_line_pipeline_rhs_brace_group_attached ... ok
[INFO] [stdout] test keeps_quoted_command_substitution_continuation_indent_stable ... ok
[INFO] [stdout] test keeps_nested_command_substitution_multiline_literals_unindented ... ok
[INFO] [stdout] test minify_drops_comments_but_preserves_shebang ... ok
[INFO] [stdout] test keeps_unterminated_heredoc_closers_on_their_own_lines ... ok
[INFO] [stdout] test keeps_standalone_inline_case_commands ... ok
[INFO] [stdout] test keeps_multiline_condition_list_operator_before_brace_group ... ok
[INFO] [stdout] test keeps_single_statement_command_substitutions_with_multiline_literals_inline ... ok
[INFO] [stdout] test keeps_wrapped_inline_brace_group_conditions_attached ... ok
[INFO] [stdout] test mksh_dialect_formats_select_commands ... ok
[INFO] [stdout] test keeps_space_disabled_case_pattern_comments_at_pattern_indent ... ok
[INFO] [stdout] test negated_subshell_conditions_do_not_capture_later_file_comments ... ok
[INFO] [stdout] test never_split_prefers_compact_layouts ... ok
[INFO] [stdout] test keeps_inline_list_operator_before_multiline_brace_group ... ok
[INFO] [stdout] test keeps_subshell_command_substitution_from_becoming_arithmetic ... ok
[INFO] [stdout] test normalizes_backticks_inside_preserved_escaped_quote_words ... ok
[INFO] [stdout] test normalizes_here_string_spacing ... ok
[INFO] [stdout] test normalizes_block_process_substitution_source_indent ... ok
[INFO] [stdout] test nested_command_substitution_bounds_do_not_capture_following_comments ... ok
[INFO] [stdout] test normalizes_extra_crlf_trailing_newlines ... ok
[INFO] [stdout] test normalizes_backtick_command_substitutions_to_dollar_paren ... ok
[INFO] [stdout] test moves_interspersed_simple_command_redirects_after_arguments ... ok
[INFO] [stdout] test normalizes_backtick_escaped_dollar_literals_once ... ok
[INFO] [stdout] test normalizes_indented_word_continuations_like_shfmt ... ok
[INFO] [stdout] test normalizes_here_string_spacing_inside_command_substitutions ... ok
[INFO] [stdout] test normalizes_here_string_spacing_in_raw_comment_command_substitutions ... ok
[INFO] [stdout] test keeps_simple_if_else_inline ... ok
[INFO] [stdout] test normalizes_multiline_compound_assignment_row_spacing ... ok
[INFO] [stdout] test normalizes_array_command_substitution_leading_list_operators ... ok
[INFO] [stdout] test normalizes_keyed_compound_assignment_row_indent ... ok
[INFO] [stdout] test keeps_missing_terminator_case_item_body_on_pattern_line ... ok
[INFO] [stdout] test normalizes_pipeline_spacing_inside_parameter_default_commands ... ok
[INFO] [stdout] test multiline_if_conditions_do_not_capture_later_body_comments ... ok
[INFO] [stdout] test normalizes_opening_brace_comment_spacing ... ok
[INFO] [stdout] test normalizes_array_command_substitution_elements_like_shfmt ... ok
[INFO] [stdout] test normalizes_multiline_command_substitution_arguments ... ok
[INFO] [stdout] test normalizes_leading_pipe_continuations_inside_process_substitutions ... ok
[INFO] [stdout] test normalizes_inline_process_substitution_source_indent ... ok
[INFO] [stdout] test normalizes_leading_pipe_continuations_inside_raw_command_substitutions ... ok
[INFO] [stdout] test normalizes_output_redirect_spacing_inside_raw_command_substitutions ... ok
[INFO] [stdout] test normalizes_process_substitution_block_indent_from_partial_source_indent ... ok
[INFO] [stdout] test normalizes_raw_command_substitution_leading_list_operators ... ok
[INFO] [stdout] test normalizes_raw_block_command_substitution_short_space_indent ... ok
[INFO] [stdout] test normalizes_raw_block_command_substitution_comment_indent ... ok
[INFO] [stdout] test normalizes_inline_command_substitution_internal_spacing ... ok
[INFO] [stdout] test normalizes_raw_block_command_substitution_inline_comment_padding ... ok
[INFO] [stdout] test normalizes_nested_grouped_if_condition_indentation ... ok
[INFO] [stdout] test parsed_assignment_value_render_syntax_is_trimmed ... ok
[INFO] [stdout] test posix_dialect_propagates_parse_errors ... ok
[INFO] [stdout] test preserves_ansi_c_quoted_assignment_values ... ok
[INFO] [stdout] test normalizes_redirect_spacing_inside_raw_multiline_command_substitutions ... ok
[INFO] [stdout] test preserves_append_both_redirect_spelling ... ok
[INFO] [stdout] test normalizes_trailing_pipe_continuations_inside_raw_command_substitutions ... ok
[INFO] [stdout] test normalizes_underindented_dangling_comments_inside_case_bodies ... ok
[INFO] [stdout] test preserves_alias_expanded_simple_commands_verbatim ... ok
[INFO] [stdout] test opening_brace_comment_stops_following_body_comment_alignment ... ok
[INFO] [stdout] test preserves_ansi_c_quoted_condition_patterns ... ok
[INFO] [stdout] test normalizes_multiline_command_substitution_array_elements ... ok
[INFO] [stdout] test preserves_backslash_continued_simple_commands_from_fzf_install ... ok
[INFO] [stdout] test preserves_array_command_substitution_argument_continuations ... ok
[INFO] [stdout] test normalizes_raw_block_command_substitution_shell_indent ... ok
[INFO] [stdout] test preserves_backslash_breaks_inside_conditional_binaries ... ok
[INFO] [stdout] test preserves_backslash_continued_simple_commands_from_homebrew_install ... ok
[INFO] [stdout] test preserves_blank_line_after_brace_group_open_suffix_comment ... ok
[INFO] [stdout] test preserves_adjacent_numeric_fd_heredoc_redirects ... ok
[INFO] [stdout] test preserves_alias_expanded_commands_before_case_terminators ... ok
[INFO] [stdout] test preserves_background_terminator_at_if_branch_boundary ... ok
[INFO] [stdout] test normalizes_redirect_spacing_inside_parameter_default_commands ... ok
[INFO] [stdout] test normalizes_nested_command_substitution_argument_indent ... ok
[INFO] [stdout] test preserves_blank_line_after_case_in ... ok
[INFO] [stdout] test preserves_blank_line_after_brace_group_open ... ok
[INFO] [stdout] test preserves_blank_line_after_case_pattern_with_prefix_comments ... ok
[INFO] [stdout] test preserves_blank_line_after_case_pattern ... ok
[INFO] [stdout] test preserves_blank_line_after_if_then ... ok
[INFO] [stdout] test preserves_blank_line_after_if_then_suffix_comment ... ok
[INFO] [stdout] test keeps_nested_process_substitution_close_indent_in_raw_command_substitutions ... ok
[INFO] [stdout] test preserves_blank_line_after_case_in_comments ... ok
[INFO] [stdout] test preserves_blank_line_after_while_do ... ok
[INFO] [stdout] test preserves_blank_line_before_case_item_terminator ... ok
[INFO] [stdout] test normalizes_redirect_spacing_in_inline_multiline_command_substitutions ... ok
[INFO] [stdout] test normalizes_redirect_spacing_in_raw_command_substitution_fallbacks ... ok
[INFO] [stdout] test preserves_blank_line_before_case_item_comments ... ok
[INFO] [stdout] test preserves_blank_line_before_esac ... ok
[INFO] [stdout] test preserves_blank_line_before_esac_after_missing_terminator ... ok
[INFO] [stdout] test preserves_blank_lines_after_multiline_brace_groups_idempotently ... ok
[INFO] [stdout] test preserves_blank_line_before_inline_do_brace_close ... ok
[INFO] [stdout] test preserves_blank_line_before_trailing_file_comment ... ok
[INFO] [stdout] test preserves_blank_line_before_fi_after_elif_branch ... ok
[INFO] [stdout] test preserves_blank_line_before_done ... ok
[INFO] [stdout] test preserves_blank_line_between_case_items ... ok
[INFO] [stdout] test preserves_blank_lines_after_multiline_subshells_idempotently ... ok
[INFO] [stdout] test preserves_blank_lines_after_functions ... ok
[INFO] [stdout] test preserves_brace_group_wrapper_comments ... ok
[INFO] [stdout] test preserves_blank_line_before_commented_if_branch ... ok
[INFO] [stdout] test preserves_case_in_comment_containing_in_words ... ok
[INFO] [stdout] test preserves_body_lines_when_synthesizing_missing_heredoc_closers ... ok
[INFO] [stdout] test preserves_blank_line_before_simple_fi ... ok
[INFO] [stdout] test preserves_case_pattern_escapes ... ok
[INFO] [stdout] test preserves_blank_line_before_inline_do_brace_close_after_nested_group ... ok
[INFO] [stdout] test preserves_blank_line_before_if_branches ... ok
[INFO] [stdout] test preserves_block_process_substitution_source_indentation ... ok
[INFO] [stdout] test preserves_case_terminator_suffix_comments ... ok
[INFO] [stdout] test preserves_body_indented_comments_before_overindented_case_patterns ... ok
[INFO] [stdout] test preserves_case_pattern_suffix_comments ... ok
[INFO] [stdout] test preserves_blank_line_before_if_fi ... ok
[INFO] [stdout] test preserves_blank_lines_inside_multiline_compound_assignments ... ok
[INFO] [stdout] test preserves_body_indented_comments_before_case_patterns ... ok
[INFO] [stdout] test preserves_case_suffix_comments_before_commented_compound_body ... ok
[INFO] [stdout] test preserves_blank_lines_after_leading_comments ... ok
[INFO] [stdout] test preserves_blank_lines_between_commands ... ok
[INFO] [stdout] test preserves_case_terminator_suffix_comment_alignment ... ok
[INFO] [stdout] test preserves_command_substitution_padding_inside_single_quotes ... ok
[INFO] [stdout] test preserves_command_substitution_assignment_continuation_alignment ... ok
[INFO] [stdout] test preserves_comments_after_function_blocks ... ok
[INFO] [stdout] test preserves_comments_between_pipeline_commands ... ok
[INFO] [stdout] test preserves_comments_after_final_case_terminator ... ok
[INFO] [stdout] test preserves_comment_after_case_in_keyword ... ok
[INFO] [stdout] test preserves_comment_indentation_inside_inline_command_substitutions ... ok
[INFO] [stdout] test preserves_command_substitutions_inside_arithmetic_expansions ... ok
[INFO] [stdout] test preserves_brace_group_attached_after_pipeline_operator ... ok
[INFO] [stdout] test preserves_comments_after_if_blocks ... ok
[INFO] [stdout] test preserves_command_substitutions_with_closing_paren_on_own_line ... ok
[INFO] [stdout] test preserves_comment_after_then_without_raw_body_fallback ... ok
[INFO] [stdout] test preserves_comment_between_list_operator_and_brace_group ... ok
[INFO] [stdout] test preserves_comments_before_case_patterns ... ok
[INFO] [stdout] test preserves_comment_between_list_operator_and_rhs ... ok
[INFO] [stdout] test preserves_comments_in_empty_case_items ... ok
[INFO] [stdout] test preserves_comments_between_elif_and_condition ... ok
[INFO] [stdout] test preserves_comments_between_pipeline_and_compound_command ... ok
[INFO] [stdout] test preserves_comments_inside_elif_bodies ... ok
[INFO] [stdout] test preserves_comment_after_loop_do_without_raw_body_fallback ... ok
[INFO] [stdout] test preserves_compound_assignment_command_substitution_command_continuations ... ok
[INFO] [stdout] test preserves_concatenated_ansi_c_and_escaped_double_quoted_arguments ... ok
[INFO] [stdout] test preserves_compound_redirect_continuations ... ok
[INFO] [stdout] test preserves_concatenated_ansi_c_quoted_assignment_values ... ok
[INFO] [stdout] test preserves_concatenated_ansi_c_quoted_arguments ... ok
[INFO] [stdout] test preserves_conditional_command_substitutions_with_nested_quoted_arguments ... ok
[INFO] [stdout] test preserves_decl_multiline_compound_assignment_literal_shape ... ok
[INFO] [stdout] test preserves_conditional_words_that_look_like_unary_operators ... ok
[INFO] [stdout] test preserves_dangling_comment_inside_binary_brace_group_once ... ok
[INFO] [stdout] test preserves_continued_redirect_targets ... ok
[INFO] [stdout] test preserves_compound_assignment_command_substitution_body_indent ... ok
[INFO] [stdout] test preserves_continued_semicolon_terminators ... ok
[INFO] [stdout] test preserves_else_branch_comments_inside_the_branch ... ok
[INFO] [stdout] test preserves_escaped_html_closing_tags_in_double_quoted_assignments ... ok
[INFO] [stdout] test preserves_explicit_line_break_after_list_operator ... ok
[INFO] [stdout] test preserves_empty_command_substitutions ... ok
[INFO] [stdout] test preserves_expanded_decl_compound_assignment_delimiters ... ok
[INFO] [stdout] test preserves_escaped_multiline_double_quoted_compound_items ... ok
[INFO] [stdout] test preserves_explicit_line_break_when_list_operator_starts_continued_line ... ok
[INFO] [stdout] test preserves_escaped_command_names ... ok
[INFO] [stdout] test preserves_escaped_dollar_literals_inside_quoted_command_substitutions ... ok
[INFO] [stdout] test preserves_escaped_quotes_in_double_quoted_assignments ... ok
[INFO] [stdout] test preserves_default_redirect_spacing_without_space_redirects ... ok
[INFO] [stdout] test preserves_fd_close_redirect_targets ... ok
[INFO] [stdout] test preserves_explicit_stdout_fd_on_dup_redirects ... ok
[INFO] [stdout] test preserves_escaped_trailing_space_arguments ... ok
[INFO] [stdout] test preserves_escaped_dollar_literals_after_command_substitutions ... ok
[INFO] [stdout] test preserves_explicit_breaks_inside_conditional_binaries ... ok
[INFO] [stdout] test preserves_fd_duplication_redirect_targets ... ok
[INFO] [stdout] test preserves_eval_conditional_syntax_as_arguments ... ok
[INFO] [stdout] test preserves_escaped_spaces_in_conditional_regex_operands ... ok
[INFO] [stdout] test preserves_explicit_multiline_pipeline_by_default ... ok
[INFO] [stdout] test preserves_escaped_quote_words_with_nested_quoted_command_substitutions ... ok
[INFO] [stdout] test preserves_explicit_multiline_pipeline_when_operator_starts_continued_line ... ok
[INFO] [stdout] test preserves_file_not_grpowned_command_substitution_shape ... ok
[INFO] [stdout] test preserves_escaped_dollar_command_substitutions_in_prompt_assignments ... ok
[INFO] [stdout] test preserves_group_spacing_idempotently_for_nested_subshells ... ok
[INFO] [stdout] test preserves_function_header_comment_spacing_when_brace_moves_up ... ok
[INFO] [stdout] test preserves_header_and_opening_brace_comments_when_brace_moves_up ... ok
[INFO] [stdout] test preserves_indented_multiline_prompt_assignments_with_leading_continuation_lines ... ok
[INFO] [stdout] test preserves_for_in_first_word_continuation ... ok
[INFO] [stdout] test preserves_inline_function_keyword_opening_brace_comments ... ok
[INFO] [stdout] test preserves_if_condition_on_own_line ... ok
[INFO] [stdout] test preserves_grouped_if_conditions_before_then ... ok
[INFO] [stdout] test preserves_inline_brace_group_loop_bodies ... ok
[INFO] [stdout] test preserves_inline_comments ... ok
[INFO] [stdout] test preserves_inline_do_if_body_layout ... ok
[INFO] [stdout] test preserves_inline_negated_subshell_conditions ... ok
[INFO] [stdout] test preserves_final_comment_backslash_when_adding_trailing_newline ... ok
[INFO] [stdout] test preserves_leading_redirect_placement_in_nvm_err_helpers ... ok
[INFO] [stdout] test preserves_inline_multiline_compound_assignment_delimiters ... ok
[INFO] [stdout] test preserves_inline_continued_command_substitution_assignments ... ok
[INFO] [stdout] test preserves_inline_group_redirect_suffixes ... ok
[INFO] [stdout] test preserves_leading_comments_inside_redirected_brace_group ... ok
[INFO] [stdout] test preserves_leading_comments_inside_function_bodies ... ok
[INFO] [stdout] test preserves_if_chain_condition_on_own_line ... ok
[INFO] [stdout] test preserves_legacy_bracket_arithmetic_idempotently ... ok
[INFO] [stdout] test preserves_leading_comments_before_brace_group_pipelines ... ok
[INFO] [stdout] test preserves_inline_then_if_body_layout ... ok
[INFO] [stdout] test preserves_inline_multiline_command_substitution_source_indentation ... ok
[INFO] [stdout] test preserves_inline_multiline_process_substitution_continuations ... ok
[INFO] [stdout] test preserves_inline_if_elif_command_substitutions ... ok
[INFO] [stdout] test preserves_heredoc_trailing_comments_without_duplication ... ok
[INFO] [stdout] test preserves_for_targets_inside_inline_command_substitutions ... ok
[INFO] [stdout] test preserves_legacy_inline_do_brace_group_ending_in_binary_compound ... ok
[INFO] [stdout] test preserves_multi_digit_fd_duplication_redirect_prefixes ... ok
[INFO] [stdout] test preserves_multiline_assignment_payload_indentation ... ok
[INFO] [stdout] test preserves_multiline_here_string_literal_payload_indent ... ok
[INFO] [stdout] test preserves_list_break_after_multiline_condition ... ok
[INFO] [stdout] test preserves_multiline_if_body_comments ... ok
[INFO] [stdout] test preserves_long_suffix_trim_operators_in_words ... ok
[INFO] [stdout] test preserves_multiline_double_quoted_argument_alignment ... ok
[INFO] [stdout] test preserves_multiline_compound_assignment_literal_shape ... ok
[INFO] [stdout] test preserves_negative_parameter_slice_offset_spacing ... ok
[INFO] [stdout] test preserves_loop_body_brace_group_background_before_done ... ok
[INFO] [stdout] test preserves_legacy_inline_do_brace_group_without_semicolon_before_done ... ok
[INFO] [stdout] test preserves_multiline_function_bodies ... ok
[INFO] [stdout] test preserves_multiline_decl_compound_assignment_lines ... ok
[INFO] [stdout] test preserves_multiline_subshell_around_loop ... ok
[INFO] [stdout] test preserves_legacy_inline_do_brace_group_ending_in_loop_case ... ok
[INFO] [stdout] test preserves_multiline_subshell_open_and_close_placement ... ok
[INFO] [stdout] test preserves_multiline_assignment_continuation_payload_indentation ... ok
[INFO] [stdout] test preserves_prompt_escapes_in_double_quoted_assignments ... ok
[INFO] [stdout] test preserves_multiline_single_quoted_argument_payload_indentation ... ok
[INFO] [stdout] test preserves_outdented_else_branch_leading_comments ... ok
[INFO] [stdout] test preserves_nested_parameter_expansions_inside_quoted_strings ... ok
[INFO] [stdout] test preserves_multiline_prompt_assignments_with_backslash_continuations ... ok
[INFO] [stdout] test preserves_multiline_quoted_assignment_payloads_with_nested_expansions ... ok
[INFO] [stdout] test preserves_prefix_comments_before_empty_case_items ... ok
[INFO] [stdout] test preserves_multiline_prompt_assignments_with_leading_continuation_lines ... ok
[INFO] [stdout] test preserves_outdented_dangling_comments_before_fi ... ok
[INFO] [stdout] test preserves_prefix_match_selector_kind_when_formatting ... ok
[INFO] [stdout] test preserves_process_substitution_attached_after_equals ... ok
[INFO] [stdout] test preserves_nested_brace_group_after_case_body_open_comment ... ok
[INFO] [stdout] test preserves_quoted_associative_subscript_syntax_when_formatting ... ok
[INFO] [stdout] test preserves_quoted_command_substitution_multiline_literals ... ok
[INFO] [stdout] test preserves_quoted_heredoc_delimiters_idempotently ... ok
[INFO] [stdout] test preserves_process_substitution_redirect_spacing ... ok
[INFO] [stdout] test preserves_shell_style_variables_inside_arithmetic_expansions ... ok
[INFO] [stdout] test preserves_regex_alternation_operands_in_conditionals ... ok
[INFO] [stdout] test preserves_regex_operands_in_conditionals ... ok
[INFO] [stdout] test preserves_replacement_patterns_that_need_raw_delimiters ... ok
[INFO] [stdout] test preserves_simple_command_redirect_positions ... ok
[INFO] [stdout] test preserves_single_quoted_parameter_operand_command_literals ... ok
[INFO] [stdout] test preserves_single_line_function_bodies ... ok
[INFO] [stdout] test preserves_single_line_subshells ... ok
[INFO] [stdout] test preserves_single_line_nested_function_bodies ... ok
[INFO] [stdout] test preserves_single_line_subshell_with_background_body ... ok
[INFO] [stdout] test preserves_single_quoted_parameter_replacement_literals ... ok
[INFO] [stdout] test preserves_raw_block_multiline_literal_payloads ... ok
[INFO] [stdout] test preserves_quoted_replacements_with_escaped_delimiters ... ok
[INFO] [stdout] test preserves_spacing_after_nested_multiline_subshells_before_other_groups ... ok
[INFO] [stdout] test preserves_relative_tabs_inside_tab_stripped_heredoc_body ... ok
[INFO] [stdout] test preserves_trailing_function_header_comment_when_brace_moves_up ... ok
[INFO] [stdout] test preserves_unmodeled_command_substitution_bodies ... ok
[INFO] [stdout] test preserves_space_indented_dangling_comments_before_fi ... ok
[INFO] [stdout] test preserves_while_condition_on_own_line ... ok
[INFO] [stdout] test preserves_tab_stripped_heredoc_body_source ... ok
[INFO] [stdout] test preserves_process_substitution_redirect_spacing_inside_command_substitutions ... ok
[INFO] [stdout] test preserves_shebang_spacing_before_nested_multiline_groups_idempotently ... ok
[INFO] [stdout] test preserves_single_line_subshells_inside_case_bodies ... ok
[INFO] [stdout] test preserves_word_continuation_without_space_before_backslash ... ok
[INFO] [stdout] test preserves_simple_elif_condition_on_own_line_after_heredoc_branch ... ok
[INFO] [stdout] test preserves_spacing_after_subshells_that_end_with_function_definitions ... ok
[INFO] [stdout] test rendered_heredoc_bodies_preserve_escaped_backslashes ... ok
[INFO] [stdout] test preserves_spacing_after_nested_multiline_subshells_before_simple_commands ... ok
[INFO] [stdout] test separates_numeric_word_before_output_both_redirects ... ok
[INFO] [stdout] test preserves_time_command_trailing_comment_after_redirect ... ok
[INFO] [stdout] test removes_unquoted_assignment_continuation_backslashes ... ok
[INFO] [stdout] test preserves_parameter_replacements_and_slice_offsets ... ok
[INFO] [stdout] test rendered_heredoc_bodies_preserve_escaped_variables ... ok
[INFO] [stdout] test removes_decl_array_assignment_line_continuations ... ok
[INFO] [stdout] test removes_multiline_compound_assignment_line_continuations ... ok
[INFO] [stdout] test quoted_command_substitution_with_escaped_replacements_formats_structurally ... ok
[INFO] [stdout] test space_indented_block_command_substitution_preserves_multiline_literal_payload ... ok
[INFO] [stdout] test space_indented_block_command_substitution_formats_shell_around_multiline_literal ... ok
[INFO] [stdout] test space_indented_command_substitution_normalizes_with_spaces ... ok
[INFO] [stdout] test process_substitution_heredoc_in_assignment_keeps_literal_tail_unindented ... ok
[INFO] [stdout] test shifts_raw_pipeline_compound_bodies_with_continuation ... ok
[INFO] [stdout] test raw_block_command_substitution_indents_backslash_continuations_before_comment ... ok
[INFO] [stdout] test space_indented_binary_next_line_command_substitution_keeps_continuations ... ok
[INFO] [stdout] test switch_case_indent_indents_patterns_and_bodies ... ok
[INFO] [stdout] test space_redirects_insert_spaces_between_operator_and_target ... ok
[INFO] [stdout] test splits_redirect_only_statement_after_background ... ok
[INFO] [stdout] test splits_following_statement_after_background ... ok
[INFO] [stdout] test trailing_comments_on_function_closing_braces_do_not_poison_following_layout ... ok
[INFO] [stdout] test trailing_newline_preserves_operator_prefixed_comment_backslash ... ok
[INFO] [stdout] test tab_stripping_heredocs_indent_body_with_context ... ok
[INFO] [stdout] test standalone_brace_groups_do_not_consume_later_file_comments ... ok
[INFO] [stdout] test preserves_repeated_inline_substitution_continuation_indent ... ok
[INFO] [stdout] test splits_nested_case_body_when_outer_terminator_was_on_next_line ... ok
[INFO] [stdout] test splits_multistatement_loop_conditions_like_shfmt ... ok
[INFO] [stdout] test strips_redirect_residual_indent_in_compound_assignment_command_substitutions ... ok
[INFO] [stdout] test standalone_assignments_do_not_gain_trailing_spaces ... ok
[INFO] [stdout] test trims_arithmetic_command_delimiter_padding ... ok
[INFO] [stdout] test splits_multistatement_if_conditions_like_shfmt ... ok
[INFO] [stdout] test trims_final_case_pattern_continuation_before_close_paren ... ok
[INFO] [stdout] test tab_stripped_heredoc_closer_follows_context_indent ... ok
[INFO] [stdout] test strips_residual_indent_from_continued_array_rows ... ok
[INFO] [stdout] test trims_trailing_comment_whitespace ... ok
[INFO] [stdout] test terminates_legacy_inline_do_brace_group_ending_in_if ... ok
[INFO] [stdout] test trims_nested_inline_command_substitution_padding ... ok
[INFO] [stdout] test raw_block_command_substitution_strips_wrapper_indent_with_comments ... ok
[INFO] [stdout] test trims_source_indent_from_block_command_substitutions ... ok
[INFO] [stdout] test trims_command_substitution_padding_inside_arithmetic_expansions ... ok
[INFO] [stdout] test trims_arithmetic_expansion_padding_inside_double_quotes ... ok
[INFO] [stdout] test trims_command_substitution_close_line_continuations ... ok
[INFO] [stdout] test splits_multistatement_elif_conditions_like_shfmt ... ok
[INFO] [stdout] test trims_inline_command_substitution_padding ... ok
[INFO] [stdout] test stable_formatter_fixtures_are_idempotent ... ok
[INFO] [stderr]      Running tests/oracle_shfmt.rs (/opt/rustwide/target/debug/deps/oracle_shfmt-cb6c001703f48e2d)
[INFO] [stdout] test zsh_only_forms_round_trip_without_corruption ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 515 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.06s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test large_corpus_matches_shfmt ... ignored, requires SHUCK_RUN_SHFMT_ORACLE=1, SHUCK_TEST_LARGE_CORPUS=1, and shfmt on PATH
[INFO] [stdout] test selected_fixtures_match_shfmt ... ignored, requires SHUCK_RUN_SHFMT_ORACLE=1 and shfmt on PATH (for example via `nix develop`)
[INFO] [stdout] test tests::same_location_with_changed_hash_is_blocking ... ok
[INFO] [stdout] test tests::exact_allowlist_match_is_nonblocking ... ok
[INFO] [stdout] test tests::missing_allowlist_entry_is_nonblocking_stale_hint ... ok
[INFO] [stdout] test tests::shuck_formatter_errors_remain_blocking ... ok
[INFO] [stdout] test tests::new_path_line_mismatch_is_blocking ... ok
[INFO] [stdout] test tests::parse_shfmt_hunk_header_reads_shfmt_side_range ... ok
[INFO] [stdout] test tests::committed_allowlist_loads_and_validates ... ok
[INFO] [stderr]    Doc-tests shuck_formatter
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 7 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 0.09s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "b0cd6e0f6bcb537cedf7ac4041ae67e349ab4e581512e33082c0174b78a17605", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b0cd6e0f6bcb537cedf7ac4041ae67e349ab4e581512e33082c0174b78a17605", kill_on_drop: false }`
[INFO] [stdout] b0cd6e0f6bcb537cedf7ac4041ae67e349ab4e581512e33082c0174b78a17605
