[PATCH v2 0/5] Address some issues with sphinx detection

Mauro Carvalho Chehab
2022-07-02T10:11:45Z

Checking if Sphinx is available and read to run is tricky, and may involve
installing several packages for the document build to happen.

There are two options to install Sphinx:

- via distro-provided packages;
- via pip, using virtualenv/venv.

Some recent discussions showed a couple of misleading instructions.

This series improves the Sphinx detection by:

- Fixing the logich with checks if a past venv is working and recommend
just enabling it instead of installing a new venv;
- Detect if sphinx-build stopped working on a venv. This may happen during
distribution updates;
- Move the PDF minimal version to be later, in order for it to be printed only
after finishing the Sphinx version check;

Additionally, as now the Sphinx provided on almost all modern distros are
above the minimal required version, place instructions about how to install
Sphinx from the distro-provided packages after placing the instructions for
installing it via venv.

This will hopefully help to have more developers checking documentation
builds with

make htmldocs

---

v2:
- Fix some issues at the logic that was recommending installing via
distro-package manager;
- Add a notice about Sphinx 3.0+ false-positive warnings due to a
Sphinx bug. People using a version different than the recommended
one should know about that.

Mauro Carvalho Chehab (5):
scripts: sphinx-pre-install: fix venv version check logic
scripts: sphinx-pre-install: report broken venv
scripts: sphinx-pre-install: check for PDF min version later on
scripts: sphinx-pre-install: provide both venv and package installs
scripts: sphinx-pre-install: place a warning for Sphinx >= 3.0

scripts/sphinx-pre-install | 90 +++++++++++++++++++++++++++++---------
1 file changed, 69 insertions(+), 21 deletions(-)

--
2.36.1