Skip to content

Fix broken @extref links breaking the docs build#598

Merged
jd-lara merged 1 commit into
mainfrom
dt/fix-docs-extrefs
Jul 26, 2026
Merged

Fix broken @extref links breaking the docs build#598
jd-lara merged 1 commit into
mainfrom
dt/fix-docs-extrefs

Conversation

@daniel-thom

Copy link
Copy Markdown
Contributor

Problem

The Documentation CI job has been failing on main since run 27879924041 (2026-06-20), and on every open PR branch as a result. Two @extref (DocumenterInterLinks) references no longer resolve against the upstream inventories, and makedocs treats :external_cross_references as fatal:

ERROR: LoadError: `makedocs` encountered an error [:external_cross_references] -- terminating build before rendering.

Because the failure happens in the external-link phase, the build terminates before rendering — nothing else in the CI log is a real signal.

Cause and fix

File Was Why it broke Now
docs_best_practices/how-to/troubleshoot.md @extref `JuliaFormatter.format-Tuple{Any}` JuliaFormatter's inventory registers format as a jl:function with no signature suffix @extref JuliaFormatter.format
docs_best_practices/how-to/write_a_tutorial.md @extref tutorial_time_series PowerSystems renamed the page (Literate-generated now), dropping the label @extref PowerSystems :doc:`tutorials/generated_working_with_time_series`

Also converts a hard-coded URL to that same PowerSystems tutorial (write_a_tutorial.md:13) into an @extref. It currently 404s for the same rename reason — Documenter doesn't linkcheck it, so it wasn't a build failure, just a dead link. general_formatting.md in this same guide tells authors to prefer @extref over hard-coded URLs.

Verification

julia --project=docs docs/make.jl exits 0 with zero cannot resolve external link errors. Confirmed the rendered HTML points at live URLs:

  • https://juliaeditorsupport.github.io/JuliaFormatter.jl/stable/api/#JuliaFormatter.format
  • https://sienna-platform.github.io/PowerSystems.jl/stable/tutorials/generated_working_with_time_series/

Remaining build warnings (unbalanced $ in InfrastructureSystems.md, the page-size warning) are pre-existing and non-fatal.

🤖 Generated with Claude Code

Two external cross-references no longer resolve against the upstream
inventories, and makedocs treats :external_cross_references as fatal, so
the Documentation job fails before rendering:

- JuliaFormatter registers `format` as a jl:function with no signature
  suffix, so `JuliaFormatter.format-Tuple{Any}` is gone.
- PowerSystems renamed the time-series tutorial page, dropping the
  `tutorial_time_series` label.

Also convert a hard-coded URL to the same (renamed, now 404ing)
PowerSystems tutorial into an @extref, per the guidance in
general_formatting.md.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@daniel-thom
daniel-thom requested a review from jd-lara July 25, 2026 19:16
@codecov

codecov Bot commented Jul 25, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 78.86%. Comparing base (9af896f) to head (8429356).

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main     #598      +/-   ##
==========================================
- Coverage   78.88%   78.86%   -0.02%     
==========================================
  Files          75       75              
  Lines        6660     6649      -11     
==========================================
- Hits         5254     5244      -10     
+ Misses       1406     1405       -1     
Flag Coverage Δ
unittests 78.86% <ø> (-0.02%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.
see 6 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@jd-lara
jd-lara merged commit 21deec2 into main Jul 26, 2026
10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants