Skip to content

Commit 07242a8

Browse files
romanlutzCopilot
andcommitted
FIX: Backport minimal RTD config fixes so v0.13.0 builds on RTD
The v0.13.0 release tag predates every RTD fix that landed on main (#1673, #1676, #1682, #1740, #1745, #1793, #1825), so RTD couldn't build v0.13.0 from the tag and the `stable` alias was stuck. This commit backports only the two surgical changes needed to make the v0.13.0 content build under the current RTD environment, with zero changes to any documentation content. After this lands, RTD's v0.13.0 version is reconfigured to track this branch rather than the immutable tag. 1. .readthedocs.yaml -- the tag's config had two issues that combined to make RTD fail before producing any output: * build.jobs.build.commands is not a valid key (RTD only accepts html/pdf/epub/htmlzip under build.jobs.build). This was a hard config-validation error that aborted the build before pip install ran. * jupyter-book build --all builds frontmatter exports only (PDF per doc/myst.yml), not the static HTML site. --html is required to produce _build/html/index.html, which is what RTD serves. The fix merges the commands into the html block, adds --html, and corrects the cp source to _build/html/. The legacy python.install block is kept because v0.13.0 uses [project.optional-dependencies] rather than PEP 735 [dependency-groups] (the latter was introduced on main after the tag). 2. doc/myst.yml -- removes two TOC entries that never resolved: * api/pyrit_setup_initializers.md -- gen_api_md.py does not emit this page because pyrit.setup has its own API members and the script only expands pure-aggregate modules. * api/pyrit_ui.md -- pyrit/ui/ never existed in the v0.13.0 tree. Both would surface as 'Table of contents entry does not exist' errors during the build. The strict-mode, cross-reference, and TOC-validation fixes from PRs #1745 and #1793 are not needed at v0.13.0 because the v0.13.0 build does not use --strict and does not invoke the TOC validator. Verified locally: pip install .[dev] + the pre_build steps + the build step produce doc/_build/html/index.html (196 KB) and 1850 site files. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent 6dc8b94 commit 07242a8

2 files changed

Lines changed: 7 additions & 6 deletions

File tree

.readthedocs.yaml

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,14 @@ build:
1616
- python build_scripts/gen_api_md.py
1717
build:
1818
html:
19-
- cd doc && jupyter-book build --all
20-
commands:
19+
# --all builds frontmatter exports (PDF, per doc/myst.yml); --html is
20+
# required to produce the static HTML site (_build/html/index.html)
21+
# that RTD serves. The 3 commands previously sat in a separate
22+
# `commands:` block, which is not a valid `build.jobs.build` key in
23+
# RTD and caused config validation to fail before any commands ran.
24+
- cd doc && jupyter-book build --all --html
2125
- mkdir -p $READTHEDOCS_OUTPUT/html
22-
- cp -r doc/_build/site/* $READTHEDOCS_OUTPUT/html/
26+
- cp -r doc/_build/html/* $READTHEDOCS_OUTPUT/html/
2327

2428
python:
2529
install:

doc/myst.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -196,10 +196,7 @@ project:
196196
- file: api/pyrit_scenario.md
197197
- file: api/pyrit_score.md
198198
- file: api/pyrit_setup.md
199-
children:
200-
- file: api/pyrit_setup_initializers.md
201199
- file: api/pyrit_show_versions.md
202-
- file: api/pyrit_ui.md
203200
- file: blog/README.md
204201
children:
205202
- file: blog/2025_06_06.md

0 commit comments

Comments
 (0)