[INFO] fetching crate sprawl-guard-lib 0.2.0...
[INFO] testing sprawl-guard-lib-0.2.0 against 1.99.0-beta.8 for beta-1.100-2
[INFO] extracting crate sprawl-guard-lib 0.2.0 into /workspace/builds/worker-2-tc1/source
[INFO] started tweaking crates.io crate sprawl-guard-lib 0.2.0
[INFO] finished tweaking crates.io crate sprawl-guard-lib 0.2.0
[INFO] tweaked toml for crates.io crate sprawl-guard-lib 0.2.0 written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate sprawl-guard-lib 0.2.0 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 sprawl-guard-lib 0.2.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded ref-cast v1.0.26
[INFO] [stderr]   Downloaded tokei v14.0.0
[INFO] [stderr]   Downloaded json5 v0.4.1
[INFO] [stderr]   Downloaded clap-cargo v0.18.3
[INFO] [stderr]   Downloaded kinded v0.5.0
[INFO] [stderr]   Downloaded ref-cast-impl v1.0.26
[INFO] [stderr]   Downloaded table_formatter v0.6.1
[INFO] [stderr]   Downloaded term_size v0.3.2
[INFO] [stderr]   Downloaded etcetera v0.8.0
[INFO] [stderr]   Downloaded nutype v0.7.0
[INFO] [stderr]   Downloaded grep-matcher v0.1.8
[INFO] [stderr]   Downloaded kinded_macros v0.5.0
[INFO] [stderr]   Downloaded pest_generator v2.8.7
[INFO] [stderr]   Downloaded pest_derive v2.8.7
[INFO] [stderr]   Downloaded encoding_rs_io v0.1.7
[INFO] [stderr]   Downloaded pest_meta v2.8.7
[INFO] [stderr]   Downloaded grep-searcher v0.1.16
[INFO] [stderr]   Downloaded ignore v0.4.26
[INFO] [stderr]   Downloaded colored v2.2.0
[INFO] [stderr]   Downloaded nutype_macros v0.7.0
[INFO] [stderr]   Downloaded zerocopy-derive v0.8.54
[INFO] [stderr]   Downloaded cc v1.2.67
[INFO] [stderr]   Downloaded pest v2.8.7
[INFO] [stderr]   Downloaded regex v1.13.0
[INFO] [stderr]   Downloaded zerocopy v0.8.54
[INFO] [stderr]   Downloaded bstr v1.12.3
[INFO] [stderr]   Downloaded regex-automata v0.4.15
[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] 15d3accc3ea9e56e1b2c997f9cf4370cddd768f89ef7a8dfd91b964853df6d57
[INFO] running `Command { std: "docker" "start" "15d3accc3ea9e56e1b2c997f9cf4370cddd768f89ef7a8dfd91b964853df6d57", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "15d3accc3ea9e56e1b2c997f9cf4370cddd768f89ef7a8dfd91b964853df6d57", 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" "15d3accc3ea9e56e1b2c997f9cf4370cddd768f89ef7a8dfd91b964853df6d57" "/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" "15d3accc3ea9e56e1b2c997f9cf4370cddd768f89ef7a8dfd91b964853df6d57", 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" "15d3accc3ea9e56e1b2c997f9cf4370cddd768f89ef7a8dfd91b964853df6d57" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling quote v1.0.46
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling zerocopy v0.8.54
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling siphasher v1.0.3
[INFO] [stderr]    Compiling crossbeam-utils v0.8.22
[INFO] [stderr]    Compiling bstr v1.12.3
[INFO] [stderr]    Compiling phf_shared v0.11.3
[INFO] [stderr]    Compiling unicode-segmentation v1.13.3
[INFO] [stderr]    Compiling log v0.4.33
[INFO] [stderr]    Compiling ucd-trie v0.1.7
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling pest v2.8.7
[INFO] [stderr]    Compiling phf v0.11.3
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling regex-automata v0.4.15
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.20
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling libm v0.2.16
[INFO] [stderr]    Compiling pest_meta v2.8.7
[INFO] [stderr]    Compiling crossbeam-deque v0.8.7
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]    Compiling chrono v0.4.45
[INFO] [stderr]    Compiling deunicode v1.6.2
[INFO] [stderr]    Compiling bitflags v2.13.0
[INFO] [stderr]    Compiling slug v0.1.6
[INFO] [stderr]    Compiling convert_case v0.11.0
[INFO] [stderr]    Compiling smallvec v1.15.2
[INFO] [stderr]    Compiling regex v1.13.0
[INFO] [stderr]    Compiling parse-zoneinfo v0.3.1
[INFO] [stderr]    Compiling globset v0.4.18
[INFO] [stderr]    Compiling pest_generator v2.8.7
[INFO] [stderr]    Compiling humansize v2.1.3
[INFO] [stderr]    Compiling anstyle v1.0.14
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling ignore v0.4.26
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling clap_lex v1.1.0
[INFO] [stderr]    Compiling rand v0.8.7
[INFO] [stderr]    Compiling percent-encoding v2.3.2
[INFO] [stderr]    Compiling winnow v0.7.15
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling globwalk v0.9.1
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling pest_derive v2.8.7
[INFO] [stderr]    Compiling kinded_macros v0.5.0
[INFO] [stderr]    Compiling phf_generator v0.11.3
[INFO] [stderr]    Compiling json5 v0.4.1
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling phf_codegen v0.11.3
[INFO] [stderr]    Compiling chrono-tz-build v0.3.0
[INFO] [stderr]    Compiling chrono-tz v0.9.0
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling nutype_macros v0.7.0
[INFO] [stderr]    Compiling syn v3.0.3
[INFO] [stderr]    Compiling toml_write v0.1.2
[INFO] [stderr]    Compiling ref-cast v1.0.26
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling encoding_rs_io v0.1.7
[INFO] [stderr]    Compiling kinded v0.5.0
[INFO] [stderr]    Compiling derive_arbitrary v1.4.2
[INFO] [stderr]    Compiling serde_derive_internals v0.29.1
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling itertools v0.11.0
[INFO] [stderr]    Compiling colored v2.2.0
[INFO] [stderr]    Compiling memmap2 v0.9.11
[INFO] [stderr]    Compiling grep-matcher v0.1.8
[INFO] [stderr]    Compiling home v0.5.12
[INFO] [stderr]    Compiling urlencoding v2.1.3
[INFO] [stderr]    Compiling winnow v1.0.3
[INFO] [stderr]    Compiling etcetera v0.8.0
[INFO] [stderr]    Compiling grep-searcher v0.1.16
[INFO] [stderr]    Compiling schemars_derive v1.2.1
[INFO] [stderr]    Compiling toml_parser v1.1.2+spec-1.1.0
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling ref-cast-impl v1.0.26
[INFO] [stderr]    Compiling dashmap v6.2.1
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling clap-cargo v0.18.3
[INFO] [stderr]    Compiling arbitrary v1.4.2
[INFO] [stderr]    Compiling table_formatter v0.6.1
[INFO] [stderr]    Compiling rayon v1.12.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling tera v1.20.1
[INFO] [stderr]    Compiling serde_spanned v1.1.1
[INFO] [stderr]    Compiling toml_datetime v0.7.5+spec-1.1.0
[INFO] [stderr]    Compiling term_size v0.3.2
[INFO] [stderr]    Compiling crossbeam-channel v0.5.16
[INFO] [stderr]    Compiling toml_writer v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling toml v0.9.12+spec-1.1.0
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling schemars v1.2.1
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling nutype v0.7.0
[INFO] [stderr]    Compiling tokei v14.0.0
[INFO] [stderr]    Compiling sprawl-guard-lib v0.2.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 03s
[INFO] running `Command { std: "docker" "inspect" "15d3accc3ea9e56e1b2c997f9cf4370cddd768f89ef7a8dfd91b964853df6d57", 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" "15d3accc3ea9e56e1b2c997f9cf4370cddd768f89ef7a8dfd91b964853df6d57" "/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 bitflags v2.13.0
[INFO] [stderr]    Compiling getrandom v0.4.3
[INFO] [stderr]    Compiling indoc v2.0.7
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling sprawl-guard-lib v0.2.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 14.93s
[INFO] running `Command { std: "docker" "inspect" "15d3accc3ea9e56e1b2c997f9cf4370cddd768f89ef7a8dfd91b964853df6d57", 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" "15d3accc3ea9e56e1b2c997f9cf4370cddd768f89ef7a8dfd91b964853df6d57" "/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.24s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/sprawl_guard_lib-9a73ac2d690bd6c6)
[INFO] [stdout] 
[INFO] [stdout] running 248 tests
[INFO] [stdout] test check::report::tests::report_root::when_path_is_absolute::it_constructs_the_report_root ... ok
[INFO] [stdout] test check::report::tests::report_root::when_path_is_relative::it_rejects_the_report_root ... ok
[INFO] [stdout] test check::runner::tests::when_check_is_path_scoped::it_rejects_missing_scopes ... ok
[INFO] [stdout] test check::directory_fanout::tests::when_languages_share_a_directory_but_not_a_group::it_measures_each_group_independently ... ok
[INFO] [stdout] test check::runner::tests::when_check_is_path_scoped::it_prunes_unreadable_directories_outside_the_scope ... ok
[INFO] [stdout] test check::runner::tests::when_check_is_path_scoped::it_reports_only_violations_under_the_scope ... ok
[INFO] [stdout] test check::runner::tests::when_an_injected_counter_reports_a_different_aggregate_policy::it_recomputes_the_aggregate_from_the_resolved_line_types_and_breakdown ... ok
[INFO] [stdout] test check::runner::tests::when_checking_directory_fan_out::it_counts_path_classified_test_files_as_test_leaves ... ok
[INFO] [stdout] test check::runner::tests::when_checking_directory_fan_out::it_does_not_apply_non_recursive_child_globs_to_the_parent_directory ... ok
[INFO] [stdout] test check::runner::tests::when_checking_directory_fan_out::it_counts_facade_named_files_as_production_leaves ... ok
[INFO] [stdout] test check::runner::tests::when_checking_directory_fan_out::it_applies_path_overrides_to_test_directory_limits ... ok
[INFO] [stdout] test check::runner::tests::when_checking_directory_fan_out::it_applies_path_overrides_to_production_directory_limits ... ok
[INFO] [stdout] test check::runner::tests::when_checking_directory_fan_out::when_a_custom_group_has_role_specific_limits::it_resolves_production_and_test_members_independently ... ok
[INFO] [stdout] test check::runner::tests::when_checking_directory_fan_out::it_counts_tiny_production_files_as_production_leaves ... ok
[INFO] [stdout] test check::runner::tests::when_checking_directory_fan_out::it_reports_directories_and_files_in_deterministic_order ... ok
[INFO] [stdout] test check::runner::tests::when_check_is_path_scoped::it_ignores_ambiguous_language_matches_outside_the_scope ... ok
[INFO] [stdout] test check::runner::tests::when_checking_directory_fan_out::when_a_path_override_matches_the_documentation_group::it_replaces_the_unlimited_default_with_a_finite_limit ... ok
[INFO] [stdout] test check::runner::tests::when_checking_directory_fan_out::when_the_documentation_group_uses_its_default_limit::it_does_not_enforce_the_global_production_limit ... ok
[INFO] [stdout] test check::runner::tests::when_checking_with_a_ratchet_file::it_allows_a_file_equal_to_its_ratchet_ceiling ... ok
[INFO] [stdout] test check::runner::tests::when_checking_with_a_ratchet_file::it_allows_ratchets_below_a_non_violating_actual_when_current_is_not_required ... ok
[INFO] [stdout] test check::runner::tests::when_checking_directory_fan_out::when_a_path_override_matches_a_custom_group::it_replaces_the_group_limit ... ok
[INFO] [stdout] test check::runner::tests::when_checking_with_a_ratchet_file::it_fails_when_a_file_increases_above_its_ratchet_ceiling ... ok
[INFO] [stdout] test check::runner::tests::when_checking_directory_fan_out::it_counts_mixed_language_files_in_the_same_directory ... ok
[INFO] [stdout] test check::runner::tests::when_checking_with_a_ratchet_file::it_treats_ratchets_below_a_non_violating_actual_as_stale ... ok
[INFO] [stdout] test check::runner::tests::when_checking_with_a_ratchet_file::it_fails_when_require_current_finds_a_lower_file_value ... ok
[INFO] [stdout] test check::runner::tests::when_checking_with_a_ratchet_file::it_ignores_out_of_scope_ratchets_for_staleness ... ok
[INFO] [stdout] test check::runner::tests::when_checking_with_a_ratchet_file::when_a_directory_measurement_increases_above_its_ratchet::it_carries_the_source_group_through_the_diagnostic ... ok
[INFO] [stdout] test check::runner::tests::when_path_classified_tests_are_disabled::it_omits_current_measurements_and_treats_existing_ratchets_as_stale ... ok
[INFO] [stdout] test check::runner::tests::when_checking_with_a_ratchet_file::when_an_unlimited_directory_measurement_makes_its_ratchet_stale::it_carries_the_documentation_group_through_the_diagnostic ... ok
[INFO] [stdout] test check::runner::tests::when_recoverable_traversal_errors_occur::it_marks_warn_mode_reports_partial_without_failing_the_check ... ok
[INFO] [stdout] test check::runner::tests::when_multiple_files_violate::it_reports_violations_in_deterministic_order ... ok
[INFO] [stdout] test check::runner::tests::when_checking_with_a_ratchet_file::when_a_directory_ratchet_belongs_to_another_group::it_does_not_cover_the_source_measurement_at_the_same_path ... ok
[INFO] [stdout] test check::runner::tests::when_checking_with_a_ratchet_file::it_fails_when_a_ratcheted_path_is_deleted ... ok
[INFO] [stdout] test check::runner::tests::when_checking_with_a_ratchet_file::it_allows_stale_values_when_require_current_is_disabled ... ok
[INFO] [stdout] test check::runner::tests::when_checking_with_a_ratchet_file::it_applies_directory_ratchet_ceilings ... ok
[INFO] [stdout] test check::runner::tests::when_resolving_limits::it_applies_language_test_limits ... ok
[INFO] [stdout] test check::runner::tests::when_checking_directory_fan_out::when_languages_share_a_custom_group::it_counts_the_custom_group_separately_from_source ... ok
[INFO] [stdout] test check::runner::tests::when_resolving_limits::it_counts_globally_included_comments ... ok
[INFO] [stdout] test check::runner::tests::when_recoverable_traversal_errors_occur::it_collects_incidents_before_failing_in_fail_mode ... ok
[INFO] [stdout] test check::runner::tests::when_rust_cfg_test_preprocessing_fails::it_preserves_every_logical_line_category_from_the_original_source ... ok
[INFO] [stdout] test check::runner::tests::when_resolving_limits::it_applies_later_matching_file_overrides_per_setting ... ok
[INFO] [stdout] test check::runner::tests::when_resolving_limits::it_applies_global_language_and_path_precedence_to_production_file_limits ... ok
[INFO] [stdout] test check::runner::tests::when_resolving_limits::it_allows_a_language_to_replace_the_literate_default ... ok
[INFO] [stdout] test check::runner::tests::when_rust_production_source_contains_cfg_test_items::it_excludes_file_wide_cfg_test_sources_from_the_production_file_count ... ok
[INFO] [stdout] test check::runner::tests::when_rust_production_source_contains_cfg_test_items::it_excludes_cfg_test_items_from_every_logical_line_category ... ok
[INFO] [stdout] test check::runner::tests::when_resolving_limits::it_preserves_earlier_override_settings_when_later_overrides_are_partial ... ok
[INFO] [stdout] test check::runner::tests::when_resolving_limits::it_does_not_apply_language_file_limits_to_directory_fan_out ... ok
[INFO] [stdout] test check::runner::tests::when_rust_test_source_contains_cfg_test_items::it_counts_them_against_the_path_classified_test_file_limit ... ok
[INFO] [stdout] test check::runner::tests::when_resolving_limits::it_counts_literate_prose_by_default ... ok
[INFO] [stdout] test check::runner::tests::when_rust_production_source_contains_cfg_test_items::it_excludes_top_level_cfg_test_items_from_the_production_file_count ... ok
[INFO] [stdout] test check::runner::tests::when_rust_production_source_contains_cfg_test_items::it_counts_cfg_test_items_when_rust_exclusion_is_disabled ... ok
[INFO] [stdout] test check::runner::tests::when_rust_cfg_test_preprocessing_fails::it_warns_and_counts_the_original_source ... ok
[INFO] [stdout] test classification::bundled_languages::bundled_language_exposes_registry_path_metadata ... ok
[INFO] [stdout] test classification::bundled_languages::bundled_language_prefers_exact_filenames_to_extension_owners ... ok
[INFO] [stdout] test check::runner::tests::when_sources_are_within_file_limits::it_passes_without_violations ... ok
[INFO] [stdout] test check::runner::tests::when_source_exceeds_the_byte_size_limit::it_reports_a_file_size_error_before_counting ... ok
[INFO] [stdout] test check::runner::tests::when_source_exceeds_the_byte_size_limit::it_allows_a_source_equal_to_the_byte_size_limit ... ok
[INFO] [stdout] test check::runner::tests::when_test_code_exceeds_the_test_file_limit::it_reports_a_test_file_loc_violation ... ok
[INFO] [stdout] test classification::bundled_languages::bundled_language_does_not_classify_shebang_only_paths ... ok
[INFO] [stdout] test classification::bundled_languages::bundled_language_resolves_canonical_owners_for_ascii_case_insensitive_paths ... ok
[INFO] [stdout] test classification::explain::tests::explain_path::when_explaining_a_broken_symlink_with_a_source_name::it_reports_the_symlink_as_a_non_file ... ok
[INFO] [stdout] test classification::explain::tests::explain_path::when_explaining_a_directory_with_a_source_name::it_reports_the_directory_as_a_non_file ... ok
[INFO] [stdout] test classification::bundled_languages::bundled_language_path_metadata_matches_tokei_path_detection_after_ascii_case_normalization ... ok
[INFO] [stdout] test classification::explain::tests::explain_path::when_explaining_a_hidden_file::it_reports_the_file_as_ignored_by_default ... ok
[INFO] [stdout] test classification::explain::tests::explain_path::when_explaining_a_globally_excluded_file::it_reports_the_global_exclusion ... ok
[INFO] [stdout] test classification::explain::tests::explain_path::when_explaining_a_gitignored_file::it_reports_the_file_as_ignored ... ok
[INFO] [stdout] test classification::explain::tests::explain_path::when_explaining_a_file_that_matches_multiple_languages::it_reports_the_ambiguity ... ok
[INFO] [stdout] test classification::explain::tests::explain_path::when_explaining_a_file_excluded_by_multiple_languages::it_reports_all_excluding_languages ... ok
[INFO] [stdout] test classification::explain::tests::explain_path::when_explaining_a_source_file::it_reports_resolved_limits_and_matching_overrides ... ok
[INFO] [stdout] test classification::explain::tests::explain_path::when_explaining_a_language_excluded_file::it_reports_the_language_exclusion ... ok
[INFO] [stdout] test check::runner::tests::when_source_exceeds_the_production_file_limit::it_reports_a_file_loc_violation ... ok
[INFO] [stdout] test classification::explain::tests::explain_path::when_explaining_a_symlink_to_a_file_outside_the_root::it_reports_the_symlink_as_a_non_file ... ok
[INFO] [stdout] test classification::explain::tests::explain_path::when_explaining_a_source_file::it_reports_rust_cfg_test_preprocessing_status ... ok
[INFO] [stdout] test classification::explain::tests::explain_path::when_explaining_a_file_under_a_symlinked_directory::it_reports_the_symlink_path ... ok
[INFO] [stdout] test classification::explain::tests::explain_path::when_explaining_a_source_file::it_rejects_sources_above_the_byte_size_limit_before_rust_cfg_explanation ... ok
[INFO] [stdout] test classification::explain::tests::explain_path::when_explaining_a_test_file_with_path_tests_disabled::it_reports_the_test_exclusion ... ok
[INFO] [stdout] test classification::explain::tests::explain_path::when_the_root_is_a_symlink::it_reports_absolute_symlink_non_files_through_the_symlinked_root ... ok
[INFO] [stdout] test classification::explain::tests::explain_path::when_the_traversal_entry_limit_is_reached::it_reports_a_traversal_limit_error ... ok
[INFO] [stdout] test classification::explain::tests::explain_path::when_explaining_a_source_file::it_reports_the_file_as_source ... ok
[INFO] [stdout] test classification::explain::tests::explain_path::when_explaining_a_source_file::it_reports_prefilter_skips_for_rust_sources_without_cfg_test ... ok
[INFO] [stdout] test classification::explain::tests::explain_path::when_the_root_is_a_symlink::it_reports_absolute_file_symlink_paths_through_the_symlinked_root ... ok
[INFO] [stdout] test classification::explain::tests::explain_path::when_the_root_is_a_symlink::it_accepts_absolute_paths_through_the_symlinked_root ... ok
[INFO] [stdout] test classification::source_discovery::matcher_tests::discover_sources::when_language_paths_are_authored::a_custom_extension_uses_its_languages_resolved_custom_group ... ok
[INFO] [stdout] test classification::source_discovery::matcher_tests::discover_sources::when_language_include_and_exclude_are_overridden::it_uses_the_user_patterns_instead_of_defaults ... ok
[INFO] [stdout] test classification::source_discovery::matcher_tests::discover_sources::when_language_paths_are_authored::user_globs_remain_case_sensitive ... ok
[INFO] [stdout] test classification::source_discovery::matcher_tests::discover_sources::when_language_paths_are_authored::additional_globs_preserve_bundled_paths ... ok
[INFO] [stdout] test classification::source_discovery::matcher_tests::discover_sources::when_multiple_languages_match::it_applies_language_excludes_before_reporting_ambiguity ... ok
[INFO] [stdout] test classification::source_discovery::matcher_tests::discover_sources::when_language_paths_are_authored::an_extension_can_be_reassigned_from_its_canonical_owner ... ok
[INFO] [stdout] test classification::source_discovery::matcher_tests::discover_sources::when_multiple_languages_match::it_reports_an_ambiguous_language_error ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_a_hidden_directory_contains_sources::it_skips_the_directory_by_default ... ok
[INFO] [stdout] test classification::source_discovery::matcher_tests::discover_sources::when_paths_match_the_bundled_registry::it_does_not_classify_a_shebang_only_path ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_a_hidden_directory_contains_sources::it_includes_the_directory_when_hidden_paths_are_enabled ... ok
[INFO] [stdout] test classification::source_discovery::matcher_tests::discover_sources::when_paths_match_the_bundled_registry::it_classifies_extensions_and_exact_filenames_case_insensitively ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_assigning_automatic_language_groups::it_assigns_literate_languages_to_documentation ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_assigning_automatic_language_groups::it_assigns_non_literate_languages_to_source ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_ignore_file_excludes_a_file::it_does_not_discover_the_file ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_global_excludes_match::it_excludes_matching_sources ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_fdignore_excludes_a_file::it_does_not_discover_the_file ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_max_entries_is_reached::it_reports_a_traversal_limit_error ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_assigning_automatic_language_groups::it_uses_the_resolved_languages_group_for_a_custom_extension ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_max_depth_is_reached::it_skips_sources_below_the_limit ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_gitignore_excludes_a_file::it_does_not_discover_the_file ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_special_files_exist::it_skips_unix_sockets_even_when_the_name_matches_a_source_glob ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_rgignore_excludes_a_file::it_does_not_discover_the_file ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_symlinked_directories_exist::it_reports_collected_traversal_incidents_for_cycles_when_directory_symlinks_are_enabled ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_symlinked_directories_exist::it_descends_through_them_when_all_symlinks_are_enabled ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_symlinked_directories_exist::it_descends_through_them_when_directory_symlinks_are_enabled ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_special_files_exist::it_skips_device_nodes_even_when_the_name_matches_a_source_glob ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_special_files_exist::it_skips_fifos_even_when_the_name_matches_a_source_glob ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_symlinked_directories_exist::it_skips_them_by_default ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_symlinked_directories_exist::it_returns_warning_incidents_when_error_policy_is_warn ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_symlinked_files_exist::it_includes_them_when_all_symlinks_are_enabled ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_symlinked_files_exist::it_includes_them_when_file_symlinks_are_enabled ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_symlinked_files_exist::it_skips_broken_symlinks_when_file_symlinks_are_enabled ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_symlinked_directories_exist::it_skips_them_when_only_file_symlinks_are_enabled ... ok
[INFO] [stdout] test classification::explain::tests::explain_path::when_the_root_is_a_symlink::it_reports_absolute_symlink_non_files_through_a_relative_symlinked_root ... FAILED
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_symlinked_files_exist::it_skips_them_by_default ... ok
[INFO] [stdout] test code_line_counter::tests::when_counting_javascript_source::it_counts_a_representative_non_rust_fixture ... ok
[INFO] [stdout] test code_line_counter::tests::when_counting_source_from_disk::it_uses_tokeis_native_decoding ... ok
[INFO] [stdout] test code_line_counter::tests::when_counting_rust_source::it_excludes_comments_and_blank_lines_using_tokei_semantics ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_test_globs_match::it_excludes_test_matches_when_path_tests_are_disabled ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_symlinked_files_exist::it_skips_them_when_only_directory_symlinks_are_enabled ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_test_globs_match::it_classifies_language_specific_test_matches_as_tests ... ok
[INFO] [stdout] test code_line_counter::tests::when_counting_the_markdown_golden_fixture::it_recursively_summarizes_fenced_rust ... ok
[INFO] [stdout] test code_line_counter::tests::when_counting_the_rust_doc_comment_golden_fixture::it_recursively_summarizes_markdown_and_fenced_rust ... ok
[INFO] [stdout] test config::load::tests::when_config_has_unknown_keys::it_rejects_the_config ... ok
[INFO] [stdout] test config::load::tests::when_config_is_minimal::it_includes_every_tokei_language ... ok
[INFO] [stdout] test config::load::tests::when_config_is_minimal::it_merges_language_defaults ... ok
[INFO] [stdout] test config::load::tests::when_config_include_table_is_sparse::it_keeps_default_include_settings ... ok
[INFO] [stdout] test config::load::tests::when_config_schema_version_is_read::it_accepts_version_one ... ok
[INFO] [stdout] test config::load::tests::when_config_schema_version_is_read::it_assigns_the_current_version_when_no_config_file_exists ... ok
[INFO] [stdout] test classification::source_discovery::tests::discover_sources::when_test_globs_match::it_classifies_global_test_matches_as_tests ... ok
[INFO] [stdout] test config::load::tests::when_both_config_names_exist::it_reports_ambiguity ... ok
[INFO] [stdout] test config::load::tests::when_config_schema_version_is_read::it_rejects_an_unsupported_numeric_version_with_a_typed_error ... ok
[INFO] [stdout] test config::load::tests::when_config_schema_version_is_read::it_rejects_a_nonnumeric_version_as_invalid_toml_schema ... ok
[INFO] [stdout] test code_line_counter::tests::when_counting_inline_html_embedding::it_keeps_parent_delimiters_and_child_code_on_the_same_physical_line ... ok
[INFO] [stdout] test config::load::tests::when_config_schema_version_is_read::it_rejects_a_missing_version_with_a_typed_error ... ok
[INFO] [stdout] test config::load::tests::when_config_toml_is_invalid::it_reports_parse_failure ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_included_line_types_in_path_overrides ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_empty_override_path_lists ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_an_enabled_language_without_included_paths ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_blank_override_reasons ... ok
[INFO] [stdout] test config::load::tests::when_config_is_minimal::it_does_not_materialize_bundled_language_globs_when_serialized ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_duplicate_included_line_types ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_missing_code_in_included_line_types ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_override_entries_with_empty_limit_tables ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_languages_assigned_to_multiple_custom_groups ... ok
[INFO] [stdout] test config::load::tests::when_config_schema_version_is_read::it_serializes_the_version_before_root_tables ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_override_entries_without_limits ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_parent_directory_ratchet_paths ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_invalid_globs ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_override_entries_without_reasons ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_rust_specific_settings_for_other_languages ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_language_and_group_selectors_in_path_overrides ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_invalid_language_group_definitions ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_zero_source_file_byte_limit ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_unknown_test_fanout_keywords ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_unsupported_languages ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_windows_drive_paths_with_forward_slashes ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_windows_style_ratchet_paths ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_zero_limits ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_windows_drive_ratchet_paths ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_zero_traversal_depth ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_unknown_color_modes ... ok
[INFO] [stdout] test config::load::tests::when_include_fragment_contains_non_override_tables::it_rejects_the_fragment ... ok
[INFO] [stdout] test config::load::tests::when_language_config_is_partial::it_adds_paths_without_replacing_bundled_paths ... ok
[INFO] [stdout] test config::load::tests::when_language_config_is_partial::it_allows_a_disabled_language_without_included_paths ... ok
[INFO] [stdout] test config::load::tests::when_include_fragments_match::it_appends_overrides_in_lexicographic_order ... ok
[INFO] [stdout] test config::load::tests::when_language_config_is_partial::it_can_disable_a_language ... ok
[INFO] [stdout] test config::load::tests::when_config_values_are_invalid::it_rejects_zero_traversal_entry_limit ... ok
[INFO] [stdout] test config::load::tests::when_language_groups_are_configured::it_allows_disabled_languages_to_remain_custom_group_members ... ok
[INFO] [stdout] test config::load::tests::when_include_fragment_contains_non_override_tables::it_rejects_a_schema_version_in_the_fragment ... ok
[INFO] [stdout] test config::load::tests::when_language_config_is_partial::it_keeps_language_local_exclusions ... ok
[INFO] [stdout] test config::load::tests::when_language_config_is_partial::it_merges_all_language_file_limit_fields ... ok
[INFO] [stdout] test config::load::tests::when_language_config_is_partial::it_replaces_bundled_paths_with_an_explicit_include ... ok
[INFO] [stdout] test config::load::tests::when_include_globs_match_symlink_directories::it_does_not_descend_into_the_symlink ... ok
[INFO] [stdout] test config::load::tests::when_language_groups_are_configured::it_assigns_custom_members_and_inherits_omitted_global_limits ... ok
[INFO] [stdout] test config::load::tests::when_language_groups_are_configured::it_applies_explicit_documentation_limits_over_unlimited_defaults ... ok
[INFO] [stdout] test ratchet::tests::lookup::when_public_entries_contain_duplicate_keys::it_rejects_them_instead_of_collapsing_a_ceiling ... ok
[INFO] [stdout] test config::load::tests::when_limits_config_is_partial::it_merges_file_line_limits ... ok
[INFO] [stdout] test config::load::tests::when_limits_config_is_partial::it_loads_the_final_inline_path_override_shape ... ok
[INFO] [stdout] test config::load::tests::when_traversal_config_is_partial::it_merges_symlink_and_depth_policy ... ok
[INFO] [stdout] test config::load::tests::when_tests_config_is_partial::it_merges_global_test_globs ... ok
[INFO] [stdout] test config::load::tests::when_limits_config_is_partial::it_accepts_unlimited_fanout_for_both_roles ... ok
[INFO] [stdout] test ratchet::tests::parse::when_a_directory_entry_omits_its_group::it_rejects_the_file ... ok
[INFO] [stdout] test config::load::tests::when_limits_config_is_partial::it_merges_directory_fanout_limits ... ok
[INFO] [stdout] test config::load::tests::when_language_groups_are_configured::it_serializes_authored_groups_without_the_assignment_index_or_source_group ... ok
[INFO] [stdout] test ratchet::tests::parse::when_a_file_entry_path_is_empty::it_rejects_the_file ... ok
[INFO] [stdout] test ratchet::tests::parse::when_an_entry_ceiling_is_zero::it_rejects_file_and_directory_entries ... ok
[INFO] [stdout] test ratchet::tests::parse::when_an_entry_omits_any_required_field::it_rejects_incomplete_directory_entries ... ok
[INFO] [stdout] test ratchet::tests::parse::when_an_entry_contains_unknown_fields::it_rejects_the_legacy_loc_field ... ok
[INFO] [stdout] test ratchet::tests::parse::when_an_entry_omits_any_required_field::it_rejects_incomplete_file_entries ... ok
[INFO] [stdout] test ratchet::tests::parse::when_directory_entries_share_a_path_and_role::it_accepts_distinct_groups ... ok
[INFO] [stdout] test ratchet::tests::parse::when_an_entry_contains_unknown_fields::it_rejects_the_file ... ok
[INFO] [stdout] test ratchet::tests::parse::when_an_entry_role_is_not_supported::it_rejects_the_file ... ok
[INFO] [stdout] test ratchet::tests::parse::when_the_schema_version_is_missing::it_returns_the_dedicated_error ... ok
[INFO] [stdout] test ratchet::tests::parse::when_directory_entries_share_a_path_and_role::it_rejects_a_duplicate_group ... ok
[INFO] [stdout] test ratchet::tests::parse::when_file_entries_share_a_path::it_accepts_distinct_roles ... ok
[INFO] [stdout] test ratchet::tests::parse::when_the_file_uses_the_version_one_shape::it_round_trips_role_tagged_entries ... ok
[INFO] [stdout] test ratchet::tests::parse::when_file_entries_share_a_path::it_rejects_a_duplicate_role ... ok
[INFO] [stdout] test ratchet::tests::parse::when_the_schema_version_is_not_an_integer::it_rejects_the_file ... ok
[INFO] [stdout] test ratchet::tests::parse::when_the_schema_version_is_not_supported::it_rejects_the_file ... ok
[INFO] [stdout] test ratchet::tests::write::when_entries_are_not_in_stable_order::it_sorts_them_before_serializing ... ok
[INFO] [stdout] test ratchet::tests::write::when_public_entries_contain_duplicate_keys::it_rejects_the_file_instead_of_writing_ambiguous_data ... ok
[INFO] [stdout] test rust_cfg::tests::when_a_cfg_predicate_combines_test_with_other_terms::it_excludes_all_predicates_that_require_test ... ok
[INFO] [stdout] test rust_cfg::tests::when_a_top_level_item_requires_test::it_preserves_following_code_after_multibyte_text_on_the_same_line ... ok
[INFO] [stdout] test rust_cfg::tests::when_a_top_level_item_requires_test::it_removes_a_cfg_test_function ... ok
[INFO] [stdout] test ratchet::tests::parse::when_the_file_contains_unknown_fields::it_rejects_the_file ... ok
[INFO] [stdout] test rust_cfg::tests::when_a_top_level_item_requires_test::it_removes_a_cfg_test_module ... ok
[INFO] [stdout] test rust_cfg::tests::when_a_cfg_predicate_combines_test_with_other_terms::it_keeps_any_predicates_that_can_compile_without_test ... ok
[INFO] [stdout] test rust_cfg::tests::when_a_cfg_predicate_combines_test_with_other_terms::it_keeps_doctest_disjunctions_until_doctest_support_exists ... ok
[INFO] [stdout] test rust_cfg::tests::when_rust_parsing_fails::it_warns_and_counts_the_original_source ... ok
[INFO] [stdout] test rust_cfg::tests::when_the_prefilter_does_not_match::it_counts_the_original_source_without_parsing ... ok
[INFO] [stdout] test rust_cfg::tests::when_a_top_level_item_requires_test::it_removes_stacked_outer_attributes_and_doc_comments ... ok
[INFO] [stdout] test value::language_group::tests::when_creating_a_custom_language_group::it_accepts_lowercase_ascii_snake_case_names ... ok
[INFO] [stdout] test value::language_group::tests::when_creating_a_custom_language_group::it_rejects_a_name_that_starts_with_a_digit_or_underscore ... ok
[INFO] [stdout] test rust_cfg::tests::when_cfg_test_is_nested_inside_a_function::it_does_not_exclude_the_nested_block ... ok
[INFO] [stdout] test value::language_group::tests::when_creating_a_custom_language_group::it_rejects_an_empty_name ... ok
[INFO] [stdout] test ratchet::tests::parse::when_optional_sections_are_absent::it_defaults_them_to_empty_lists ... ok
[INFO] [stdout] test rust_cfg::tests::when_the_file_requires_test::it_removes_the_whole_file ... ok
[INFO] [stdout] test value::line_types::tests::when_deserializing_included_line_types::it_rejects_duplicate_members ... ok
[INFO] [stdout] test value::line_types::tests::when_deserializing_included_line_types::it_requires_code ... ok
[INFO] [stdout] test value::line_types::tests::when_deserializing_included_line_types::it_serializes_in_canonical_order ... ok
[INFO] [stdout] test value::language_group::tests::when_creating_a_custom_language_group::it_rejects_automatic_group_names ... ok
[INFO] [stdout] test value::language_group::tests::when_creating_a_custom_language_group::it_rejects_names_with_non_snake_case_characters ... ok
[INFO] [stdout] test value::line_types::tests::when_deserializing_one_included_line_type::it_accepts_each_canonical_value ... ok
[INFO] [stdout] test value::language_group::tests::when_deserializing_a_language_group::it_recovers_automatic_or_valid_custom_variants ... ok
[INFO] [stdout] test value::line_types::tests::when_deserializing_one_included_line_type::it_rejects_an_unknown_value ... ok
[INFO] [stdout] test value::line_types::tests::when_displaying_included_line_types::it_uses_canonical_order_and_names ... ok
[INFO] [stdout] test value::line_types::tests::when_adding_comments_for_a_literate_language::it_preserves_the_global_blank_line_selection ... ok
[INFO] [stdout] test value::line_types::tests::when_summing_line_counts::it_reports_overflow ... ok
[INFO] [stdout] test value::line_types::tests::when_summing_line_counts::it_sums_exactly_the_included_line_types ... ok
[INFO] [stdout] test value::language_group::tests::when_deserializing_a_language_group::it_rejects_invalid_custom_names ... ok
[INFO] [stdout] test value::line_types::tests::when_adding_comments_for_a_literate_language::it_does_not_change_an_existing_comment_selection ... ok
[INFO] [stdout] test value::language_group::tests::when_serializing_a_language_group::it_uses_the_canonical_automatic_or_custom_name ... ok
[INFO] [stdout] test value::path::tests::ratchet_file_path::when_path_is_long::it_accepts_the_normalized_path_without_a_windows_specific_length_limit ... ok
[INFO] [stdout] test value::path::tests::ratchet_file_path::when_path_uses_windows_reserved_name::it_accepts_the_normalized_path_without_platform_specific_filtering ... ok
[INFO] [stdout] test value::path::tests::relative_path::when_checking_scope_containment::it_matches_a_descendant_path ... ok
[INFO] [stdout] test value::path::tests::relative_path::when_checking_scope_containment::it_rejects_plain_string_prefixes ... ok
[INFO] [stdout] test value::path::tests::relative_path::when_deserializing::it_rejects_absolute_paths ... ok
[INFO] [stdout] test value::path::tests::relative_path::when_checking_scope_containment::it_matches_the_same_path ... ok
[INFO] [stdout] test value::path::tests::relative_path::when_path_contains_parent_directory::it_rejects_the_path ... ok
[INFO] [stdout] test value::path::tests::relative_path::when_deserializing::it_rejects_parent_directory_paths ... ok
[INFO] [stdout] test value::path::tests::relative_path::when_checking_scope_containment::it_treats_empty_scope_as_the_repository_root ... ok
[INFO] [stdout] test value::path::tests::relative_path::when_deserializing::it_accepts_normalized_relative_paths ... ok
[INFO] [stdout] test value::path::tests::relative_path::when_path_contains_current_directory::it_removes_current_directory_components ... ok
[INFO] [stdout] test value::path::tests::relative_path::when_path_is_absolute::it_rejects_the_path ... ok
[INFO] [stdout] test value::path::tests::ratchet_file_path::when_path_has_redundant_components::it_stores_the_canonical_repository_relative_path ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- classification::explain::tests::explain_path::when_the_root_is_a_symlink::it_reports_absolute_symlink_non_files_through_a_relative_symlinked_root stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'classification::explain::tests::explain_path::when_the_root_is_a_symlink::it_reports_absolute_symlink_non_files_through_a_relative_symlinked_root' (1967) panicked at src/classification/explain.rs:708:88:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: Custom { kind: ReadOnlyFilesystem, error: PathError { path: "/opt/rustwide/workdir/.tmpK0g0HC", err: Os { code: 30, kind: ReadOnlyFilesystem, message: "Read-only file system" } } }
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5ccf81c39ee1 - std[70759c8f55707aa4]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5ccf81c39ee1 - std[70759c8f55707aa4]::backtrace_rs::backtrace::trace_unsynchronized::<std[70759c8f55707aa4]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5ccf81c39ee1 - std[70759c8f55707aa4]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5ccf81c39ee1 - <<std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[df12db4294e9bfd3]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5ccf81c5170a - <core[df12db4294e9bfd3]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5ccf81c5170a - core[df12db4294e9bfd3]::fmt::write
[INFO] [stdout]    6:     0x5ccf81c3e76c - core[df12db4294e9bfd3]::io::write::default_write_fmt::<alloc[2182bb758b4b3781]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/io/write.rs:402:11
[INFO] [stdout]    7:     0x5ccf81c3e76c - <alloc[2182bb758b4b3781]::vec::Vec<u8> as core[df12db4294e9bfd3]::io::write::Write>::write_fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/io/write.rs:335:13
[INFO] [stdout]    8:     0x5ccf81c12d86 - <std[70759c8f55707aa4]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5ccf81c12d86 - std[70759c8f55707aa4]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5ccf81c30a79 - std[70759c8f55707aa4]::panicking::default_hook
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5ccf8169d670 - <alloc[2182bb758b4b3781]::boxed::Box<dyn for<'a, 'b> core[df12db4294e9bfd3]::ops::function::Fn<(&'a std[70759c8f55707aa4]::panic::PanicHookInfo<'b>,), Output = ()> + core[df12db4294e9bfd3]::marker::Send + core[df12db4294e9bfd3]::marker::Sync> as core[df12db4294e9bfd3]::ops::function::Fn<(&std[70759c8f55707aa4]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/alloc/src/boxed.rs:2334:9
[INFO] [stdout]   12:     0x5ccf8169d670 - test[9d35eded1c95d3be]::test_main_inner::<test[9d35eded1c95d3be]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x5ccf81c30da2 - <alloc[2182bb758b4b3781]::boxed::Box<dyn for<'a, 'b> core[df12db4294e9bfd3]::ops::function::Fn<(&'a std[70759c8f55707aa4]::panic::PanicHookInfo<'b>,), Output = ()> + core[df12db4294e9bfd3]::marker::Send + core[df12db4294e9bfd3]::marker::Sync> as core[df12db4294e9bfd3]::ops::function::Fn<(&std[70759c8f55707aa4]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/alloc/src/boxed.rs:2334:9
[INFO] [stdout]   14:     0x5ccf81c30da2 - std[70759c8f55707aa4]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x5ccf81c12e32 - std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:688:13
[INFO] [stdout]   16:     0x5ccf81c0b7d9 - std[70759c8f55707aa4]::sys::backtrace::__rust_end_short_backtrace::<std[70759c8f55707aa4]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5ccf81c13bdd - __rustc[8fa7c3cbc660c2b3]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x5ccf81c51fac - core[df12db4294e9bfd3]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5ccf81c51d02 - core[df12db4294e9bfd3]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/result.rs:1871:5
[INFO] [stdout]   20:     0x5ccf81526150 - <core[df12db4294e9bfd3]::result::Result<tempfile[60efba7044692457]::dir::TempDir, core[df12db4294e9bfd3]::io::error::Error>>::unwrap
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/result.rs:1232:23
[INFO] [stdout]   21:     0x5ccf81526150 - sprawl_guard_lib[625a14b74ba8d16c]::classification::explain::tests::explain_path::when_the_root_is_a_symlink::it_reports_absolute_symlink_non_files_through_a_relative_symlinked_root
[INFO] [stdout]                                at /opt/rustwide/workdir/src/classification/explain.rs:708:88
[INFO] [stdout]   22:     0x5ccf81517d97 - sprawl_guard_lib[625a14b74ba8d16c]::classification::explain::tests::explain_path::when_the_root_is_a_symlink::it_reports_absolute_symlink_non_files_through_a_relative_symlinked_root::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/classification/explain.rs:705:89
[INFO] [stdout]   23:     0x5ccf81553d16 - <sprawl_guard_lib[625a14b74ba8d16c]::classification::explain::tests::explain_path::when_the_root_is_a_symlink::it_reports_absolute_symlink_non_files_through_a_relative_symlinked_root::{closure#0} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x5ccf8169095b - <fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String> as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x5ccf8169095b - test[9d35eded1c95d3be]::__rust_begin_short_backtrace::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, fn() -> core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:733:18
[INFO] [stdout]   26:     0x5ccf8169dfc5 - test[9d35eded1c95d3be]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:756:74
[INFO] [stdout]   27:     0x5ccf8169dfc5 - <core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<test[9d35eded1c95d3be]::run_test_in_process::{closure#0}> as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   28:     0x5ccf8169dfc5 - std[70759c8f55707aa4]::panicking::catch_unwind::do_call::<core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<test[9d35eded1c95d3be]::run_test_in_process::{closure#0}>, core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:576:43
[INFO] [stdout]   29:     0x5ccf8169dfc5 - std[70759c8f55707aa4]::panicking::catch_unwind::<core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>, core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<test[9d35eded1c95d3be]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x5ccf8169dfc5 - std[70759c8f55707aa4]::panic::catch_unwind::<core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<test[9d35eded1c95d3be]::run_test_in_process::{closure#0}>, core[df12db4294e9bfd3]::result::Result<(), alloc[2182bb758b4b3781]::string::String>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x5ccf8169dfc5 - test[9d35eded1c95d3be]::run_test_in_process
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:756:27
[INFO] [stdout]   32:     0x5ccf8169dfc5 - test[9d35eded1c95d3be]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:677:43
[INFO] [stdout]   33:     0x5ccf81697884 - test[9d35eded1c95d3be]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/test/src/lib.rs:707:41
[INFO] [stdout]   34:     0x5ccf81697884 - std[70759c8f55707aa4]::sys::backtrace::__rust_begin_short_backtrace::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x5ccf816a1122 - std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   36:     0x5ccf816a1122 - <core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   37:     0x5ccf816a1122 - std[70759c8f55707aa4]::panicking::catch_unwind::do_call::<core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:576:43
[INFO] [stdout]   38:     0x5ccf816a1122 - std[70759c8f55707aa4]::panicking::catch_unwind::<(), core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x5ccf816a1122 - std[70759c8f55707aa4]::panic::catch_unwind::<core[df12db4294e9bfd3]::panic::unwind_safe::AssertUnwindSafe<std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x5ccf816a1122 - std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked::<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   41:     0x5ccf816a1122 - <std[70759c8f55707aa4]::thread::lifecycle::spawn_unchecked<test[9d35eded1c95d3be]::run_test::{closure#1}, ()>::{closure#1} as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x5ccf81c39219 - <alloc[2182bb758b4b3781]::boxed::Box<dyn core[df12db4294e9bfd3]::ops::function::FnOnce<(), Output = ()> + core[df12db4294e9bfd3]::marker::Send> as core[df12db4294e9bfd3]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/alloc/src/boxed.rs:2320:9
[INFO] [stdout]   43:     0x5ccf81c39219 - <std[70759c8f55707aa4]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/dfb0accb7f508ae8be965d8629557221c889dd98/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   44:     0x7ba86f1dadfa - <unknown>
[INFO] [stdout]   45:     0x7ba86f26e3d4 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     classification::explain::tests::explain_path::when_the_root_is_a_symlink::it_reports_absolute_symlink_non_files_through_a_relative_symlinked_root
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 247 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.86s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "15d3accc3ea9e56e1b2c997f9cf4370cddd768f89ef7a8dfd91b964853df6d57", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "15d3accc3ea9e56e1b2c997f9cf4370cddd768f89ef7a8dfd91b964853df6d57", kill_on_drop: false }`
[INFO] [stdout] 15d3accc3ea9e56e1b2c997f9cf4370cddd768f89ef7a8dfd91b964853df6d57
