Repository navigation
docs: use a lean conda env for Read the Docs builds - #92
Merged
Merged
Conversation
Every RTD build since mid-2024 (including main/latest) has been killed at RTD's 15-minute limit while running `mamba env create -f ci/test-env.yml`: that env (three channels incl. the old conda-forge/label/cf201901, all samplers and test tooling, unpinned python and 21cmFAST) is too expensive to solve (~11 min even with micromamba 2.9 locally, longer with the mamba 1.x shipped in RTD's mambaforge-23.11 image). Add docs/environment.yaml with just python 3.11, pip, 21cmfast<4 (needs conda for FFTW/GSL) and pytorch-cpu (avoids pip pulling CUDA torch for py21cmemu), all from conda-forge; RTD's existing pip install of `.[docs]` supplies the rest. Solves in ~5s and a local sphinx build succeeds. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Reviewer's guide (collapsed on small PRs)Reviewer's GuideIntroduces a lean, conda-forge-only documentation environment with pinned Python and constrained 21cmFAST, then configures Read the Docs to use it instead of the expensive full test environment. The existing pip docs installation remains responsible for the rest of the documentation toolchain, improving build solve time without changing CI test dependencies. File-Level Changes
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #92 +/- ##
=======================================
Coverage 73.99% 73.99%
=======================================
Files 8 8
Lines 2123 2123
=======================================
Hits 1571 1571
Misses 552 552
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
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.
Every Read the Docs build since mid-2024, for PRs and for
latest/main alike, has been killed at RTD's 15-minute limit while runningmamba env create --file ci/test-env.yml. The last successful build was 24721410 on 2024-06-17. Recent examples: 34949820 (#91) and 34975639 (latest at 7b35331).ci/test-env.ymlis too expensive to solve within that limit. It uses three channels (including the oldconda-forge/label/cf201901), pulls in all the samplers and test tooling, and leaves python and 21cmFAST unpinned. A dry-run solve takes about 11 minutes locally with micromamba 2.9, and longer with the mamba 1.x in RTD'smambaforge-23.11image.Changes
docs/environment.yaml, conda-forge only:python=3.11,pip,21cmfast>=3.3,<4(needs conda for FFTW/GSL), andpytorch-cpu(stops pip pulling CUDA torch for py21cmemu). RTD's existingpip install .[docs]supplies everything else..readthedocs.ymlnow pointsconda.environmentat the new file, with a comment explaining why.ci/test-env.ymlis unchanged.Verified locally
pip install .[docs],py21cmfast,py21cmmcandtorchall import.sphinx-build -b html docssucceeds with 21 warnings. These come from existing docs content: bad link targets in AUTHORS.rst, and a duplicate "Notes" section that stopsCore21cmEMUfrom being autodoc'd.Follow-up:
INSTALLATION.rststill points users at the slowci/test-env.yml.🤖 Generated with Claude Code
Summary by Sourcery
Configure Read the Docs to build documentation with a lean, conda-forge-only environment that avoids timeout-prone dependency solving.
Bug Fixes:
Enhancements:
Documentation: