[INFO] fetching crate spherekit-text 2026.8.0...
[INFO] testing spherekit-text-2026.8.0 against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate spherekit-text 2026.8.0 into /workspace/builds/worker-6-tc2/source
[INFO] started tweaking crates.io crate spherekit-text 2026.8.0
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate spherekit-text 2026.8.0
[INFO] tweaked toml for crates.io crate spherekit-text 2026.8.0 written to /workspace/builds/worker-6-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate spherekit-text 2026.8.0 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate spherekit-text 2026.8.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 083bc2611f3a2f3902b93c58e14a29f82d4ec5821656041d33b2aef5b9ff6227
[INFO] running `Command { std: "docker" "start" "083bc2611f3a2f3902b93c58e14a29f82d4ec5821656041d33b2aef5b9ff6227", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "083bc2611f3a2f3902b93c58e14a29f82d4ec5821656041d33b2aef5b9ff6227", 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" "083bc2611f3a2f3902b93c58e14a29f82d4ec5821656041d33b2aef5b9ff6227" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "083bc2611f3a2f3902b93c58e14a29f82d4ec5821656041d33b2aef5b9ff6227", 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" "083bc2611f3a2f3902b93c58e14a29f82d4ec5821656041d33b2aef5b9ff6227" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling libm v0.2.16
[INFO] [stderr]    Compiling arrayvec v0.7.8
[INFO] [stderr]    Compiling thiserror v2.0.20
[INFO] [stderr]    Compiling bitflags v2.13.1
[INFO] [stderr]    Compiling float_next_after v1.0.0
[INFO] [stderr]    Compiling smallvec v1.15.2
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling slotmap v1.1.1
[INFO] [stderr]    Compiling roxmltree v0.20.0
[INFO] [stderr]    Compiling log v0.4.33
[INFO] [stderr]    Compiling tinyvec v1.12.0
[INFO] [stderr]    Compiling unicode-ccc v0.4.0
[INFO] [stderr]    Compiling unicode-properties v0.1.4
[INFO] [stderr]    Compiling unicode-script v0.5.8
[INFO] [stderr]    Compiling syn v3.0.3
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling unicode-bidi-mirroring v0.4.0
[INFO] [stderr]    Compiling unicode-bidi v0.3.18
[INFO] [stderr]    Compiling unicode-linebreak v0.1.5
[INFO] [stderr]    Compiling fontconfig-parser v0.5.8
[INFO] [stderr]    Compiling fontdb v0.24.0
[INFO] [stderr]    Compiling core_maths v0.1.1
[INFO] [stderr]    Compiling ttf-parser v0.25.1
[INFO] [stderr]    Compiling bytemuck_derive v1.12.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.20
[INFO] [stderr]    Compiling euclid v0.22.14
[INFO] [stderr]    Compiling bytemuck v1.25.2
[INFO] [stderr]    Compiling lyon_geom v1.0.19
[INFO] [stderr]    Compiling spherekit-core v2026.8.0
[INFO] [stderr]    Compiling lyon_path v1.0.19
[INFO] [stderr]    Compiling rustybuzz v0.20.1
[INFO] [stderr]    Compiling lyon_algorithms v1.0.20
[INFO] [stderr]    Compiling lyon_tessellation v1.0.20
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling lyon v1.0.19
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling spherekit-render v2026.8.0
[INFO] [stderr]    Compiling spherekit-text v2026.8.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 34.34s
[INFO] running `Command { std: "docker" "inspect" "083bc2611f3a2f3902b93c58e14a29f82d4ec5821656041d33b2aef5b9ff6227", 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" "083bc2611f3a2f3902b93c58e14a29f82d4ec5821656041d33b2aef5b9ff6227" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling crc32fast v1.5.0
[INFO] [stderr]    Compiling simd-adler32 v0.3.10
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling quick-error v2.0.1
[INFO] [stderr]    Compiling byteorder-lite v0.1.0
[INFO] [stderr]    Compiling zune-core v0.5.3
[INFO] [stderr]    Compiling pxfm v0.1.30
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling fdeflate v0.3.7
[INFO] [stderr]    Compiling image-webp v0.2.4
[INFO] [stderr]    Compiling zune-jpeg v0.5.15
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling png v0.18.1
[INFO] [stderr]    Compiling euclid v0.22.14
[INFO] [stderr]    Compiling lyon_geom v1.0.19
[INFO] [stderr]    Compiling lyon_path v1.0.19
[INFO] [stderr]    Compiling lyon_algorithms v1.0.20
[INFO] [stderr]    Compiling lyon_tessellation v1.0.20
[INFO] [stderr]    Compiling moxcms v0.7.11
[INFO] [stderr]    Compiling lyon v1.0.19
[INFO] [stderr]    Compiling spherekit-render v2026.8.0
[INFO] [stderr]    Compiling spherekit-text v2026.8.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling image v0.25.9
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 1m 16s
[INFO] running `Command { std: "docker" "inspect" "083bc2611f3a2f3902b93c58e14a29f82d4ec5821656041d33b2aef5b9ff6227", 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" "083bc2611f3a2f3902b93c58e14a29f82d4ec5821656041d33b2aef5b9ff6227" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.14s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/spherekit-text/d036cc0a15724352/out/spherekit_text-d036cc0a15724352)
[INFO] [stdout] 
[INFO] [stdout] running 281 tests
[INFO] [stdout] test atlas::tests::an_empty_glyph_costs_no_atlas_area ... ok
[INFO] [stdout] test atlas::tests::dirty_regions_cover_every_glyph_and_are_taken_once ... ok
[INFO] [stdout] test atlas::tests::clear_and_compact_invalidate_cached_placements ... ok
[INFO] [stdout] test atlas::tests::compacting_a_mixed_height_atlas_loses_nothing ... ok
[INFO] [stdout] test atlas::tests::clear_keeps_page_mirrors_but_release_memory_does_not ... ok
[INFO] [stdout] test atlas::tests::a_full_atlas_recovers_by_evicting_a_page_nobody_touched_this_frame ... ok
[INFO] [stdout] test atlas::tests::a_glyph_bigger_than_u32_area_does_not_overflow ... ok
[INFO] [stdout] test atlas::tests::adjacent_dirty_bands_coalesce_into_one_upload ... ok
[INFO] [stdout] test atlas::tests::evict_unused_spares_pages_used_recently_enough ... ok
[INFO] [stdout] test atlas::tests::a_cleared_page_is_not_re_uploaded_because_its_texture_is_still_correct ... ok
[INFO] [stdout] test atlas::tests::a_glyph_that_changes_shape_under_one_key_is_re_accounted ... ok
[INFO] [stdout] test atlas::tests::a_recycled_page_re_uploads_everything_it_zeroed ... ok
[INFO] [stdout] test atlas::tests::compaction_reclaims_forgotten_texels_and_preserves_the_survivors ... ok
[INFO] [stdout] test atlas::tests::config_is_clamped_to_the_device_limit ... ok
[INFO] [stdout] test atlas::tests::glyph_pixels_land_at_the_placement_the_uv_points_at ... ok
[INFO] [stdout] test atlas::tests::glyph_larger_than_a_page_is_rejected_not_panicked_on ... ok
[INFO] [stdout] test atlas::tests::an_absurd_page_size_is_clamped_instead_of_overflowing ... ok
[INFO] [stdout] test atlas::tests::neighbours_are_separated_by_at_least_one_texel ... ok
[INFO] [stdout] test atlas::tests::mark_all_dirty_reuploads_whole_live_pages ... ok
[INFO] [stdout] test atlas::tests::padding_gutter_is_cleared_even_in_a_recycled_page ... ok
[INFO] [stdout] test atlas::tests::pages_open_in_order_and_the_limit_returns_atlas_full ... ok
[INFO] [stdout] test atlas::tests::mixed_size_glyphs_never_overlap ... ok
[INFO] [stdout] test atlas::tests::forgetting_a_glyph_gives_its_area_back_to_the_accounting ... ok
[INFO] [stdout] test atlas::tests::utilization_stays_in_range_and_climbs_as_glyphs_are_added ... ok
[INFO] [stdout] test atlas::tests::malformed_glyph_data_is_reported_not_blitted ... ok
[INFO] [stdout] test atlas::tests::stats_are_internally_consistent ... ok
[INFO] [stdout] test atlas::tests::eviction_frees_memory_and_pages_are_reused_not_reallocated ... ok
[INFO] [stdout] test atlas::tests::uv_rects_are_normalised_and_map_back_to_texel_centres ... ok
[INFO] [stdout] test atlas::tests::separate_formats_never_share_a_page ... ok
[INFO] [stdout] test atlas::tests::shelf_slack_controls_how_aggressively_rows_are_shared ... ok
[INFO] [stdout] test atlas::tests::the_memory_budget_evicts_until_it_is_met ... ok
[INFO] [stdout] test atlas::tests::reinserting_a_resident_glyph_is_a_no_op ... ok
[INFO] [stdout] test atlas::tests::compaction_keeps_empty_glyph_placements ... ok
[INFO] [stdout] test atlas::tests::scattered_dirty_bands_are_capped_without_losing_coverage ... ok
[INFO] [stdout] test atlas::tests::zero_padding_packs_flush_but_is_still_correct ... ok
[INFO] [stdout] test cache::tests::a_multi_family_fallback_list_is_not_confused_by_concatenation ... ok
[INFO] [stdout] test cache::tests::a_zero_budget_cache_accepts_nothing_and_does_not_spin ... ok
[INFO] [stdout] test cache::tests::a_glyph_cache_budget_of_one_entry_still_works ... ok
[INFO] [stdout] test cache::tests::glyph_cache_drops_everything_when_the_atlas_moves ... ok
[INFO] [stdout] test cache::tests::cost_accounting_reflects_the_payload_not_just_the_header ... ok
[INFO] [stdout] test cache::tests::empty_text_is_cacheable ... ok
[INFO] [stdout] test cache::tests::fill_and_hit_rate_report_sensibly_when_empty ... ok
[INFO] [stdout] test cache::tests::replacing_a_key_re_costs_it_rather_than_double_counting ... ok
[INFO] [stdout] test cache::tests::get_promotes_so_the_other_entry_is_evicted_instead ... ok
[INFO] [stdout] test cache::tests::hit_and_miss_counters_are_accurate ... ok
[INFO] [stdout] test cache::tests::glyph_cache_hits_misses_and_eviction ... ok
[INFO] [stdout] test cache::tests::eviction_drops_the_least_recently_used_not_the_newest ... ok
[INFO] [stdout] test cache::tests::none_and_zero_wrap_width_are_different_keys ... ok
[INFO] [stdout] test cache::tests::a_nan_wrap_width_is_still_a_usable_key ... ok
[INFO] [stdout] test cache::tests::pop_lru_walks_the_list_in_order_and_then_returns_none ... ok
[INFO] [stdout] test cache::tests::a_value_larger_than_the_budget_is_rejected_not_ruinous ... ok
[INFO] [stdout] test cache::tests::removing_the_only_entry_leaves_a_consistent_list ... ok
[INFO] [stdout] test cache::tests::clear_empties_the_cache_but_keeps_lifetime_counters ... ok
[INFO] [stdout] test caret::tests::a_caret_past_the_end_clamps_rather_than_failing ... ok
[INFO] [stdout] test cache::tests::shape_cache_evicts_under_pressure_instead_of_growing ... ok
[INFO] [stdout] test cache::tests::shape_cache_verifies_the_entry_so_a_collision_cannot_return_a_wrong_layout ... ok
[INFO] [stdout] test cache::tests::style_hashing_covers_every_field_that_changes_the_output ... ok
[INFO] [stdout] test caret::tests::an_empty_layout_has_no_caret_to_report ... ok
[INFO] [stdout] test caret::tests::a_caret_inside_a_multi_byte_cluster_interpolates ... ok
[INFO] [stdout] test caret::tests::a_caret_sits_at_the_leading_edge_of_the_cluster_it_precedes ... ok
[INFO] [stdout] test font::tests::an_empty_database_resolves_to_nothing_without_panicking ... ok
[INFO] [stdout] test font::tests::bucket_list_covers_every_variant_once ... ok
[INFO] [stdout] test font::tests::buckets_classify_representative_codepoints ... ok
[INFO] [stdout] test caret::tests::a_selection_over_adjacent_glyphs_is_one_rectangle ... ok
[INFO] [stdout] test caret::tests::a_visually_split_selection_is_more_than_one_rectangle ... ok
[INFO] [stdout] test caret::tests::an_empty_range_selects_nothing ... ok
[INFO] [stdout] test cache::tests::shape_cache_remove_and_clear ... ok
[INFO] [stdout] test cache::tests::shape_cache_round_trips_a_layout ... ok
[INFO] [stdout] test cache::tests::shape_cache_separates_text_style_and_wrap_width ... ok
[INFO] [stdout] test font::tests::missing_font_file_reports_io_not_panic ... ok
[INFO] [stdout] test font::tests::stale_and_unknown_ids_are_rejected ... ok
[INFO] [stdout] test cache::tests::shrinking_the_budget_evicts_immediately ... ok
[INFO] [stdout] test caret::tests::hit_testing_snaps_to_the_nearer_edge ... ok
[INFO] [stdout] test cache::tests::slots_are_recycled_so_churn_does_not_grow_the_backing_store ... ok
[INFO] [stdout] test caret::tests::the_caret_rect_is_zero_width_and_a_full_line_tall ... ok
[INFO] [stdout] test cache::tests::an_enormous_paragraph_is_refused_without_flushing_the_labels ... ok
[INFO] [stdout] test font::tests::garbage_font_data_is_rejected_cleanly ... ok
[INFO] [stdout] test font::tests::every_bucket_has_a_usable_family_list ... ok
[INFO] [stdout] test font::tests::system_metrics_are_normalised_to_em_units ... ok
[INFO] [stdout] test font::tests::resolution_is_memoised_and_stable ... ok
[INFO] [stdout] test font::weight_tests::asking_for_bold_resolves_a_different_face_than_regular ... FAILED
[INFO] [stdout] test font::tests::variations_do_not_leak_between_borrows ... ok
[INFO] [stdout] test font::tests::an_unknown_family_substitutes_rather_than_failing ... ok
[INFO] [stdout] test font::tests::coverage_matches_the_face_cmap ... FAILED
[INFO] [stdout] test hint::tests::a_non_finite_input_passes_through_untouched ... ok
[INFO] [stdout] test hint::tests::a_round_letters_apex_is_given_the_flat_letters_row ... ok
[INFO] [stdout] test hint::face_tests::a_round_letter_rasterises_to_the_same_height_as_a_flat_one ... ok
[INFO] [stdout] test hint::tests::a_face_with_no_round_letters_is_unaffected ... ok
[INFO] [stdout] test hint::face_tests::fitting_darkens_the_top_row_of_a_flat_topped_letter ... ok
[INFO] [stdout] test hint::tests::a_size_that_already_lands_on_the_grid_and_has_no_overshoot_needs_no_fit ... ok
[INFO] [stdout] test hint::tests::a_face_already_on_the_grid_still_gets_a_fit_if_it_has_an_overshoot ... ok
[INFO] [stdout] test hint::tests::a_round_letters_foot_is_given_the_baseline ... ok
[INFO] [stdout] test hint::tests::every_zone_lands_on_a_whole_pixel ... ok
[INFO] [stdout] test hint::tests::a_size_too_small_to_separate_the_zones_is_refused ... ok
[INFO] [stdout] test hint::tests::an_overshoot_that_would_reach_the_next_line_is_refused ... ok
[INFO] [stdout] test hint::tests::implausible_metrics_are_refused_rather_than_fitted ... ok
[INFO] [stdout] test hint::tests::an_overshoot_of_half_a_pixel_or_more_is_left_alone ... ok
[INFO] [stdout] test hint::tests::nothing_moves_further_than_one_device_pixel ... ok
[INFO] [stdout] test font::tests::with_face_hands_out_a_parsed_shapeable_face ... ok
[INFO] [stdout] test hint::face_tests::a_real_face_reports_usable_zones ... ok
[INFO] [stdout] test font::weight_tests::every_named_weight_resolves_to_something ... ok
[INFO] [stdout] test hint::tests::the_baseline_is_a_fixed_point ... ok
[INFO] [stdout] test hint::tests::points_beyond_the_zones_are_extrapolated_rather_than_clamped ... ok
[INFO] [stdout] test hint::tests::the_baseline_is_still_a_fixed_point_with_a_slab_below_it ... ok
[INFO] [stdout] test hint::tests::suppression_adds_one_control_point_per_line_that_earns_it ... ok
[INFO] [stdout] test hint::tests::the_map_carries_one_point_per_zone_including_the_baseline ... ok
[INFO] [stdout] test hint::tests::the_map_is_monotonic_so_the_outline_cannot_fold_over_itself ... ok
[INFO] [stdout] test hint::tests::the_map_stays_weakly_monotonic_with_slabs_in_it ... ok
[INFO] [stdout] test hint::tests::the_slope_stays_bounded_so_a_shallow_diagonal_is_not_torn ... ok
[INFO] [stdout] test hint::tests::the_x_height_lands_on_a_whole_pixel ... ok
[INFO] [stdout] test font::tests::each_ui_weight_resolves_to_its_own_face ... ok
[INFO] [stdout] test layout::tests::a_trailing_break_leaves_an_empty_final_paragraph ... ok
[INFO] [stdout] test layout::tests::alignment_offsets_resolve_against_the_base_direction ... ok
[INFO] [stdout] test hint::overshoot_measurement::measure_overshoot_on_this_machine ... ok
[INFO] [stdout] test font::tests::loading_the_same_face_twice_yields_one_id ... ok
[INFO] [stdout] test font::tests::a_weight_request_is_part_of_the_resolution_key ... ok
[INFO] [stdout] test layout::tests::an_overflowing_line_gets_a_negative_right_offset ... ok
[INFO] [stdout] test layout::tests::candidates_always_end_at_the_string_end ... ok
[INFO] [stdout] test font::tests::fallback_is_memoised_including_misses ... ok
[INFO] [stdout] test layout::tests::consecutive_breaks_produce_empty_paragraphs ... ok
[INFO] [stdout] test hint::face_tests::fitting_never_moves_the_baseline_of_a_real_glyph ... ok
[INFO] [stdout] test layout::tests::crlf_is_a_single_break ... ok
[INFO] [stdout] test layout::tests::a_word_wider_than_the_box_terminates_and_overflows ... ok
[INFO] [stdout] test layout::tests::cluster_ranges_cover_the_whole_string_monotonically ... ok
[INFO] [stdout] test layout::tests::an_rtl_paragraph_starts_at_the_right_edge ... ok
[INFO] [stdout] test hint::probe_cost::how_long_does_reading_the_zones_take ... ok
[INFO] [stdout] test layout::tests::empty_input_is_still_one_paragraph ... ok
[INFO] [stdout] test layout::tests::a_string_of_only_spaces_has_no_visible_width ... ok
[INFO] [stdout] test layout::tests::a_long_word_breaks_under_grapheme_wrapping ... ok
[INFO] [stdout] test layout::tests::a_pathologically_narrow_box_still_terminates ... ok
[INFO] [stdout] test layout::tests::centering_offsets_by_half_the_slack ... ok
[INFO] [stdout] test layout::tests::clip_and_visible_leave_the_line_alone ... ok
[INFO] [stdout] test layout::tests::justify_moves_only_the_last_line ... ok
[INFO] [stdout] test layout::tests::layout_without_a_font_is_empty_not_a_panic ... ok
[INFO] [stdout] test layout::tests::grapheme_candidates_break_anywhere ... ok
[INFO] [stdout] test layout::tests::hard_breaks_split_and_tile_the_input ... ok
[INFO] [stdout] test layout::tests::a_newline_survives_wrapping ... ok
[INFO] [stdout] test layout::tests::a_hopeless_constraint_still_produces_a_line ... ok
[INFO] [stdout] test layout::tests::an_explicit_line_height_overrides_the_font ... ok
[INFO] [stdout] test layout::tests::ellipsis_actually_fits_within_the_constraint ... ok
[INFO] [stdout] test layout::tests::word_break_candidates_follow_uax14 ... ok
[INFO] [stdout] test layout::tests::no_wrap_offers_only_the_end ... ok
[INFO] [stdout] test layout::tests::other_mandatory_break_characters_are_recognised ... ok
[INFO] [stdout] test layout::tests::the_empty_string_lays_out_as_one_empty_line ... ok
[INFO] [stdout] test mtsdf::tests::a_hairline_outline_still_produces_a_field ... ok
[INFO] [stdout] test layout::tests::mixed_direction_text_lays_out_in_visual_order ... ok
[INFO] [stdout] test layout::tests::letter_spacing_reaches_the_layout ... ok
[INFO] [stdout] test mtsdf::tests::a_hole_reads_as_outside ... ok
[INFO] [stdout] test mtsdf::tests::a_single_edge_contour_is_split_into_three ... ok
[INFO] [stdout] test mtsdf::tests::a_real_glyph_generates_a_plausible_field ... ok
[INFO] [stdout] test layout::tests::explicit_newlines_always_break ... ok
[INFO] [stdout] test mtsdf::tests::a_fully_smooth_contour_gets_one_valid_color ... ok
[INFO] [stdout] test mtsdf::tests::adjacent_edges_across_a_corner_share_exactly_one_channel ... ok
[INFO] [stdout] test mtsdf::tests::a_space_glyph_has_no_field_but_is_not_an_error ... ok
[INFO] [stdout] test mtsdf::tests::an_out_of_range_glyph_is_an_error ... ok
[INFO] [stdout] test mtsdf::tests::bounds_use_curve_extrema_not_the_control_hull ... ok
[INFO] [stdout] test mtsdf::tests::a_zero_texel_cap_is_treated_as_one_rather_than_panicking ... ok
[INFO] [stdout] test mtsdf::tests::cubic_solver_falls_back_through_quadratic_and_linear ... ok
[INFO] [stdout] test mtsdf::tests::cubic_solver_finds_the_single_real_root ... ok
[INFO] [stdout] test mtsdf::tests::cubic_solver_finds_three_distinct_roots ... ok
[INFO] [stdout] test layout::tests::justification_stretches_every_line_but_the_last ... ok
[INFO] [stdout] test mtsdf::tests::a_right_angle_corner_stays_sharp ... ok
[INFO] [stdout] test layout::tests::ellipsis_is_a_no_op_when_the_text_already_fits ... ok
[INFO] [stdout] test mtsdf::tests::cubic_solver_reports_both_branches_of_a_double_root ... ok
[INFO] [stdout] test mtsdf::tests::a_teardrop_contour_is_split_so_three_colors_fit ... ok
[INFO] [stdout] test layout::tests::ascii_width_is_plausible ... ok
[INFO] [stdout] test mtsdf::tests::cubic_bounds_are_tight ... ok
[INFO] [stdout] test font::tests::fallback_returns_a_face_that_actually_has_the_glyph ... ok
[INFO] [stdout] test mtsdf::tests::degenerate_quadratic_behaves_like_a_line ... ok
[INFO] [stdout] test mtsdf::tests::error_correction_never_touches_the_true_distance ... ok
[INFO] [stdout] test mtsdf::tests::degenerate_range_still_produces_a_definite_side ... ok
[INFO] [stdout] test layout::tests::hit_testing_a_laid_out_line_returns_a_source_index ... ok
[INFO] [stdout] test mtsdf::tests::degenerate_polygons_do_not_become_contours ... ok
[INFO] [stdout] test mtsdf::tests::face_metrics_are_self_consistent ... ok
[INFO] [stdout] test mtsdf::tests::distance_encoding_round_trips_within_half_a_step ... ok
[INFO] [stdout] test mtsdf::tests::enormous_outlines_are_capped ... ok
[INFO] [stdout] test mtsdf::tests::distance_encoding_saturates_outside_the_range ... ok
[INFO] [stdout] test layout::tests::width_scales_with_font_size ... ok
[INFO] [stdout] test mtsdf::tests::error_correction_clamps_a_wrong_sided_median_and_leaves_the_rest ... ok
[INFO] [stdout] test mtsdf::tests::empty_shapes_produce_an_empty_image ... ok
[INFO] [stdout] test mtsdf::tests::sub_segment_reproduces_the_original_curve ... ok
[INFO] [stdout] test mtsdf::tests::image_extent_matches_the_padded_ink_box ... ok
[INFO] [stdout] test mtsdf::tests::point_to_line_distance_matches_hand_computation ... ok
[INFO] [stdout] test mtsdf::tests::shape_bounds_cover_every_contour ... ok
[INFO] [stdout] test mtsdf::tests::polygon_orientation_is_normalised ... ok
[INFO] [stdout] test mtsdf::tests::flattening_stays_within_tolerance ... ok
[INFO] [stdout] test mtsdf::tests::the_median_never_contradicts_the_true_distance_after_correction ... ok
[INFO] [stdout] test mtsdf::tests::line_distance_signs_are_opposite_on_the_two_sides ... ok
[INFO] [stdout] test layout::tests::right_alignment_puts_the_line_end_at_the_box_edge ... ok
[INFO] [stdout] test mtsdf::tests::point_to_quadratic_distance_matches_hand_computation ... ok
[INFO] [stdout] test mtsdf::tests::winding_direction_does_not_change_the_field ... ok
[INFO] [stdout] test mtsdf::tests::zero_length_line_does_not_produce_nan ... ok
[INFO] [stdout] test raster::tests::a_curved_outline_is_flattened_before_rasterising ... ok
[INFO] [stdout] test mtsdf::tests::point_to_cubic_distance_matches_hand_computation ... ok
[INFO] [stdout] test mtsdf::tests::switch_color_never_repeats_the_banned_color ... ok
[INFO] [stdout] test raster::tests::a_nonsense_size_produces_an_empty_image ... ok
[INFO] [stdout] test raster::tests::a_half_covered_pixel_reads_as_half ... ok
[INFO] [stdout] test raster::tests::a_square_glyph_rasterises_to_exact_pixels ... ok
[INFO] [stdout] test raster::tests::a_line_on_the_right_edge_does_not_spill_into_the_next_row ... ok
[INFO] [stdout] test raster::tests::an_empty_shape_produces_an_empty_image ... ok
[INFO] [stdout] test raster::tests::an_out_of_range_glyph_is_an_error ... ok
[INFO] [stdout] test raster::tests::a_round_capital_is_fitted_onto_the_baseline_not_below_it ... FAILED
[INFO] [stdout] test raster::tests::a_slope_that_overflows_to_infinity_does_not_poison_the_row ... ok
[INFO] [stdout] test raster::tests::device_font_size_never_goes_negative ... ok
[INFO] [stdout] test raster::tests::a_space_rasterises_to_nothing_without_erroring ... ok
[INFO] [stdout] test raster::tests::geometry_outside_the_target_is_clipped_not_dropped ... ok
[INFO] [stdout] test raster::tests::grayscale_quarter_phase_moves_the_outline_before_snapping_bounds ... ok
[INFO] [stdout] test raster::tests::default_lcd_filter_has_the_freetype_five_tap_impulse_response ... ok
[INFO] [stdout] test raster::tests::overlapping_contours_saturate_instead_of_doubling ... ok
[INFO] [stdout] test raster::tests::subpixel_raster_is_rgb_interleaved_and_keeps_filter_padding ... ok
[INFO] [stdout] test raster::tests::reset_makes_a_rasterizer_reusable ... ok
[INFO] [stdout] test raster::tests::the_policy_boundary_is_where_bilinear_sampling_gives_out ... ok
[INFO] [stdout] test mtsdf::tests::real_glyphs_of_every_shape_class_produce_a_consistent_field ... ok
[INFO] [stdout] test raster::tests::bounds_snap_outwards_to_whole_device_pixels ... ok
[INFO] [stdout] test raster::tests::bitmap_sizes_round_to_whole_device_pixels_and_never_reach_zero ... ok
[INFO] [stdout] test raster::tests::a_pixel_aligned_rectangle_is_fully_on_or_fully_off ... ok
[INFO] [stdout] test raster::tests::the_policy_thresholds_on_physical_pixels_not_logical_ones ... ok
[INFO] [stdout] test raster::tests::a_real_glyph_rasterises_to_plausible_coverage ... ok
[INFO] [stdout] test mtsdf::tests::median_picks_the_middle_of_every_permutation ... ok
[INFO] [stdout] test raster::tests::total_coverage_of_a_triangle_equals_its_area ... ok
[INFO] [stdout] test raster::tests::winding_cancels_a_hole ... ok
[INFO] [stdout] test shape::tests::cluster_ends_survive_a_rebased_run ... ok
[INFO] [stdout] test mtsdf::tests::the_median_separates_inside_from_outside ... ok
[INFO] [stdout] test raster::tests::auto_never_reaches_the_small_text_compensation ... ok
[INFO] [stdout] test shape::tests::cluster_ends_are_recovered_in_both_directions ... ok
[INFO] [stdout] test shape::tests::explicit_direction_overrides_content ... ok
[INFO] [stdout] test shape::tests::cumulative_table_is_a_prefix_sum ... ok
[INFO] [stdout] test layout::tests::wrapping_happens_at_the_break_opportunity ... ok
[INFO] [stdout] test raster::tests::degenerate_input_does_not_panic ... ok
[INFO] [stdout] test shape::tests::language_is_only_guessed_where_a_script_implies_one ... ok
[INFO] [stdout] test shape::tests::base_level_follows_the_first_strong_character ... ok
[INFO] [stdout] test shape::tests::harfbuzz_script_tags_round_trip ... ok
[INFO] [stdout] test layout::tests::wrapping_is_stable_across_repeated_calls ... ok
[INFO] [stdout] test shape::tests::level_change_starts_a_new_item ... ok
[INFO] [stdout] test shape::tests::an_rtl_run_is_laid_out_right_to_left ... ok
[INFO] [stdout] test shape::tests::ascii_shaping_produces_one_glyph_per_character ... ok
[INFO] [stdout] test shape::tests::empty_and_degenerate_input_is_handled ... ok
[INFO] [stdout] test shape::tests::slicing_a_run_never_duplicates_or_drops_a_glyph ... ok
[INFO] [stdout] test shape::tests::common_characters_do_not_split_a_run ... ok
[INFO] [stdout] test shape::tests::letter_spacing_lands_after_a_grapheme_not_inside_it ... ok
[INFO] [stdout] test shape::tests::a_leading_neutral_run_adopts_the_first_real_script ... FAILED
[INFO] [stdout] test shape::tests::mixed_ltr_and_rtl_come_out_in_visual_order ... ok
[INFO] [stdout] test system::tests::a_high_dpi_display_keeps_small_logical_text_on_the_field_path ... ok
[INFO] [stdout] test shape::tests::script_change_starts_a_new_item ... ok
[INFO] [stdout] test system::tests::an_empty_system_serves_no_glyphs_and_does_not_panic ... ok
[INFO] [stdout] test shape::tests::clusters_are_rebased_onto_the_original_string ... ok
[INFO] [stdout] test shape::tests::style_knobs_that_do_not_affect_shaping_are_ignored ... ok
[INFO] [stdout] test shape::tests::out_of_range_slices_are_clamped_not_panicking ... ok
[INFO] [stdout] test shape::tests::positions_advance_monotonically_in_an_ltr_line ... ok
[INFO] [stdout] test system::tests::hit_rate_of_an_untouched_system_is_one ... ok
[INFO] [stdout] test shape::tests::word_spacing_only_touches_spaces ... ok
[INFO] [stdout] test shape::tests::letter_spacing_widens_by_one_gap_per_grapheme ... ok
[INFO] [stdout] test shape::tests::spacing_is_a_no_op_when_zero ... ok
[INFO] [stdout] test shape::tests::rtl_paragraph_with_embedded_latin_keeps_the_latin_ltr ... ok
[INFO] [stdout] test system_ui::tests::a_ui_family_is_always_reported ... ok
[INFO] [stdout] test system_ui::tests::the_reported_family_is_not_the_fontdb_default ... ok
[INFO] [stdout] test system::tests::a_space_resolves_to_a_zero_area_placement_rather_than_a_failure ... ok
[INFO] [stdout] test shape::tests::cluster_ranges_are_monotonic_and_cover_the_string ... ok
[INFO] [stdout] test types::tests::glyph_format_pixel_sizes ... ok
[INFO] [stdout] test types::tests::hit_test_picks_the_line_the_point_is_actually_in ... ok
[INFO] [stdout] test types::tests::hit_test_snaps_to_the_nearest_cluster_edge ... ok
[INFO] [stdout] test system::tests::rasterising_marks_atlas_regions_dirty_exactly_once ... ok
[INFO] [stdout] test system::tests::changing_the_raster_config_invalidates_resident_fields ... ok
[INFO] [stdout] test types::tests::bitmap_phase_and_format_are_part_of_the_cache_key ... ok
[INFO] [stdout] test types::tests::metrics_scale_linearly ... ok
[INFO] [stdout] test system::tests::small_text_takes_the_bitmap_path_and_large_text_does_not ... ok
[INFO] [stdout] test types::tests::run_advance_sums_its_glyphs ... ok
[INFO] [stdout] test types::tests::variation_hash_separates_variable_font_instances ... ok
[INFO] [stdout] test types::tests::empty_layout_reports_no_glyphs ... ok
[INFO] [stdout] test types::tests::zero_bitmap_size_is_clamped_away ... ok
[INFO] [stdout] test types::tests::mtsdf_keys_ignore_size_but_bitmap_keys_do_not ... ok
[INFO] [stdout] test system::tests::one_distance_field_serves_every_size ... ok
[INFO] [stdout] test system::tests::bitmap_cache_separates_quarter_phases_and_rgb_coverage ... ok
[INFO] [stdout] test system::tests::setting_the_same_raster_config_twice_does_not_clear_the_atlas ... ok
[INFO] [stdout] test system::tests::the_second_request_for_a_glyph_is_a_cache_hit ... ok
[INFO] [stdout] test shape::tests::a_range_inside_a_character_is_snapped_not_panicked_on ... ok
[INFO] [stdout] test shape::tests::japanese_shapes_through_fallback_without_tofu ... ok
[INFO] [stdout] test shape::tests::thai_shapes_through_fallback_without_tofu ... FAILED
[INFO] [stdout] test system::tests::layout_produces_glyphs_for_multilingual_text ... ok
[INFO] [stdout] test layout::tests::japanese_wraps_and_stays_on_character_boundaries ... ok
[INFO] [stdout] test layout::tests::thai_wraps_under_grapheme_mode_instead_of_one_giant_line ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- font::weight_tests::asking_for_bold_resolves_a_different_face_than_regular stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'font::weight_tests::asking_for_bold_resolves_a_different_face_than_regular' (1510) panicked at src/font.rs:793:9:
[INFO] [stdout] assertion `left != right` failed: semi-bold resolved to the regular face
[INFO] [stdout]   left: FontId#0v1
[INFO] [stdout]  right: FontId#0v1
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64a4024e9dd1 - <<std[617be2ca0a6fd877]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a373ad73a504971]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x64a4025008ea - core[a373ad73a504971]::fmt::write
[INFO] [stdout]    2:     0x64a4024ee38c - <alloc[2e1b2a31b91974c5]::vec::Vec<u8> as core[a373ad73a504971]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x64a4024c4d36 - std[617be2ca0a6fd877]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x64a4024e19b9 - std[617be2ca0a6fd877]::panicking::default_hook
[INFO] [stdout]    5:     0x64a40240cd70 - test[aada8e7e76ba119b]::test_main_inner::{closure#0}
[INFO] [stdout]    6:     0x64a4024e1b72 - std[617be2ca0a6fd877]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x64a4024c4de2 - std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x64a4024bd899 - std[617be2ca0a6fd877]::sys::backtrace::__rust_end_short_backtrace::<std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x64a4024c59ed - __rustc[ea4f61d10b84890b]::rust_begin_unwind
[INFO] [stdout]   10:     0x64a40250104c - core[a373ad73a504971]::panicking::panic_fmt
[INFO] [stdout]   11:     0x64a402500fc3 - core[a373ad73a504971]::panicking::assert_failed_inner
[INFO] [stdout]   12:     0x64a40238aa99 - core[a373ad73a504971]::panicking::assert_failed::<spherekit_core[f59277ac6b8c3ec8]::id::FontId, spherekit_core[f59277ac6b8c3ec8]::id::FontId>
[INFO] [stdout]   13:     0x64a40238033b - <spherekit_text[8f4324f40cd1cead]::font::weight_tests::asking_for_bold_resolves_a_different_face_than_regular::{closure#0} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   14:     0x64a4024001bb - test[aada8e7e76ba119b]::__rust_begin_short_backtrace::<core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>, fn() -> core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>>
[INFO] [stdout]   15:     0x64a40240d395 - test[aada8e7e76ba119b]::run_test::{closure#0}
[INFO] [stdout]   16:     0x64a402406c84 - std[617be2ca0a6fd877]::sys::backtrace::__rust_begin_short_backtrace::<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>
[INFO] [stdout]   17:     0x64a402410422 - <std[617be2ca0a6fd877]::thread::lifecycle::spawn_unchecked<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>::{closure#1} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   18:     0x64a4024e8f8f - <std[617be2ca0a6fd877]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   19:     0x75f87d4ccdfa - <unknown>
[INFO] [stdout]   20:     0x75f87d5603d4 - clone
[INFO] [stdout]   21:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- font::tests::coverage_matches_the_face_cmap stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'font::tests::coverage_matches_the_face_cmap' (1497) panicked at src/font.rs:1010:9:
[INFO] [stdout] assertion failed: db.has_glyph(id, 'A')
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64a4024e9dd1 - <<std[617be2ca0a6fd877]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a373ad73a504971]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x64a4025008ea - core[a373ad73a504971]::fmt::write
[INFO] [stdout]    2:     0x64a4024ee38c - <alloc[2e1b2a31b91974c5]::vec::Vec<u8> as core[a373ad73a504971]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x64a4024c4d36 - std[617be2ca0a6fd877]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x64a4024e19b9 - std[617be2ca0a6fd877]::panicking::default_hook
[INFO] [stdout]    5:     0x64a40240cd70 - test[aada8e7e76ba119b]::test_main_inner::{closure#0}
[INFO] [stdout]    6:     0x64a4024e1b72 - std[617be2ca0a6fd877]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x64a4024c4e14 - std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x64a4024bd899 - std[617be2ca0a6fd877]::sys::backtrace::__rust_end_short_backtrace::<std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x64a4024c59ed - __rustc[ea4f61d10b84890b]::rust_begin_unwind
[INFO] [stdout]   10:     0x64a40250104c - core[a373ad73a504971]::panicking::panic_fmt
[INFO] [stdout]   11:     0x64a402501012 - core[a373ad73a504971]::panicking::panic
[INFO] [stdout]   12:     0x64a402380726 - <spherekit_text[8f4324f40cd1cead]::font::tests::coverage_matches_the_face_cmap::{closure#0} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   13:     0x64a4024001bb - test[aada8e7e76ba119b]::__rust_begin_short_backtrace::<core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>, fn() -> core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>>
[INFO] [stdout]   14:     0x64a40240d395 - test[aada8e7e76ba119b]::run_test::{closure#0}
[INFO] [stdout]   15:     0x64a402406c84 - std[617be2ca0a6fd877]::sys::backtrace::__rust_begin_short_backtrace::<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>
[INFO] [stdout]   16:     0x64a402410422 - <std[617be2ca0a6fd877]::thread::lifecycle::spawn_unchecked<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>::{closure#1} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   17:     0x64a4024e8f8f - <std[617be2ca0a6fd877]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   18:     0x75f87d4ccdfa - <unknown>
[INFO] [stdout]   19:     0x75f87d5603d4 - clone
[INFO] [stdout]   20:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- raster::tests::a_round_capital_is_fitted_onto_the_baseline_not_below_it stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'raster::tests::a_round_capital_is_fitted_onto_the_baseline_not_below_it' (1628) panicked at src/raster.rs:1048:9:
[INFO] [stdout] fitted 0.09090912 against ink 0.014160156
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64a4024e9dd1 - <<std[617be2ca0a6fd877]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a373ad73a504971]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x64a4025008ea - core[a373ad73a504971]::fmt::write
[INFO] [stdout]    2:     0x64a4024ee38c - <alloc[2e1b2a31b91974c5]::vec::Vec<u8> as core[a373ad73a504971]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x64a4024c4d36 - std[617be2ca0a6fd877]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x64a4024e19b9 - std[617be2ca0a6fd877]::panicking::default_hook
[INFO] [stdout]    5:     0x64a40240cd70 - test[aada8e7e76ba119b]::test_main_inner::{closure#0}
[INFO] [stdout]    6:     0x64a4024e1b72 - std[617be2ca0a6fd877]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x64a4024c4de2 - std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x64a4024bd899 - std[617be2ca0a6fd877]::sys::backtrace::__rust_end_short_backtrace::<std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x64a4024c59ed - __rustc[ea4f61d10b84890b]::rust_begin_unwind
[INFO] [stdout]   10:     0x64a40250104c - core[a373ad73a504971]::panicking::panic_fmt
[INFO] [stdout]   11:     0x64a402390dc4 - <spherekit_text[8f4324f40cd1cead]::raster::tests::a_round_capital_is_fitted_onto_the_baseline_not_below_it::{closure#0} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   12:     0x64a4024001bb - test[aada8e7e76ba119b]::__rust_begin_short_backtrace::<core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>, fn() -> core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>>
[INFO] [stdout]   13:     0x64a40240d395 - test[aada8e7e76ba119b]::run_test::{closure#0}
[INFO] [stdout]   14:     0x64a402406c84 - std[617be2ca0a6fd877]::sys::backtrace::__rust_begin_short_backtrace::<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>
[INFO] [stdout]   15:     0x64a402410422 - <std[617be2ca0a6fd877]::thread::lifecycle::spawn_unchecked<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>::{closure#1} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   16:     0x64a4024e8f8f - <std[617be2ca0a6fd877]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   17:     0x75f87d4ccdfa - <unknown>
[INFO] [stdout]   18:     0x75f87d5603d4 - clone
[INFO] [stdout]   19:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- shape::tests::a_leading_neutral_run_adopts_the_first_real_script stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'shape::tests::a_leading_neutral_run_adopts_the_first_real_script' (1649) panicked at src/shape.rs:804:9:
[INFO] [stdout] assertion `left == right` failed
[INFO] [stdout]   left: 2
[INFO] [stdout]  right: 1
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64a4024e9dd1 - <<std[617be2ca0a6fd877]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a373ad73a504971]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x64a4025008ea - core[a373ad73a504971]::fmt::write
[INFO] [stdout]    2:     0x64a4024ee38c - <alloc[2e1b2a31b91974c5]::vec::Vec<u8> as core[a373ad73a504971]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x64a4024c4d36 - std[617be2ca0a6fd877]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x64a4024e19b9 - std[617be2ca0a6fd877]::panicking::default_hook
[INFO] [stdout]    5:     0x64a40240cd70 - test[aada8e7e76ba119b]::test_main_inner::{closure#0}
[INFO] [stdout]    6:     0x64a4024e1b72 - std[617be2ca0a6fd877]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x64a4024c4de2 - std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x64a4024bd899 - std[617be2ca0a6fd877]::sys::backtrace::__rust_end_short_backtrace::<std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x64a4024c59ed - __rustc[ea4f61d10b84890b]::rust_begin_unwind
[INFO] [stdout]   10:     0x64a40250104c - core[a373ad73a504971]::panicking::panic_fmt
[INFO] [stdout]   11:     0x64a402500f63 - core[a373ad73a504971]::panicking::assert_failed_inner
[INFO] [stdout]   12:     0x64a4024fbf1d - core[a373ad73a504971]::panicking::assert_failed::<usize, usize>
[INFO] [stdout]   13:     0x64a402387ffa - <spherekit_text[8f4324f40cd1cead]::shape::tests::a_leading_neutral_run_adopts_the_first_real_script::{closure#0} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   14:     0x64a4024001bb - test[aada8e7e76ba119b]::__rust_begin_short_backtrace::<core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>, fn() -> core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>>
[INFO] [stdout]   15:     0x64a40240d395 - test[aada8e7e76ba119b]::run_test::{closure#0}
[INFO] [stdout]   16:     0x64a402406c84 - std[617be2ca0a6fd877]::sys::backtrace::__rust_begin_short_backtrace::<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>
[INFO] [stdout]   17:     0x64a402410422 - <std[617be2ca0a6fd877]::thread::lifecycle::spawn_unchecked<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>::{closure#1} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   18:     0x64a4024e8f8f - <std[617be2ca0a6fd877]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   19:     0x75f87d4ccdfa - <unknown>
[INFO] [stdout]   20:     0x75f87d5603d4 - clone
[INFO] [stdout]   21:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- shape::tests::thai_shapes_through_fallback_without_tofu stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'shape::tests::thai_shapes_through_fallback_without_tofu' (1676) panicked at src/shape.rs:1033:9:
[INFO] [stdout] Thai fell back to .notdef
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x64a4024e9dd1 - <<std[617be2ca0a6fd877]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a373ad73a504971]::fmt::Display>::fmt
[INFO] [stdout]    1:     0x64a4025008ea - core[a373ad73a504971]::fmt::write
[INFO] [stdout]    2:     0x64a4024ee38c - <alloc[2e1b2a31b91974c5]::vec::Vec<u8> as core[a373ad73a504971]::io::write::Write>::write_fmt
[INFO] [stdout]    3:     0x64a4024c4d36 - std[617be2ca0a6fd877]::panicking::default_hook::{closure#0}
[INFO] [stdout]    4:     0x64a4024e19b9 - std[617be2ca0a6fd877]::panicking::default_hook
[INFO] [stdout]    5:     0x64a40240cd70 - test[aada8e7e76ba119b]::test_main_inner::{closure#0}
[INFO] [stdout]    6:     0x64a4024e1b72 - std[617be2ca0a6fd877]::panicking::panic_with_hook
[INFO] [stdout]    7:     0x64a4024c4e14 - std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}
[INFO] [stdout]    8:     0x64a4024bd899 - std[617be2ca0a6fd877]::sys::backtrace::__rust_end_short_backtrace::<std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]    9:     0x64a4024c59ed - __rustc[ea4f61d10b84890b]::rust_begin_unwind
[INFO] [stdout]   10:     0x64a40250104c - core[a373ad73a504971]::panicking::panic_fmt
[INFO] [stdout]   11:     0x64a40238541d - <spherekit_text[8f4324f40cd1cead]::shape::tests::thai_shapes_through_fallback_without_tofu::{closure#0} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]   12:     0x64a4024001bb - test[aada8e7e76ba119b]::__rust_begin_short_backtrace::<core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>, fn() -> core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>>
[INFO] [stdout]   13:     0x64a40240d395 - test[aada8e7e76ba119b]::run_test::{closure#0}
[INFO] [stdout]   14:     0x64a402406c84 - std[617be2ca0a6fd877]::sys::backtrace::__rust_begin_short_backtrace::<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>
[INFO] [stdout]   15:     0x64a402410422 - <std[617be2ca0a6fd877]::thread::lifecycle::spawn_unchecked<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>::{closure#1} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]   16:     0x64a4024e8f8f - <std[617be2ca0a6fd877]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]   17:     0x75f87d4ccdfa - <unknown>
[INFO] [stdout]   18:     0x75f87d5603d4 - clone
[INFO] [stdout]   19:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     font::tests::coverage_matches_the_face_cmap
[INFO] [stdout]     font::weight_tests::asking_for_bold_resolves_a_different_face_than_regular
[INFO] [stdout]     raster::tests::a_round_capital_is_fitted_onto_the_baseline_not_below_it
[INFO] [stdout]     shape::tests::a_leading_neutral_run_adopts_the_first_real_script
[INFO] [stdout]     shape::tests::thai_shapes_through_fallback_without_tofu
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 276 passed; 5 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.40s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--lib`
[INFO] running `Command { std: "docker" "inspect" "083bc2611f3a2f3902b93c58e14a29f82d4ec5821656041d33b2aef5b9ff6227", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "083bc2611f3a2f3902b93c58e14a29f82d4ec5821656041d33b2aef5b9ff6227", kill_on_drop: false }`
[INFO] [stdout] 083bc2611f3a2f3902b93c58e14a29f82d4ec5821656041d33b2aef5b9ff6227
