Upgrade documentation environments to Sphinx 9 - #2599
Conversation
|
@mdboom I opened this draft PR for #2598. It updates the shared CI documentation environment from Sphinx <8.2.0 to Sphinx 9.x, along with the three component Pixi manifests and the local setup script. The local syntax and consistency checks pass; the full docs build is intended to run in CI because Pixi is not installed locally. Please let me know if you would like any changes, or if the team would prefer to handle this upgrade internally. Thanks! |
|
/ok to test 53b0e5e |
|
I pushed a follow-up fix to the PR branch. The Sphinx 9 upgrade was leaving |
|
/ok to test 5e75843 |
conda-forge tops out at sphinx-toolbox 4.1.2, which does not support Sphinx 9. Declaring the package in both [feature.docs.dependencies] and [feature.docs.pypi-dependencies] leaves the conda 4.1.2 build in the solve, so the >=4.2.0 requirement never takes effect. Drop the conda entry in all three manifests, matching environment-docs.yml. Signed-off-by: Aryan Putta <aryansputta@gmail.com>
|
Head is now 1. Merged current That is #2212 ( The other 17 build jobs on that run passed. Because 2. Dropped the conda With the package declared on both sides the conda build stays in the solve and the One thing I cannot do locally: Could you rerun CI when convenient? @mdboom |
|
Follow-up: I installed Pixi and verified the solve. The result is stronger than I described above, so recording it here. On the previous head Pixi pins the PyPI resolution to whatever the conda solve chose, so declaring On the current head The regenerated lock stays at I have not committed the regenerated
|
Summary
Motivation
Closes #2598. The repository currently constrains Sphinx to
<8.2.0, which prevents keeping the documentation toolchain current and can cause documented Sphinx directive syntax to drift from the installed version.This is separate from #2584, which fixes documentation defects rather than the dependency upgrade.
Validation
bash -n toolshed/setup-docs-env.shgit diff --checkPixi is not installed in the local environment, so the component documentation builds could not be run locally. CI should validate Sphinx 9.x compatibility across the documentation builds.