-
Notifications
You must be signed in to change notification settings - Fork 9
Description
Often our documentation breaks due to a change in a dependency; which causes all PRs to stall.
A better solution would be to pin all versions of the packages used and then install those versions:
# setup environment
pkgmt setup --doc
# generate a file with pinned version
conda env export --no-build --name ENV_NAME Note that we need to edit edit doc/environment.lock.yml and change the package (e.g., jupysql==0.7.0dev) for -e ...
Then, we update the .readthedocs.yml file to use such lock file.
Since it's essential to check that new package versions work, we can run this process in a cron job (e.g., every 2 weeks), so it re-generates the environment with the latest versions and opens a PR. If all goes well, we can merge it, otherwise, we can investigate and fix it without stalling PRs.
An important consideration is that conda env export does not generate cross-platform files, so we must ensure that we generate this file from a Linux machine, since that's what readthedocs uses.
example: ploomber/jupysql#345 (note that this hasn't been fully automated, I did everything manually)