Skip to content

docs: fix missing_docs and invalid-link errors (fix docs CI) - #41

Merged
ChrisRackauckas merged 1 commit into
SciML:mainfrom
ChrisRackauckas-Claude:fix-docs-missing-docstrings
Jun 15, 2026
Merged

ChrisRackauckas merged 1 commit into
SciML:mainfrom
ChrisRackauckas-Claude:fix-docs-missing-docstrings

Conversation

@ChrisRackauckas-Claude

Copy link
Copy Markdown
Member

Problem

The docs / Build and Deploy Documentation check on main is red. makedocs terminates at the CheckDocument/CrossReferences stage with two errors, both of which reproduce on a clean main:

  1. :missing_docs — five extension-point functions (try_special_matrices, try_toeplitz, try_banded, try_blockbanded, try_almostbanded) carry docstrings but are not referenced from any @docs/@autodocs block, while docs/make.jl passes modules = [SparseMatrixIdentification].

  2. :cross_references — the sparsestructure docstring contains [2, -1, -1] (requires SpecialMatrices), which Markdown parses as a link with text 2, -1, -1 and a nonexistent local destination requires SpecialMatrices.

(Only :missing_docs is visible at the top of the CI log, but Documenter collects both error categories; both must be fixed for the build to go green.)

Fix

  1. Add an "Extension Point Functions" section to docs/src/api.md listing the five try_* extension points.
  2. Wrap [2, -1, -1] in backticks in the sparsestructure docstring so it renders as inline code rather than a link.

Verification (local, Julia 1.10.11)

makedocs (linkcheck disabled for the offline run; that stage is independent of these two checks) now completes:

MAKEDOCS_OK_FINAL

with no :missing_docs and no :cross_references errors. On clean main the same build emits:

ERROR: LoadError: `makedocs` encountered errors [:missing_docs, :cross_references] -- terminating build before rendering.

Runic leaves the edited source file unchanged.

Please ignore until reviewed by @ChrisRackauckas.

The documentation build fails at the CheckDocument/CrossReferences stage
with two pre-existing errors (both reproduce on a clean `main`):

1. `:missing_docs` -- five extension-point functions
   (`try_special_matrices`, `try_toeplitz`, `try_banded`,
   `try_blockbanded`, `try_almostbanded`) carry docstrings but are not
   referenced from any `@docs`/`@autodocs` block, while `make.jl` passes
   `modules = [SparseMatrixIdentification]`. Add an "Extension Point
   Functions" section to `docs/src/api.md` listing them.

2. `:cross_references` -- the `sparsestructure` docstring contains
   `[2, -1, -1] (requires SpecialMatrices)`, which Markdown parses as a
   link with text `2, -1, -1` and a nonexistent local destination
   `requires SpecialMatrices`. Wrap the pattern in backticks so it
   renders as inline code instead of a link.

Verified locally on Julia 1.10.11: `makedocs` (linkcheck disabled for
the offline run; that stage is unaffected) now completes without
`:missing_docs` or `:cross_references` errors. On clean `main` the same
build emits both errors. Runic leaves the edited source unchanged.

Co-Authored-By: Chris Rackauckas <accounts@chrisrackauckas.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@ChrisRackauckas
ChrisRackauckas marked this pull request as ready for review June 15, 2026 15:15
@ChrisRackauckas
ChrisRackauckas merged commit 12aa961 into SciML:main Jun 15, 2026
10 of 11 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