From 9b5f6c7399fa06fe511dea2a87de9f8110f342e9 Mon Sep 17 00:00:00 2001
From: ulif <uli@gnufix.de>
Date: Wed, 24 Jul 2024 16:06:13 +0200
Subject: [PATCH] Use `pyproject.toml` for dependencies of docs.

As tools to generate docs are now defined in `pyproject.toml`, we use
them to generate a list of pinned dependencies (as recommended by
rtfm.org).

This way we still have to update the dependency list
`docs/requirements.txt` manually from time to time, but now we only use
a single source of base dependencies - the `docs`-extra dependency of
the package.
---
 README.rst            |  2 +-
 docs/requirements.in  |  2 --
 docs/requirements.txt | 41 ++++++++++++++++++-----------------------
 3 files changed, 19 insertions(+), 26 deletions(-)
 delete mode 100644 docs/requirements.in

diff --git a/README.rst b/README.rst
index 2f9130d..58caa64 100644
--- a/README.rst
+++ b/README.rst
@@ -372,7 +372,7 @@ Documentation Install
 The docs can be generated with Sphinx_. The needed packages are
 installed via::
 
-  (py311) $ pip install -r docs/requirements.txt
+  (py311) $ pip install '.[docs]'
 
 To create the docs as HTML in a directory of your choice, then run::
 
diff --git a/docs/requirements.in b/docs/requirements.in
deleted file mode 100644
index 8213302..0000000
--- a/docs/requirements.in
+++ /dev/null
@@ -1,2 +0,0 @@
-sphinx
-sphinx_rtd_theme
diff --git a/docs/requirements.txt b/docs/requirements.txt
index 83cdc10..4d417d4 100644
--- a/docs/requirements.txt
+++ b/docs/requirements.txt
@@ -2,17 +2,17 @@
 # This file is autogenerated by pip-compile with Python 3.11
 # by the following command:
 #
-#    pip-compile --strip-extras docs/requirements.in
+#    pip-compile --extra=docs --strip-extras
 #
-alabaster==0.7.13
+alabaster==0.7.16
     # via sphinx
-babel==2.12.1
+babel==2.15.0
     # via sphinx
 certifi==2024.7.4
     # via requests
-charset-normalizer==3.2.0
+charset-normalizer==3.3.2
     # via requests
-docutils==0.18.1
+docutils==0.20.1
     # via
     #   sphinx
     #   sphinx-rtd-theme
@@ -22,41 +22,36 @@ imagesize==1.4.1
     # via sphinx
 jinja2==3.1.4
     # via sphinx
-markupsafe==2.1.3
+markupsafe==2.1.5
     # via jinja2
-packaging==23.1
+packaging==24.1
     # via sphinx
-pygments==2.16.1
+pygments==2.18.0
     # via sphinx
-requests==2.32.2
+requests==2.32.3
     # via sphinx
 snowballstemmer==2.2.0
     # via sphinx
-sphinx==6.2.1
+sphinx==7.4.7
     # via
-    #   -r requirements.in
+    #   diceware (pyproject.toml)
     #   sphinx-rtd-theme
-    #   sphinxcontrib-applehelp
-    #   sphinxcontrib-devhelp
-    #   sphinxcontrib-htmlhelp
     #   sphinxcontrib-jquery
-    #   sphinxcontrib-qthelp
-    #   sphinxcontrib-serializinghtml
-sphinx-rtd-theme==1.2.2
-    # via -r requirements.in
-sphinxcontrib-applehelp==1.0.7
+sphinx-rtd-theme==2.0.0
+    # via diceware (pyproject.toml)
+sphinxcontrib-applehelp==1.0.8
     # via sphinx
-sphinxcontrib-devhelp==1.0.5
+sphinxcontrib-devhelp==1.0.6
     # via sphinx
-sphinxcontrib-htmlhelp==2.0.4
+sphinxcontrib-htmlhelp==2.0.6
     # via sphinx
 sphinxcontrib-jquery==4.1
     # via sphinx-rtd-theme
 sphinxcontrib-jsmath==1.0.1
     # via sphinx
-sphinxcontrib-qthelp==1.0.6
+sphinxcontrib-qthelp==1.0.8
     # via sphinx
-sphinxcontrib-serializinghtml==1.1.8
+sphinxcontrib-serializinghtml==1.1.10
     # via sphinx
 urllib3==2.2.2
     # via requests
-- 
GitLab