[INFO] fetching crate rasura-font 0.1.2...
[INFO] testing rasura-font-0.1.2 against 1.100.0-beta.1 for beta-1.100-2
[INFO] extracting crate rasura-font 0.1.2 into /workspace/builds/worker-5-tc2/source
[INFO] started tweaking crates.io crate rasura-font 0.1.2
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate rasura-font 0.1.2
[INFO] tweaked toml for crates.io crate rasura-font 0.1.2 written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate rasura-font 0.1.2 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 rasura-font 0.1.2 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] [stderr] warning: `package.homepage` is redundant with `package.documentation`
[INFO] [stderr]   --> Cargo.toml:39:12
[INFO] [stderr]    |
[INFO] [stderr] 37 | documentation = "https://myketheguru.github.io/rasura"
[INFO] [stderr]    |                 --------------------------------------
[INFO] [stderr] 38 | edition = "2024"
[INFO] [stderr] 39 | homepage = "https://myketheguru.github.io/rasura"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `rasura-font` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 90d5e9242300d34ca46a58d30a2d9bf4dbeb0fe55a523d4f5f819d13ee819837
[INFO] running `Command { std: "docker" "start" "90d5e9242300d34ca46a58d30a2d9bf4dbeb0fe55a523d4f5f819d13ee819837", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "90d5e9242300d34ca46a58d30a2d9bf4dbeb0fe55a523d4f5f819d13ee819837", 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" "90d5e9242300d34ca46a58d30a2d9bf4dbeb0fe55a523d4f5f819d13ee819837" "/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" "90d5e9242300d34ca46a58d30a2d9bf4dbeb0fe55a523d4f5f819d13ee819837", 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" "90d5e9242300d34ca46a58d30a2d9bf4dbeb0fe55a523d4f5f819d13ee819837" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.documentation`
[INFO] [stderr]   --> Cargo.toml:39:12
[INFO] [stderr]    |
[INFO] [stderr] 37 | documentation = "https://myketheguru.github.io/rasura"
[INFO] [stderr]    |                 --------------------------------------
[INFO] [stderr] 38 | edition = "2024"
[INFO] [stderr] 39 | homepage = "https://myketheguru.github.io/rasura"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `rasura-font` (manifest) generated 1 warning
[INFO] [stderr]    Compiling thiserror v2.0.19
[INFO] [stderr]    Compiling simd-adler32 v0.3.10
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling block-padding v0.3.3
[INFO] [stderr]    Compiling syn v3.0.3
[INFO] [stderr]    Compiling md-5 v0.10.6
[INFO] [stderr]    Compiling inout v0.1.4
[INFO] [stderr]    Compiling miniz_oxide v0.8.9
[INFO] [stderr]    Compiling cipher v0.4.4
[INFO] [stderr]    Compiling aes v0.8.4
[INFO] [stderr]    Compiling cbc v0.1.2
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling bytemuck_derive v1.12.0
[INFO] [stderr]    Compiling thiserror-impl v2.0.19
[INFO] [stderr]    Compiling bytemuck v1.25.2
[INFO] [stderr]    Compiling font-types v0.12.3
[INFO] [stderr]    Compiling rasura-cos v0.1.2
[INFO] [stderr]    Compiling read-fonts v0.43.0
[INFO] [stderr]    Compiling rasura-content v0.1.2
[INFO] [stderr]    Compiling harfrust v0.13.0
[INFO] [stderr]    Compiling rasura-font v0.1.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 18.09s
[INFO] running `Command { std: "docker" "inspect" "90d5e9242300d34ca46a58d30a2d9bf4dbeb0fe55a523d4f5f819d13ee819837", 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" "90d5e9242300d34ca46a58d30a2d9bf4dbeb0fe55a523d4f5f819d13ee819837" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.documentation`
[INFO] [stderr]   --> Cargo.toml:39:12
[INFO] [stderr]    |
[INFO] [stderr] 37 | documentation = "https://myketheguru.github.io/rasura"
[INFO] [stderr]    |                 --------------------------------------
[INFO] [stderr] 38 | edition = "2024"
[INFO] [stderr] 39 | homepage = "https://myketheguru.github.io/rasura"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `rasura-font` (manifest) generated 1 warning
[INFO] [stderr]    Compiling rasura-font v0.1.2 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 5.18s
[INFO] running `Command { std: "docker" "inspect" "90d5e9242300d34ca46a58d30a2d9bf4dbeb0fe55a523d4f5f819d13ee819837", 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" "90d5e9242300d34ca46a58d30a2d9bf4dbeb0fe55a523d4f5f819d13ee819837" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.documentation`
[INFO] [stderr]   --> Cargo.toml:39:12
[INFO] [stderr]    |
[INFO] [stderr] 37 | documentation = "https://myketheguru.github.io/rasura"
[INFO] [stderr]    |                 --------------------------------------
[INFO] [stderr] 38 | edition = "2024"
[INFO] [stderr] 39 | homepage = "https://myketheguru.github.io/rasura"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `rasura-font` (manifest) generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.04s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/build/rasura-font/7c101f055f563de0/out/rasura_font-7c101f055f563de0)
[INFO] [stdout] 
[INFO] [stdout] running 276 tests
[INFO] [stdout] test cff::tests::a_bad_header_size_is_rejected ... ok
[INFO] [stdout] test cff::tests::a_dict_ending_mid_operand_does_not_panic ... ok
[INFO] [stdout] test cff::tests::a_format_zero_charset_reads_sids ... ok
[INFO] [stdout] test cff::tests::a_real_operand_decodes ... ok
[INFO] [stdout] test cff::tests::a_format_one_charset_expands_ranges ... ok
[INFO] [stdout] test cff::tests::a_truncated_index_is_rejected_not_read_past ... ok
[INFO] [stdout] test cff::tests::a_two_byte_operator_decodes ... ok
[INFO] [stdout] test cff::tests::a_zero_first_offset_is_rejected ... ok
[INFO] [stdout] test cff::tests::an_absent_charset_is_the_identity ... ok
[INFO] [stdout] test cff::tests::an_empty_index_is_two_bytes_and_legal ... ok
[INFO] [stdout] test cff::tests::a_cid_font_is_recognised_by_its_ros ... ok
[INFO] [stdout] test cff::tests::a_minimal_font_parses ... ok
[INFO] [stdout] test cff::tests::a_non_cid_font_maps_cid_to_gid_directly ... ok
[INFO] [stdout] test cff::tests::a_short_charset_pads_rather_than_failing ... ok
[INFO] [stdout] test cff::tests::dict_operands_decode ... ok
[INFO] [stdout] test cff::tests::fd_select_format_three_expands_ranges ... ok
[INFO] [stdout] test cff::tests::decreasing_index_offsets_are_rejected ... ok
[INFO] [stdout] test cff::tests::the_predefined_charsets_are_the_identity ... ok
[INFO] [stdout] test cff::tests::a_font_without_charstrings_is_rejected ... ok
[INFO] [stdout] test cff::tests::arbitrary_bytes_never_panic ... ok
[INFO] [stdout] test cff_write::tests::a_cid_keyed_target_gains_a_glyph_and_an_fd ... ok
[INFO] [stdout] test cff_write::tests::a_rebuilt_index_is_readable_by_the_parser ... ok
[INFO] [stdout] test cff_write::tests::a_glyph_is_appended_and_the_originals_stay_put ... ok
[INFO] [stdout] test cff_write::tests::subroutines_are_inlined_out_of_the_injected_glyph ... ok
[INFO] [stdout] test cff_write::tests::a_glyph_past_the_source_is_refused ... ok
[INFO] [stdout] test cff_write::tests::a_custom_name_travels_with_its_string ... ok
[INFO] [stdout] test cff_write::tests::the_injected_charstring_is_the_sources ... ok
[INFO] [stdout] test cff_write::tests::injecting_nothing_is_refused ... ok
[INFO] [stdout] test charstring::tests::a_call_with_no_operand_is_an_error ... ok
[INFO] [stdout] test cff_write::tests::two_glyphs_from_one_source_fd_share_one_new_fd ... ok
[INFO] [stdout] test cff_write::tests::index_offsets_size_themselves_to_the_data ... ok
[INFO] [stdout] test charstring::tests::a_charstring_with_no_calls_is_unchanged ... ok
[INFO] [stdout] test charstring::tests::a_global_subroutine_is_inlined_from_its_own_index ... ok
[INFO] [stdout] test charstring::tests::a_hintmask_inside_a_subroutine_survives_intact ... ok
[INFO] [stdout] test charstring::tests::a_missing_subroutine_is_an_error_not_a_silent_skip ... ok
[INFO] [stdout] test cff_write::tests::the_injected_cid_glyph_keeps_its_charstring_and_gets_a_fresh_cid ... ok
[INFO] [stdout] test cff_write::tests::the_cid_fixture_is_a_cid_keyed_font ... ok
[INFO] [stdout] test charstring::tests::a_local_subroutine_is_inlined_and_its_number_removed ... ok
[INFO] [stdout] test charstring::tests::hintmask_bytes_follow_the_stem_count ... ok
[INFO] [stdout] test charstring::tests::a_truncated_charstring_does_not_panic ... ok
[INFO] [stdout] test charstring::tests::hintmask_counts_its_own_implicit_vstem ... ok
[INFO] [stdout] test cff_write::tests::a_standard_sid_is_copied_unchanged ... ok
[INFO] [stdout] test cff_write::tests::subrs_are_stripped_from_a_copied_private_dict ... ok
[INFO] [stdout] test charstring::tests::operands_decode_in_every_form ... ok
[INFO] [stdout] test charstring::tests::the_bias_follows_the_subroutine_count ... ok
[INFO] [stdout] test cmap::tests::a_symbolic_font_finds_glyphs_through_the_f000_offset ... ok
[INFO] [stdout] test cff_write::tests::the_fixture_is_a_valid_cff ... ok
[INFO] [stdout] test charstring::tests::a_recursive_subroutine_terminates ... ok
[INFO] [stdout] test cmap::tests::format4_maps_through_id_delta ... ok
[INFO] [stdout] test charstring::tests::arbitrary_bytes_never_panic ... ok
[INFO] [stdout] test charstring::tests::nested_subroutines_are_inlined_transitively ... ok
[INFO] [stdout] test cff::tests::an_index_round_trips ... ok
[INFO] [stdout] test cmap::tests::a_font_without_cmap_yields_nothing ... ok
[INFO] [stdout] test cmap::tests::the_reverse_map_is_glyph_to_character ... ok
[INFO] [stdout] test cmap::tests::windows_ucs4_outranks_windows_bmp ... ok
[INFO] [stdout] test cmap_write::tests::a_new_mapping_becomes_reachable ... ok
[INFO] [stdout] test cmap_write::tests::a_scattered_set_still_resolves ... ok
[INFO] [stdout] test cmap_write::tests::consecutive_mappings_share_one_segment ... ok
[INFO] [stdout] test cmap_write::tests::the_existing_mappings_survive ... ok
[INFO] [stdout] test cmap_write::tests::characters_past_the_bmp_are_dropped_not_mangled ... ok
[INFO] [stdout] test cmap_write::tests::the_rest_of_the_font_is_untouched ... ok
[INFO] [stdout] test create::tests::a_character_the_font_lacks_is_reported_not_substituted ... ok
[INFO] [stdout] test create::tests::latin_text_becomes_a_simple_font ... ok
[INFO] [stdout] test create::tests::text_outside_win_ansi_becomes_a_composite_font ... ok
[INFO] [stdout] test create::tests::the_subset_carries_only_what_was_asked_for ... ok
[INFO] [stdout] test create::tests::win_ansi_gets_the_typographic_window_right ... ok
[INFO] [stdout] test cmap_write::tests::the_terminator_is_not_a_mapping ... ok
[INFO] [stdout] test create::tests::the_subset_directory_is_sorted_and_a_foreign_reader_finds_the_cmap ... ok
[INFO] [stdout] test describe::tests::a_cff_font_is_declined_rather_than_mislabelled ... ok
[INFO] [stdout] test describe::tests::a_real_typeface_describes_from_its_own_tables ... ok
[INFO] [stdout] test cmap::tests::arbitrary_bytes_never_panic ... ok
[INFO] [stdout] test cmap::tests::the_terminating_segment_is_not_a_mapping ... ok
[INFO] [stdout] test cmap::tests::a_symbol_table_is_not_offered_as_unicode ... ok
[INFO] [stdout] test cmap::tests::a_symbolic_font_that_stores_codes_unshifted_also_works ... ok
[INFO] [stdout] test describe::tests::a_subset_tag_is_six_capitals_and_depends_on_the_glyphs ... ok
[INFO] [stdout] test cmap::tests::format0_maps_bytes ... ok
[INFO] [stdout] test cmap::tests::format12_maps_beyond_the_bmp ... ok
[INFO] [stdout] test cmap::tests::format4_enumerates_every_mapping ... ok
[INFO] [stdout] test describe::tests::the_synthesised_fixture_describes_without_its_optional_tables ... ok
[INFO] [stdout] test cmap::tests::format6_maps_a_trimmed_range ... ok
[INFO] [stdout] test cmap::tests::the_lower_code_wins_when_two_map_to_one_glyph ... ok
[INFO] [stdout] test describe::tests::units_are_scaled_into_glyph_space ... ok
[INFO] [stdout] test embed::tests::a_composite_to_unicode_uses_two_byte_codes ... ok
[INFO] [stdout] test embed::tests::a_code_below_firstchar_moves_the_lower_bound ... ok
[INFO] [stdout] test embed::tests::a_glyph_inside_the_bbox_leaves_it_alone ... ok
[INFO] [stdout] test embed::tests::a_ligature_maps_to_several_characters ... ok
[INFO] [stdout] test embed::tests::adding_nothing_is_refused ... ok
[INFO] [stdout] test embed::tests::an_existing_to_unicode_is_extended_not_replaced ... ok
[INFO] [stdout] test embed::tests::an_occupied_code_is_left_alone ... ok
[INFO] [stdout] test embed::tests::a_supplementary_character_is_written_as_a_surrogate_pair ... ok
[INFO] [stdout] test embed::tests::adding_nothing_to_a_composite_is_refused ... ok
[INFO] [stdout] test embed::tests::codes_the_font_never_had_get_missing_width_not_a_guess ... ok
[INFO] [stdout] test embed::tests::differences_gain_an_entry_for_each_new_code ... ok
[INFO] [stdout] test embed::tests::an_existing_cid_to_gid_stream_is_extended_not_replaced ... ok
[INFO] [stdout] test embed::tests::identity_becomes_a_stream_when_the_cid_and_gid_diverge ... ok
[INFO] [stdout] test embed::tests::identity_cid_to_gid_stays_identity_when_it_still_holds ... ok
[INFO] [stdout] test fixture::tests::injection_survives_a_font_this_library_did_not_write ... ok
[INFO] [stdout] test embed::tests::the_font_bbox_widens_only_when_exceeded ... ok
[INFO] [stdout] test fixture::tests::real_font_widths_are_scaled_out_of_the_fonts_own_units ... ok
[INFO] [stdout] test embed::tests::the_w_array_gains_a_group_and_leaves_the_others_alone ... ok
[INFO] [stdout] test embed::tests::existing_differences_are_preserved ... ok
[INFO] [stdout] test embed::tests::more_than_a_hundred_mappings_are_split_into_blocks ... ok
[INFO] [stdout] test embed::tests::to_unicode_is_always_produced ... ok
[INFO] [stdout] test embed::tests::widths_extend_and_the_bounds_follow ... ok
[INFO] [stdout] test fixture::tests::the_injected_pdf_extracts_the_text_it_draws ... ok
[INFO] [stdout] test embed::tests::a_named_encoding_becomes_the_base_encoding ... ok
[INFO] [stdout] test gsub::tests::liga_is_preferred_when_a_glyph_has_several_features ... ok
[INFO] [stdout] test inject::tests::a_cff_target_is_refused ... ok
[INFO] [stdout] test fixture::tests::the_synthesised_font_is_a_font ... ok
[INFO] [stdout] test gsub::tests::a_font_without_gsub_reports_no_ligatures ... ok
[INFO] [stdout] test gsub::tests::a_liga_lookups_output_glyphs_are_found ... ok
[INFO] [stdout] test gsub::tests::a_non_ligature_feature_is_ignored ... ok
[INFO] [stdout] test gsub::tests::an_extension_lookup_is_followed ... ok
[INFO] [stdout] test inject::tests::a_font_already_using_long_loca_stays_long ... ok
[INFO] [stdout] test inject::tests::a_glyph_is_appended_and_original_ids_do_not_move ... ok
[INFO] [stdout] test inject::tests::injecting_nothing_is_refused ... ok
[INFO] [stdout] test gsub::tests::a_run_with_no_ligatures_asks_for_no_features ... ok
[INFO] [stdout] test inject::tests::component_indices_are_renumbered_to_their_new_ids ... ok
[INFO] [stdout] test inject::tests::metrics_follow_the_injected_glyph ... ok
[INFO] [stdout] test inject::tests::mismatched_units_per_em_is_refused_rather_than_drawn_wrong ... ok
[INFO] [stdout] test inject::tests::the_component_walker_reads_every_flag_form ... ok
[INFO] [stdout] test inject::tests::the_injected_outline_is_the_sources ... ok
[INFO] [stdout] test inject::tests::a_self_referential_composite_terminates ... ok
[INFO] [stdout] test inject::tests::trailing_padding_does_not_extend_the_last_original_glyph ... ok
[INFO] [stdout] test inject::tests::a_simple_glyph_has_no_components ... ok
[INFO] [stdout] test inject::tests::the_rebuilt_font_is_shapeable ... ok
[INFO] [stdout] test inject::tests::a_glyph_id_past_the_source_is_refused ... ok
[INFO] [stdout] test metrics::tests::a_fixed_pitch_face_reports_one_width_for_everything ... ok
[INFO] [stdout] test inject::tests::untouched_tables_are_copied_byte_for_byte ... ok
[INFO] [stdout] test metrics::tests::a_subset_prefixed_alias_resolves ... ok
[INFO] [stdout] test metrics::tests::an_unrecognisable_name_resolves_to_nothing ... ok
[INFO] [stdout] test gsub::tests::the_feature_tag_travels_with_the_glyph ... ok
[INFO] [stdout] test metrics::tests::basic_metrics_are_carried_where_the_source_has_them ... ok
[INFO] [stdout] test metrics::tests::every_face_has_glyphs ... ok
[INFO] [stdout] test metrics::tests::subset_prefixes_are_stripped ... ok
[INFO] [stdout] test metrics::tests::known_widths_match_the_afm_values ... ok
[INFO] [stdout] test metrics::tests::the_common_aliases_resolve ... ok
[INFO] [stdout] test metrics::tests::the_symbolic_faces_have_no_bold_variant ... ok
[INFO] [stdout] test program::tests::a_bare_pfa_is_recognised ... ok
[INFO] [stdout] test metrics::tests::times_new_roman_is_not_read_as_two_families ... ok
[INFO] [stdout] test inject::tests::nested_composites_are_pulled_transitively ... ok
[INFO] [stdout] test inject::tests::rebuilding_without_replacements_preserves_every_table ... ok
[INFO] [stdout] test inject::tests::a_composite_glyph_pulls_its_components ... ok
[INFO] [stdout] test metrics::tests::all_fourteen_are_present ... ok
[INFO] [stdout] test metrics::tests::widths_are_sorted_so_binary_search_is_valid ... ok
[INFO] [stdout] test metrics::tests::an_unknown_glyph_in_a_proportional_face_is_reported_missing ... ok
[INFO] [stdout] test program::tests::a_table_is_found_by_tag ... ok
[INFO] [stdout] test program::tests::a_table_running_past_the_end_is_clamped_not_rejected ... ok
[INFO] [stdout] test program::tests::apples_true_magic_is_accepted ... ok
[INFO] [stdout] test program::tests::an_impossible_table_count_is_rejected ... ok
[INFO] [stdout] test program::tests::an_otto_sfnt_is_recognised_as_cff_outlines ... ok
[INFO] [stdout] test program::tests::noise_is_not_a_font ... ok
[INFO] [stdout] test reshape::tests::adjustments_the_font_does_not_explain_are_the_producers ... ok
[INFO] [stdout] test reshape::tests::an_edit_covering_the_line_reshapes_all_of_it ... ok
[INFO] [stdout] test reshape::tests::an_edit_in_the_first_word_starts_at_zero ... ok
[INFO] [stdout] test reshape::tests::an_edit_in_the_last_word_runs_to_the_line_end ... ok
[INFO] [stdout] test reshape::tests::an_edit_inside_a_word_expands_to_that_word ... ok
[INFO] [stdout] test reshape::tests::an_edit_spanning_two_words_covers_both_whole ... ok
[INFO] [stdout] test inject::tests::loca_widens_when_glyf_crosses_the_short_limit ... ok
[INFO] [stdout] test reshape::tests::an_insertion_at_a_word_start_takes_that_word ... ok
[INFO] [stdout] test reshape::tests::an_insertion_expands_to_the_surrounding_word ... ok
[INFO] [stdout] test program::tests::a_type1_pfb_is_recognised ... ok
[INFO] [stdout] test reshape::tests::a_line_with_no_boundaries_is_one_word ... ok
[INFO] [stdout] test program::tests::a_version_one_sfnt_carrying_cff_is_still_cff ... ok
[INFO] [stdout] test reshape::tests::adjustments_matching_the_font_are_font_kerning ... ok
[INFO] [stdout] test reshape::tests::a_boundary_exactly_at_the_edit_end_does_not_truncate_the_word ... ok
[INFO] [stdout] test reshape::tests::glyphs_outside_the_span_are_preserved ... ok
[INFO] [stdout] test sfnt::tests::a_font_without_head_gets_usable_defaults ... ok
[INFO] [stdout] test sfnt::tests::a_truncated_header_is_rejected ... ok
[INFO] [stdout] test sfnt::tests::a_version_three_post_declines_rather_than_fails ... ok
[INFO] [stdout] test sfnt::tests::advances_come_from_hmtx ... ok
[INFO] [stdout] test reshape::tests::an_empty_line_yields_an_empty_span ... ok
[INFO] [stdout] test gsub::tests::arbitrary_bytes_never_panic ... ok
[INFO] [stdout] test sfnt::tests::an_empty_glyph_is_not_an_error ... ok
[INFO] [stdout] test sfnt::tests::an_impossible_table_count_is_rejected ... ok
[INFO] [stdout] test sfnt::tests::a_collection_reads_the_same_font_as_the_bare_sfnt ... ok
[INFO] [stdout] test sfnt::tests::a_table_overrunning_the_file_is_clamped ... ok
[INFO] [stdout] test reshape::tests::no_adjustments_is_no_kerning ... ok
[INFO] [stdout] test reshape::tests::one_coincidental_match_is_not_font_kerning ... ok
[INFO] [stdout] test reshape::tests::the_span_never_leaves_the_line ... ok
[INFO] [stdout] test sfnt::tests::a_truncated_post_does_not_panic ... ok
[INFO] [stdout] test sfnt::tests::an_otto_font_reports_cff_outlines ... ok
[INFO] [stdout] test sfnt::tests::post_names_read_both_standard_and_custom_entries ... ok
[INFO] [stdout] test sfnt::tests::short_loca_offsets_are_doubled ... ok
[INFO] [stdout] test shape::tests::a_character_the_font_lacks_shapes_to_notdef ... ok
[INFO] [stdout] test sfnt::tests::the_table_directory_parses ... ok
[INFO] [stdout] test shape::tests::a_font_that_will_not_parse_infers_no_ligatures ... ok
[INFO] [stdout] test shape::tests::a_real_font_shapes_to_glyph_ids_and_advances ... ok
[INFO] [stdout] test shape::tests::a_run_that_is_not_a_font_shapes_to_nothing ... ok
[INFO] [stdout] test shape::tests::arabic_is_detected_and_runs_right_to_left ... ok
[INFO] [stdout] test shape::tests::common_characters_carry_no_vote ... ok
[INFO] [stdout] test sfnt::tests::glyph_data_comes_from_loca_ranges ... ok
[INFO] [stdout] test fixture::tests::the_injected_pdf_opens_and_carries_the_new_glyph ... ok
[INFO] [stdout] test sfnt::tests::glyphs_past_the_metric_count_repeat_the_last_advance ... ok
[INFO] [stdout] test program::tests::a_truetype_sfnt_is_recognised ... ok
[INFO] [stdout] test shape::tests::latin_is_detected_and_runs_left_to_right ... ok
[INFO] [stdout] test sfnt::tests::long_loca_is_read_unscaled ... ok
[INFO] [stdout] test program::tests::the_slot_keys_are_the_spec_names ... ok
[INFO] [stdout] test shape::tests::hebrew_and_thaana_run_right_to_left ... ok
[INFO] [stdout] test sfnt::tests::rebuilding_a_collection_produces_a_single_font ... ok
[INFO] [stdout] test sfnt::tests::the_short_loca_limit_is_where_the_spec_says ... ok
[INFO] [stdout] test shape::tests::the_language_is_passed_through_rather_than_guessed ... ok
[INFO] [stdout] test shape::tests::vertical_writing_mode_comes_from_the_file_not_the_text ... ok
[INFO] [stdout] test subset::tests::a_glyph_past_the_end_is_refused ... ok
[INFO] [stdout] test shape::tests::text_with_no_strong_character_defaults_to_latin ... ok
[INFO] [stdout] test shape::tests::the_cjk_scripts_use_their_iso_tags_not_their_names ... ok
[INFO] [stdout] test shape::tests::the_indic_and_south_east_asian_scripts_are_named_correctly ... ok
[INFO] [stdout] test subset::tests::asking_for_nothing_still_yields_a_usable_font ... ok
[INFO] [stdout] test subset::tests::compaction_makes_the_font_smaller ... ok
[INFO] [stdout] test subset::tests::metrics_follow_the_renumbering ... ok
[INFO] [stdout] test subset::tests::notdef_is_kept_even_when_not_asked_for ... ok
[INFO] [stdout] test subset::tests::the_kept_outlines_are_the_originals ... ok
[INFO] [stdout] test subset::tests::unused_glyphs_are_pruned_and_the_rest_renumbered ... ok
[INFO] [stdout] test subset::tests::tables_that_index_glyphs_are_dropped_rather_than_left_stale ... ok
[INFO] [stdout] test subset::tests::the_default_policy_is_sparse_preserving ... ok
[INFO] [stdout] test substitute::tests::a_metric_compatible_clone_beats_a_visually_similar_one ... ok
[INFO] [stdout] test substitute::tests::a_descriptor_reads_from_a_font_dictionary ... ok
[INFO] [stdout] test substitute::tests::a_missing_metric_costs_nothing_rather_than_being_penalised ... ok
[INFO] [stdout] test substitute::tests::a_slant_mismatch_is_visible_in_its_own_term ... ok
[INFO] [stdout] test substitute::tests::an_empty_registry_substitutes_nothing ... ok
[INFO] [stdout] test shape::tests::kerning_is_regenerated_only_when_it_came_from_the_font ... ok
[INFO] [stdout] test substitute::tests::no_shared_glyphs_is_reported_not_scored_as_perfect ... ok
[INFO] [stdout] test substitute::tests::an_identical_font_scores_zero ... ok
[INFO] [stdout] test substitute::tests::several_flag_mismatches_cost_more_than_one ... ok
[INFO] [stdout] test substitute::tests::the_width_term_is_measured_only_over_shared_glyphs ... ok
[INFO] [stdout] test substitute::tests::the_runner_up_shows_how_close_the_decision_was ... ok
[INFO] [stdout] test substitute::tests::ties_break_towards_the_earlier_registration ... ok
[INFO] [stdout] test shape::tests::ligatures_are_inferred_from_the_glyphs_the_producer_emitted ... ok
[INFO] [stdout] test substitute::tests::width_dominates_a_single_flag_mismatch ... ok
[INFO] [stdout] test shape::tests::right_to_left_reverses_the_output_order ... ok
[INFO] [stdout] test type1::tests::a_font_parses_and_yields_its_charstrings ... ok
[INFO] [stdout] test shape::tests::the_dominant_script_wins_over_the_first_one ... ok
[INFO] [stdout] test type1::tests::a_font_with_no_charstrings_is_rejected ... ok
[INFO] [stdout] test subset::tests::a_font_with_no_outlines_is_refused ... ok
[INFO] [stdout] test type1::tests::a_font_with_no_eexec_is_rejected ... ok
[INFO] [stdout] test type1::tests::a_fractional_side_bearing_computed_with_div_is_accepted ... ok
[INFO] [stdout] test type1::tests::a_hex_encoded_private_half_is_decoded ... ok
[INFO] [stdout] test type1::tests::a_pfb_container_is_unwrapped ... ok
[INFO] [stdout] test type1::tests::a_malformed_pfb_is_rejected_not_read_past ... ok
[INFO] [stdout] test type1::tests::a_pfb_with_trailing_padding_still_parses ... ok
[INFO] [stdout] test type1::tests::a_slash_inside_a_subroutine_does_not_derail_the_scan ... ok
[INFO] [stdout] test type1::tests::a_slash_inside_charstring_binary_does_not_start_a_glyph ... ok
[INFO] [stdout] test type1::tests::a_subroutinized_charstring_is_followed_into_its_subr ... ok
[INFO] [stdout] test substitute::tests::a_serif_mismatch_is_penalised ... ok
[INFO] [stdout] test type1::tests::a_correctly_parsed_font_scores_sound ... ok
[INFO] [stdout] test type1::tests::a_non_standard_font_matrix_is_preserved ... ok
[INFO] [stdout] test sfnt::tests::arbitrary_bytes_never_panic ... ok
[INFO] [stdout] test type1::tests::a_callsubr_to_a_missing_subroutine_is_not_sound ... ok
[INFO] [stdout] test type1::tests::the_cipher_round_trips ... ok
[INFO] [stdout] test type1::tests::a_charstring_beginning_with_a_space_byte_keeps_it ... ok
[INFO] [stdout] test type1::tests::the_font_name_and_matrix_are_read ... ok
[INFO] [stdout] test type1::tests::a_cyclic_subroutine_terminates ... ok
[INFO] [stdout] test type1::tests::subroutines_are_decrypted ... ok
[INFO] [stdout] test type1::tests::a_wrong_len_iv_is_visible_in_the_soundness_score ... ok
[INFO] [stdout] test type1::tests::the_builtin_encoding_is_read ... ok
[INFO] [stdout] test type1::tests::glyph_order_follows_the_font ... ok
[INFO] [stdout] test type3::tests::a_font_with_no_encoding_can_draw_nothing ... ok
[INFO] [stdout] test type3::tests::reading_a_procedure_works ... ok
[INFO] [stdout] test type3::tests::the_font_matrix_is_read_because_its_scale_is_arbitrary ... ok
[INFO] [stdout] test type1::tests::the_opening_operator_check_accepts_real_charstrings ... ok
[INFO] [stdout] test type1::tests::the_standard_encoding_shorthand_is_recognised ... ok
[INFO] [stdout] test type1::tests::the_opening_operator_check_rejects_shifted_bytes ... ok
[INFO] [stdout] test type1::tests::len_iv_is_honoured ... ok
[INFO] [stdout] test type3::tests::a_code_named_but_without_a_procedure_cannot_be_drawn ... ok
[INFO] [stdout] test type3::tests::a_type3_font_is_recognised ... ok
[INFO] [stdout] test type3::tests::procedures_and_encoding_are_read ... ok
[INFO] [stdout] test type3::tests::the_missing_codes_are_listed_not_merely_counted ... ok
[INFO] [stdout] test type3::tests::the_missing_list_is_ordered_and_deduplicated ... ok
[INFO] [stdout] test type3::tests::the_refusal_names_the_codes ... ok
[INFO] [stdout] test type1::tests::a_truncated_font_does_not_panic ... ok
[INFO] [stdout] test type1::tests::the_leading_random_bytes_are_discarded ... ok
[INFO] [stdout] test cff_write::tests::a_full_font_is_refused_before_any_work_is_done ... ok
[INFO] [stdout] test cff_write::tests::an_index_at_the_card16_ceiling_is_refused_rather_than_truncated ... ok
[INFO] [stdout] test cff_write::tests::a_cid_font_with_no_free_cid_is_refused_too ... ok
[INFO] [stdout] test cff_write::tests::a_font_one_short_of_full_still_accepts_a_glyph ... ok
[INFO] [stdout] test type1::tests::arbitrary_bytes_never_panic ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 276 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.27s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests rasura_font
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "90d5e9242300d34ca46a58d30a2d9bf4dbeb0fe55a523d4f5f819d13ee819837", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "90d5e9242300d34ca46a58d30a2d9bf4dbeb0fe55a523d4f5f819d13ee819837", kill_on_drop: false }`
[INFO] [stdout] 90d5e9242300d34ca46a58d30a2d9bf4dbeb0fe55a523d4f5f819d13ee819837
