Skip to content

Pin breathe<5 in the Docs workflow - #303

Merged
djkees merged 2 commits into
mainfrom
claude/docs-pin-breathe
Sep 25, 2026
Merged

djkees merged 2 commits into
mainfrom
claude/docs-pin-breathe

Conversation

@djkees

@djkees djkees commented Sep 25, 2026

Copy link
Copy Markdown
Owner

Summary

The Docs workflow has failed on every push to main since 2026-09-21. docs.yml installs sphinx and breathe unpinned, so it picked up breathe 5.0.0 (released 2026-09-21), which crashes while rendering the Fortran API page. Pins breathe<5 until that is fixed upstream.

Changes

  • docs.yml: pip install sphinx breathe → pip install sphinx "breathe<5"

The crash is inside breathe, not CEA (Sphinx 9.1.0 in both cases):

File ".../breathe/renderer/sphinxrenderer.py", line 480, in get_definition_without_template_args
    if len(data_object.bitfield) > 0:
TypeError: object of type 'NoneType' has no len()

docs.yml only triggers on push to main, so PR checks never showed this. The deploy job is skipped when the build fails, so the docs site has not been updating.

Testing

  • Ran the workflow via workflow_dispatch on this branch: https://github.com/djkees/cea/actions/runs/36161125503. It installed breathe 4.36.0 with Sphinx 9.1.0, and "Build Sphinx HTML" passed (build succeeded, 1 warning), as did "Upload Pages artifact".
  • The deploy job in that run was rejected by the github-pages environment's branch protection (only main may deploy), so the run shows red overall. That is not a code failure. deploy-pages will first run for real once this merges to main.

Compatibility / Numerical behavior

  • No expected changes to numerical results

Drafted with Claude's assistance.

  • Confirmed the failure cause from the failed run's log (traceback above) and checked PyPI: breathe 5.0.0 was released 2026-09-21T18:50Z, after the last successful Docs run (2026-09-17).
  • Verified the fix by running the pinned build on this branch and reading the log for the installed versions (breathe-4.36.0, sphinx-9.1.0) and the build succeeded line, rather than relying on job status alone.
  • Confirmed the diff is a single line in docs.yml (git diff).

🤖 Generated with Claude Code

djkees and others added 2 commits September 25, 2026 10:29
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@djkees
djkees merged commit da113b2 into main Sep 25, 2026
39 checks passed
@djkees djkees mentioned this pull request Sep 25, 2026
1 task done
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.

1 participant