Restore the Read the Docs build and refresh the docs - #36
Merged
Merged
Conversation
Read the Docs removed the ubuntu-20.04 build image on 2026-06-01, and .readthedocs.yaml had asked for it since 2022, so the hosted docs stop building before Sphinx runs. Move to ubuntu-24.04 on Python 3.12, which also needs newer docs pins: Sphinx 5.2.3 imports the imghdr module that Python 3.13 removed. The build does not install the package - conf.py mocks the third-party imports and scrapes the version out of pyproject.toml - so the interpreter here is independent of the requires-python floor. The build is warning-free against those pins, so turn on sphinx.fail_on_warning: a new warning means a cross-reference or an object name has drifted, and it should fail rather than land silently. Dropping html_static_path removes the one warning that stood in the way, since the tree keeps no _static directory. Content fixes found while checking the pages against the code: - The first Isocortex2dProjector example was missing a comma after hemisphere="both", so copying it raised a SyntaxError, and the coordinate projector example passed "flatmap_buttefly.h5". - The CCF white paper link 404ed into a forum category page. Repoint it at the 2017 technical white paper, confirmed to be the document the guide quotes and the source of the Figure 4 image. - Add an Installation section; the docs never said how to install the package or that the reference files come separately. - Upgrade the Allen download links to https, which they redirect to anyway, and fix three prose typos. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
gouwens
marked this pull request as ready for review
August 31, 2026 23:06
gouwens
added a commit
that referenced
this pull request
Aug 31, 2026
PR #36 landed while this branch was in flight and touched two files it also changes. docs/source/conf.py conflicted twice. Both were main's content against this branch's reformatting, and both resolve to main's content with the formatter re-run over it. The second one mattered: main deliberately removed `html_static_path`, because pointing it at a `_static` directory the tree does not have was the docs build's only warning, and .readthedocs.yaml builds with `fail_on_warning: true`. Taking this branch's side would have reinstated the line and broken the RTD build. CLAUDE.md conflicted twice as well: - The Commands block. This branch was cut before #36 corrected the Sphinx version, so merging its side verbatim would have reverted `sphinx 9.1.0` back to `5.2.3`. Kept main's line, added the two ruff commands. - The Gotchas list. Kept main's new Read the Docs entry and this branch's note about the one `# noqa: E402`. Dropped the dead-imports entry, which this branch made obsolete by removing those imports, and the processing.rst heading entry, which #36 fixed and removed the claim for. Merged tree verified: ruff check clean, 38 files already formatted, 366 passed / 36 skipped, and conf.py still scrapes version 1.2.0. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The hosted docs at https://ccf-streamlines.readthedocs.io are not rebuilding.
.readthedocs.yamlhas asked forbuild.os: ubuntu-20.04since October 2022,and Read the Docs removed that image on 2026-06-01,
so the build now fails before Sphinx starts. The published site is serving a
snapshot old enough to predate the Glossary page.
Build
ubuntu-24.04/ Python 3.12. The docs build does not install the package(
conf.pymocks the third-party imports and regex-scrapes the version out ofpyproject.toml), so this interpreter is independent of therequires-pythonfloor in
pyproject.toml.docs/requirements.txtmoves to Sphinx 9.1.0 / pydata-sphinx-theme 0.21.0.The old pins could not simply be carried forward: Sphinx 5.2.3 imports
imghdr, which Python 3.13 removed.sphinx.fail_on_warning: true, now that the build is warning-free. Droppinghtml_static_path(the tree keeps no_staticdirectory) removed the onlywarning.
Content
Found by checking each page against the current code and by running
sphinx-build -b linkcheck:Isocortex2dProjectorexample was missing a comma afterhemisphere="both", so copying it out of the guide raised aSyntaxError.The coordinate projector example asked for
flatmap_buttefly.h5.the 2017 technical white paper, verified to contain the passage the guide
quotes and the Figure 4 that
ccf_whitepaper_figure_4.pngshows.pip install ccf-streamlines,that imports are by submodule, or that the reference files are downloaded
separately.
reference/processing.rstwas titledccf_streamlines.projection.three prose typos.
linkcheckis clean apart from cell.com, which answers every non-browser clientwith a 403; that is recorded in
linkcheck_ignorewith the reason.Checks
sphinx-build -b html -W --keep-goingon Python 3.12 with the new pins:build succeeded, no warnings.
uv run pytest: 366 passed, 36 skipped.🤖 Generated with Claude Code