diff --git a/HACKING.md b/HACKING.md index 0643c0c62..f8a008d35 100644 --- a/HACKING.md +++ b/HACKING.md @@ -26,6 +26,9 @@ tox -e unit test/test_charm.py # Format the code using isort and autopep8 tox -e fmt +# Compile the requirements.txt file for docs +tox -e docs-deps + # Generate a local copy of the Sphinx docs in docs/_build tox -e docs @@ -198,6 +201,13 @@ tox -e docs open docs/_build/html/index.html ``` +If dependencies are updated in `pyproject.toml`, you can run the following command +before generating docs to recompile the `requirements.txt` file used for docs: + +```sh +tox -e docs-deps +``` + ## How to Pull in Style Changes The documentation uses Canonical styling which is customised on top of the [Furo Sphinx theme](https://github.com/pradyunsg/furo). The easiest way to pull in Canonical style changes is by using the Canonical documentation starter pack, see [docs](https://canonical-starter-pack.readthedocs-hosted.com/) and [repository](https://github.com/canonical/sphinx-docs-starter-pack). diff --git a/tox.ini b/tox.ini index 15c1a46f8..504542475 100644 --- a/tox.ini +++ b/tox.ini @@ -23,11 +23,16 @@ passenv = PATH MODEL_SETTINGS +[testenv:docs-deps] +description = Compile the requirements.txt file for docs +deps = pip-tools +commands = + pip-compile --extra=docs -o docs/requirements.txt pyproject.toml + [testenv:docs] description = Build the Sphinx docs deps = pip-tools commands_pre = - pip-compile --extra=docs -o docs/requirements.txt pyproject.toml pip-sync {toxinidir}/docs/requirements.txt commands = sphinx-build -W --keep-going docs/ docs/_build/html