Build 23 success
test on main · 68e7cb6c93 · queued 2026-08-30 17:50 UTC · finished 2026-08-30 17:51 UTC · ran 49s
setup
$ git clone ssh://git@127.0.0.1/krz/orgo.git (68e7cb6c93)
step 1/4 cargo test --locked
Compiling proc-macro2 v1.0.107
Compiling quote v1.0.47
Compiling unicode-ident v1.0.24
Compiling serde_core v1.0.229
Compiling libc v0.2.189
Compiling find-msvc-tools v0.1.10
Compiling shlex v2.0.1
Compiling cc v1.4.2
Compiling syn v3.0.3
Compiling serde v1.0.229
Compiling bitflags v2.13.1
Compiling cfg-if v1.0.4
Compiling crossbeam-utils v0.8.22
Compiling pkg-config v0.3.33
Compiling crossbeam-epoch v0.9.20
Compiling onig_sys v69.9.3
Compiling autocfg v1.5.1
Compiling inotify-sys v0.1.8
Compiling once_cell v1.21.4
Compiling zmij v1.0.23
Compiling memchr v2.8.3
Compiling utf8parse v0.2.2
Compiling crc32fast v1.5.0
Compiling crossbeam-deque v0.8.7
Compiling anstyle-parse v1.0.0
Compiling num-traits v0.2.19
Compiling anstyle-query v1.1.5
Compiling deranged v0.5.8
Compiling time-core v0.1.9
Compiling equivalent v1.0.2
Compiling log v0.4.33
Compiling thiserror v2.0.20
Compiling colorchoice v1.0.5
Compiling same-file v1.0.6
Compiling simd-adler32 v0.3.10
Compiling is_terminal_polyfill v1.70.2
Compiling rayon-core v1.13.0
Compiling serde_json v1.0.151
Compiling hashbrown v0.17.1
Compiling adler2 v2.0.1
Compiling serde_derive v1.0.229
Compiling num-conv v0.2.2
Compiling powerfmt v0.2.0
Compiling anstyle v1.0.14
Compiling indexmap v2.14.0
Compiling anstream v1.0.0
Compiling time v0.3.55
Compiling miniz_oxide v0.8.9
Compiling thiserror-impl v2.0.20
Compiling walkdir v2.5.0
Compiling quick-xml v0.41.0
Compiling blake3 v1.8.6
Compiling anyhow v1.0.104
Compiling base64 v0.22.1
Compiling getrandom v0.4.3
Compiling clap_lex v1.1.0
Compiling itoa v1.0.18
Compiling winnow v1.0.4
Compiling rustix v1.1.4
Compiling strsim v0.11.1
Compiling linked-hash-map v0.5.6
Compiling camino v1.2.5
Compiling heck v0.5.0
Compiling yaml-rust v0.4.5
Compiling clap_derive v4.6.4
Compiling toml_parser v1.1.3+spec-1.1.0
Compiling clap_builder v4.6.6
Compiling plist v1.10.0
Compiling flate2 v1.1.9
Compiling bincode v1.3.3
Compiling inotify v0.11.4
Compiling onig v6.5.3
Compiling mio v1.2.2
Compiling serde_spanned v1.1.1
Compiling toml_datetime v1.1.1+spec-1.1.0
Compiling notify-types v2.1.0
Compiling arrayref v0.3.9
Compiling cpufeatures v0.3.0
Compiling either v1.17.0
Compiling ascii v1.1.0
Compiling fnv v1.0.7
Compiling arrayvec v0.7.8
Compiling linux-raw-sys v0.12.1
Compiling httpdate v1.0.3
Compiling toml_writer v1.1.2+spec-1.1.0
Compiling constant_time_eq v0.4.2
Compiling chunked_transfer v1.5.0
Compiling regex-syntax v0.8.11
Compiling iana-time-zone v0.1.65
Compiling memo-map v0.3.3
Compiling chrono v0.4.45
Compiling minijinja v2.24.0
Compiling toml v1.1.4+spec-1.1.0
Compiling syntect v5.3.0
Compiling tiny_http v0.12.0
Compiling rayon v1.12.0
Compiling notify v8.2.0
Compiling clap v4.6.6
Compiling fastrand v2.5.0
Compiling tempfile v3.27.0
Compiling console v0.16.4
Compiling similar v2.7.0
Compiling orgo v0.24.0 (/var/lib/gitbay-runner/work/build-125)
Compiling insta v1.48.0
Finished `test` profile [unoptimized + debuginfo] target(s) in 22.00s
Running unittests src/lib.rs (target/debug/deps/orgo-6f6a5bd4072c944e)
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
Running unittests src/main.rs (target/debug/deps/orgo-48d1f2bd0beb9ef3)
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
Running tests/config.rs (target/debug/deps/config-6c2500986bfc453e)
running 94 tests
test a_broken_template_fails_the_build ... ok
test a_built_in_theme_is_written_once_and_linked_from_every_depth ... ok
test a_collection_can_group_by_any_keyword ... ok
test a_bare_directory_of_org_files_builds_with_no_config ... ok
test a_collection_can_carry_its_entries_rendered_bodies ... ok
test a_dark_highlight_theme_is_written_into_the_same_stylesheet ... ok
test a_collection_can_join_the_nav ... ok
test a_collection_generates_a_listing_page_sorted_newest_first ... ok
test a_feed_gets_absolute_urls_from_base_url ... ok
test a_grouped_collection_emits_one_page_per_tag ... ok
test a_feed_is_just_a_listing_page_with_an_xml_template ... ok
test a_grouped_collection_contributes_its_index_to_the_nav ... ok
test a_malformed_config_is_an_error_but_a_missing_one_is_not ... ok
test a_missing_asset_root_is_an_error ... ok
test a_listing_template_can_extend_the_base_layout ... ok
test a_missing_collection_template_names_the_ones_that_exist ... ok
test a_link_to_a_draft_is_reported_as_broken ... ok
test a_listing_can_group_its_entries_by_year ... ok
test a_missing_page_template_is_an_error_naming_it ... ok
test a_page_template_keyword_overrides_the_rule ... ok
test a_pages_rule_matches_whole_path_components ... ok
test a_pages_rule_gives_a_directory_its_own_layout ... ok
test a_pages_rule_without_a_template_is_rejected ... ok
test a_trailing_slash_on_base_url_is_rejected ... ok
test a_new_tag_creates_its_page_and_joins_the_index ... ok
test a_sitemap_lists_every_page_including_generated_ones ... ok
test absolute_leaves_existing_absolute_urls_alone ... ok
test a_user_template_replaces_the_built_in_layout ... ok
test absolute_without_a_base_url_is_an_error_that_says_what_to_set ... ok
test adding_a_pages_rule_rerenders_the_pages_it_covers ... ok
test an_asset_root_publishes_to_the_site_root ... ok
test an_empty_paginated_collection_still_emits_page_one ... ok
test adding_a_post_rebuilds_only_the_listing_and_the_post ... ok
test an_unknown_config_key_is_rejected ... ok
test an_unknown_dark_highlight_theme_is_rejected_by_name ... ok
test an_explicit_nav_can_order_a_generated_page_before_an_authored_one ... ok
test adding_a_tagged_post_rebuilds_only_the_affected_pages ... ok
test an_unknown_site_theme_is_rejected_with_the_available_ones ... ok
test an_unknown_highlight_theme_is_rejected_with_the_available_ones ... ok
test an_unpaginated_collection_has_no_paginator ... ok
test an_output_directory_inside_the_source_is_not_swallowed ... ok
test contradictory_nav_settings_are_rejected ... ok
test colliding_collection_outputs_are_rejected ... ok
test changing_a_page_template_keyword_rerenders_only_that_page ... ok
test dates_are_normalized_from_every_org_shape ... ok
test draft_truthiness_is_forgiving_but_respects_an_explicit_negative ... ok
test dates_convert_to_rfc822_for_rss ... ok
test changing_base_url_re_renders_the_site ... ok
test dot_directories_and_build_inputs_are_never_published ... ok
test drafts_are_excluded_from_the_build_by_default ... ok
test entries_carry_no_content_unless_asked ... ok
test explicit_nav_rejects_a_page_that_does_not_exist ... ok
test excerpts_prefer_the_description_and_fall_back_to_the_first_paragraph ... ok
test editing_a_template_re_renders_every_page_that_uses_it ... ok
test export_options_parse_as_org_writes_them ... ok
test grouping_without_a_placeholder_is_rejected ... ok
test editing_a_post_body_rebuilds_the_listing_that_shows_its_excerpt ... ok
test heading_offset_shifts_content_headings_below_the_page_title ... ok
test explicit_nav_uses_the_configured_order ... ok
test nav_mode_none_drops_a_collection_that_asked_for_the_nav ... ok
test groups_paginate_independently ... ok
test no_base_url_means_no_sitemap ... ok
test no_theme_is_the_default_and_emits_no_stylesheet ... ok
test pagination_placeholders_are_validated ... ok
test options_toc_nil_turns_the_toc_off_for_one_document ... ok
test nav_modes_select_different_pages ... ok
test pagination_splits_entries_and_keeps_page_one_canonical ... ok
test paginator_urls_resolve_from_each_pages_own_depth ... ok
test section_numbering_resets_at_each_level ... ok
test same_day_entries_sort_by_time_of_day ... ok
test section_numbers_are_off_by_default_and_enabled_per_document ... ok
test retitling_a_post_rebuilds_the_listing ... ok
test sort_and_order_are_configurable ... ok
test tags_that_collide_in_a_url_are_rejected ... ok
test switching_the_theme_re_renders_the_pages_that_link_it ... ok
test templates_receive_page_metadata_including_unknown_keywords ... ok
test the_drafts_flag_includes_them ... ok
test page_count_changes_add_and_remove_page_files ... ok
test the_default_layout_emits_a_canonical_link_only_with_a_base_url ... ok
test the_most_specific_pages_rule_wins ... ok
test the_sitemap_can_be_disabled ... ok
test the_table_of_contents_mirrors_the_heading_tree ... ok
test the_page_list_is_opt_in_and_widens_invalidation ... ok
test the_paginator_exposes_a_numbered_page_list ... ok
test the_theme_is_linked_ahead_of_the_syntax_stylesheet ... ok
test the_tag_index_lists_every_tag_with_counts ... ok
test the_toc_can_be_disabled_site_wide ... ok
test toc_anchors_match_the_ids_the_headings_are_emitted_with ... ok
test two_assets_claiming_one_url_is_an_error ... ok
test the_truncate_filter_cuts_on_a_word_boundary ... ok
test undated_pages_sort_last_whichever_direction ... ok
test urls_stay_readable_while_user_content_is_still_escaped ... ok
test well_known_is_published_but_other_dot_entries_are_not ... ok
test word_count_and_reading_time_ignore_code_blocks ... ok
test result: ok. 94 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.18s
Running tests/conformance.rs (target/debug/deps/conformance-b582096a1fe6d92e)
running 1 test
test orgo_matches_the_conformance_corpus ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
Running tests/constructs.rs (target/debug/deps/constructs-97d309b2546f4962)
running 57 tests
test a_document_can_turn_special_strings_off ... ok
test a_document_can_turn_entities_off ... ok
test a_blank_line_ends_a_captions_association ... ok
test a_document_can_restrict_sub_and_superscripts ... ok
test an_unexpanded_include_reports_itself ... ok
test a_special_block_holds_org_not_text ... ok
test an_ordinary_leading_comma_is_not_stripped ... ok
test a_tables_special_column_and_marker_rows_are_dropped ... ok
test audit_counts_real_entities ... ok
test audit_counts_table_formulas_as_in_scope ... ok
test audit_ignores_backslashes_that_are_not_entities ... ok
test audit_counts_special_blocks_as_in_scope ... ok
test audit_ignores_constructs_inside_verbatim ... ok
test audit_marks_unhandled_keywords_as_pass_through ... ok
test diagnostic_lines_survive_nesting ... ok
test dollar_amounts_are_not_latex ... ok
test entities_become_their_characters ... ok
test explicit_alt_attribute_replaces_the_caption_derived_one ... ok
test footnote_links_and_section_are_labelled ... ok
test heading_levels_are_relative_to_the_shallowest_heading ... ok
test babel_is_not_executed_and_results_are_dropped ... ok
test drawers_are_parsed_and_dropped ... ok
test headings_element_tree ... ok
test highlighting_emits_classes_not_inline_styles ... ok
test headings_html ... ok
test blocks_html ... ok
test latex_fragments_are_left_intact ... ok
test images_html ... ok
test latex_macros_and_radio_targets_stay_literal ... ok
test include_is_not_expanded ... ok
test nested_list_is_nested_in_the_parent_item ... ok
test lists_html ... ok
test lists_element_tree ... ok
test preamble_keywords_do_not_disturb_the_content_around_them ... ok
test out_of_scope_fixture_renders_without_crashing ... ok
test non_html_export_blocks_are_dropped ... ok
test stray_block_end_is_reported_with_its_line ... ok
test sub_and_superscripts_convert ... ok
test special_strings_leave_code_alone ... ok
test tables_take_a_numbered_caption ... ok
test out_of_scope_html ... ok
test table_formulas_are_inert ... ok
test special_strings_become_real_punctuation ... ok
test timestamps_element_tree ... ok
test the_toml_syntax_distinguishes_its_shapes ... ok
test the_comma_escape_is_removed_from_block_content ... ok
test timestamps_html ... ok
test underline_still_wins_where_org_says_it_does ... ok
test unknown_entities_and_longer_words_stay_literal ... ok
test unknown_source_language_falls_back_to_plain_code ... ok
test unterminated_block_is_reported_with_its_line ... ok
test todo_keyword_requires_a_word_boundary ... ok
test unterminated_drawer_is_reported_with_its_line ... ok
test verbatim_can_start_with_its_own_marker ... ok
test toml_and_org_blocks_are_highlighted ... ok
test verse_and_special_blocks_keep_their_content ... ok
test well_formed_fixtures_produce_no_diagnostics ... ok
test result: ok. 57 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.98s
Running tests/harness.rs (target/debug/deps/harness-0ef44cea883dc6ea)
running 2 tests
test content_hash_is_deterministic_blake3 ... ok
test element_tree_json_snapshot ... ok
test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
Running tests/incremental.rs (target/debug/deps/incremental-108a51c827d1e73d)
running 14 tests
test cache_version_mismatch_falls_back_to_full_rebuild ... ok
test changing_a_title_rebuilds_every_page_for_the_shared_nav ... ok
test a_previous_build_output_is_not_copied_as_assets ... ok
test adding_a_nested_page_does_not_rebuild_the_site ... ok
test editing_a_leaf_page_rebuilds_only_itself ... ok
test editing_a_page_rebuilds_it_and_its_linkers_exactly ... ok
test corrupt_cache_falls_back_without_crashing ... ok
test editing_one_template_rebuilds_only_the_pages_that_use_it ... ok
test nav_lists_only_top_level_pages ... ok
test missing_cache_falls_back_to_full_rebuild ... ok
test renaming_a_linked_heading_invalidates_the_linking_page ... ok
test full_and_incremental_are_byte_identical_and_second_build_renders_nothing ... ok
test retitling_a_top_level_page_still_rebuilds_the_site ... ok
test parallel_builds_are_deterministic_in_output_and_report_order ... ok
test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.05s
Running tests/oracle.rs (target/debug/deps/oracle-794536e159149b32)
running 14 tests
test heading_structure_matches_emacs ... ok
test every_divergence_from_emacs_is_deliberate ... ok
test list_nesting_matches_emacs ... ok
test oracle_blocks ... ok
test oracle_core ... ok
test oracle_elements ... ok
test oracle_headings ... ok
test oracle_footnote ... ok
test oracle_lists ... ok
test oracle_images ... ok
test oracle_minimal ... ok
test oracle_table ... ok
test oracle_timestamps ... ok
test source_block_text_matches_emacs ... ok
test result: ok. 14 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
Running tests/pipeline.rs (target/debug/deps/pipeline-7eb55d4a14f24b36)
running 4 tests
test core_element_tree ... ok
test minimal_element_tree ... ok
test minimal_html ... ok
test core_html ... ok
test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.96s
Running tests/serve.rs (target/debug/deps/serve-d9cdcbdae4bc412f)
running 10 tests
test non_utf8_content_is_passed_through_untouched ... ok
test injection_falls_back_to_appending ... ok
test embedded_nul_bytes_are_rejected ... ok
test no_url_can_escape_the_output_directory ... ok
test plus_is_not_decoded_as_a_space ... ok
test the_reload_script_is_injected_before_the_closing_body_tag ... ok
test the_poll_parameter_is_read_from_the_query ... ok
test urls_resolve_to_files_and_directory_indexes ... ok
test the_running_server_refuses_to_escape_its_root ... ok
test serving_a_site_reloads_the_browser_when_a_source_changes ... ok
test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.53s
Running tests/site.rs (target/debug/deps/site-aadc2a7711a82cf0)
running 11 tests
test colliding_slugs_are_a_build_error ... ok
test cross_file_link_resolves ... ok
test resolve_records_used_targets ... ok
test links_resolve_through_the_slug ... ok
test slug_renames_the_output_page ... ok
test slugs_cannot_escape_the_output_directory ... ok
test footnote_render ... ok
test site_guide_html ... ok
test site_index_html ... ok
test table_render ... ok
test unresolved_link_is_reported_not_fatal ... ok
test result: ok. 11 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 1.00s
Running tests/watch.rs (target/debug/deps/watch-c6e201ae23949734)
running 6 tests
test an_external_output_directory_suppresses_nothing ... ok
test changes_under_the_output_directory_are_ignored ... ok
test build_inputs_trigger_a_rebuild_even_though_discovery_skips_them ... ok
test absolute_event_paths_are_reduced_to_a_sorted_unique_set ... ok
test dot_directories_and_editor_scratch_files_are_ignored ... ok
test watching_rebuilds_the_site_when_a_source_file_changes ... ok
test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 3.73s
Doc-tests orgo
running 0 tests
test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
step 2/4 cargo clippy --all-targets --locked -- -D warnings
Checking serde_core v1.0.229
Checking libc v0.2.189
Checking bitflags v2.13.1
Checking cfg-if v1.0.4
Checking crossbeam-utils v0.8.22
Checking once_cell v1.21.4
Checking memchr v2.8.3
Checking utf8parse v0.2.2
Checking anstyle-parse v1.0.0
Checking crossbeam-epoch v0.9.20
Checking anstyle-query v1.1.5
Checking hashbrown v0.17.1
Checking powerfmt v0.2.0
Checking colorchoice v1.0.5
Checking deranged v0.5.8
Checking anstyle v1.0.14
Checking same-file v1.0.6
Checking log v0.4.33
Checking is_terminal_polyfill v1.70.2
Checking time-core v0.1.9
Checking simd-adler32 v0.3.10
Checking adler2 v2.0.1
Checking equivalent v1.0.2
Checking num-conv v0.2.2
Checking indexmap v2.14.0
Checking miniz_oxide v0.8.9
Checking serde v1.0.229
Checking time v0.3.55
Checking anstream v1.0.0
Checking walkdir v2.5.0
Checking inotify-sys v0.1.8
Checking crossbeam-deque v0.8.7
Checking onig_sys v69.9.3
Checking quick-xml v0.41.0
Checking zmij v1.0.23
Checking crc32fast v1.5.0
Checking strsim v0.11.1
Checking linked-hash-map v0.5.6
Checking clap_lex v1.1.0
Checking winnow v1.0.4
Checking base64 v0.22.1
Checking itoa v1.0.18
Checking toml_parser v1.1.3+spec-1.1.0
Checking clap_builder v4.6.6
Checking serde_json v1.0.151
Checking yaml-rust v0.4.5
Checking thiserror v2.0.20
Checking flate2 v1.1.9
Checking bincode v1.3.3
Checking rayon-core v1.13.0
Checking plist v1.10.0
Checking num-traits v0.2.19
Checking onig v6.5.3
Checking inotify v0.11.4
Checking serde_spanned v1.1.1
Checking toml_datetime v1.1.1+spec-1.1.0
Checking mio v1.2.2
Checking notify-types v2.1.0
Checking linux-raw-sys v0.12.1
Checking regex-syntax v0.8.11
Checking cpufeatures v0.3.0
Checking toml_writer v1.1.2+spec-1.1.0
Checking either v1.17.0
Checking fnv v1.0.7
Checking ascii v1.1.0
Checking httpdate v1.0.3
Checking memo-map v0.3.3
Checking iana-time-zone v0.1.65
Checking arrayvec v0.7.8
Checking constant_time_eq v0.4.2
Checking chunked_transfer v1.5.0
Checking arrayref v0.3.9
Checking chrono v0.4.45
Checking tiny_http v0.12.0
Checking blake3 v1.8.6
Checking minijinja v2.24.0
Checking rustix v1.1.4
Checking toml v1.1.4+spec-1.1.0
Checking syntect v5.3.0
Checking rayon v1.12.0
Checking notify v8.2.0
Checking clap v4.6.6
Checking camino v1.2.5
Checking getrandom v0.4.3
Checking anyhow v1.0.104
Checking fastrand v2.5.0
Checking console v0.16.4
Checking similar v2.7.0
Checking tempfile v3.27.0
Checking insta v1.48.0
Checking orgo v0.24.0 (/var/lib/gitbay-runner/work/build-125)
Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.81s
step 3/4 cargo run --locked -- build docs -o "/tmp/orgo-docs-$GITBAY_SHA" --strict
Compiling bitflags v2.13.1
Compiling inotify v0.11.4
Compiling notify-types v2.1.0
Compiling onig v6.5.3
Compiling notify v8.2.0
Compiling syntect v5.3.0
Compiling orgo v0.24.0 (/var/lib/gitbay-runner/work/build-125)
Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.07s
Running `target/debug/orgo build docs -o /tmp/orgo-docs-68e7cb6c93e0b862a3d4717b1b05d3bbfe5c6251 --strict`
built 15 page(s) (15 rendered, 0 cached), copied 2 asset(s) from docs -> /tmp/orgo-docs-68e7cb6c93e0b862a3d4717b1b05d3bbfe5c6251 (0 unresolved link(s), 0 diagnostic(s))
step 4/4 rm -rf "/tmp/orgo-docs-$GITBAY_SHA"