[us-commits] [ehb54/ultrascan3] d689ce: Robustly detect sphinx-build/python3 for DOMAN doc...

emre brookes noreply at github.com
Tue Jun 23 10:50:08 MDT 2026


  Branch: refs/heads/main
  Home:   https://github.com/ehb54/ultrascan3
  Commit: d689ce8f674d78d26e7bff34f3928a4950f933af
      https://github.com/ehb54/ultrascan3/commit/d689ce8f674d78d26e7bff34f3928a4950f933af
  Author: ehb54 <brookes at uthscsa.edu>
  Date:   2026-06-22 (Mon, 22 Jun 2026)

  Changed paths:
    M makeall.sh

  Log Message:
  -----------
  Robustly detect sphinx-build/python3 for DOMAN doc build on RHEL8

RHEL8 variants ship a too-old default python3 (3.6) plus optional
python3.11/python3.12 packages with no sphinx-build shim on PATH,
so the existing "which sphinx-build" check frequently misses a
working installation. Search candidate interpreters newest-first,
self-install Sphinx via ensurepip/pip if needed, and shim a scoped
python3 symlink on PATH only for the doc make step when the chosen
interpreter isn't named python3.

Fixes ultrascan-tickets#925


  Commit: f41aa3fd5b8d0ec601363a640f3b964ba85b1e51
      https://github.com/ehb54/ultrascan3/commit/f41aa3fd5b8d0ec601363a640f3b964ba85b1e51
  Author: ehb54 <brookes at uthscsa.edu>
  Date:   2026-06-22 (Mon, 22 Jun 2026)

  Changed paths:
    M makeall.sh

  Log Message:
  -----------
  Reject Python interpreters too old for conf.py in DOMAN detection

doc/manual/source/conf.py uses Python >=3.9 syntax (PEP 585 builtin
generics, e.g. "list[str]"). The find_doc_python() search only checked
"import sphinx" succeeding, so a too-old default python3 (e.g. RHEL's
3.6) with a stale manually pip-installed Sphinx from before this
script existed got picked over a usable python3.11/python3.12 on the
same host, and the build then crashed in conf.py with "TypeError:
'type' object is not subscriptable". Add an explicit version check
that rejects any candidate interpreter below 3.9 before checking for
or installing Sphinx.

ehb54/ultrascan-tickets#925


  Commit: 18e656c09220a8883e1755f461737db76d91c710
      https://github.com/ehb54/ultrascan3/commit/18e656c09220a8883e1755f461737db76d91c710
  Author: ehb54 <brookes at uthscsa.edu>
  Date:   2026-06-22 (Mon, 22 Jun 2026)

  Changed paths:
    M makeall.sh

  Log Message:
  -----------
  Drop --upgrade from ensurepip call in DOMAN detection

"ensurepip --upgrade" bootstraps pip from the bundled wheel and then
has pip upgrade itself from PyPI, which fails outright on
network-restricted hosts. Plain "ensurepip" only installs the bundled
wheel (fully offline) and is all that's needed to get a working pip
module before installing doc/manual/source/requirements.txt.

ehb54/ultrascan-tickets#925


  Commit: 25987d47541a67eb9c6168d741326e47ede154b9
      https://github.com/ehb54/ultrascan3/commit/25987d47541a67eb9c6168d741326e47ede154b9
  Author: ehb54 <brookes at uthscsa.edu>
  Date:   2026-06-22 (Mon, 22 Jun 2026)

  Changed paths:
    M makeall.sh

  Log Message:
  -----------
  Fix DOMAN fast path to check python3, not sphinx-build

doc/manual/Makefile invokes the interpreter as plain "python3"
(SPHINXBUILD ?= python3 -m sphinx), not "sphinx-build". The previous
fast path checked "sphinx-build --version" and returned immediately on
success, but an unrelated sphinx-build entry-point script tied to some
other (possibly too-old) interpreter can be on PATH and "work" -- since
--version never touches conf.py -- while "python3 -m sphinx" still
fails. This bypassed the version-gated python3.X search entirely and
explains why the previous DOMAN fixes had no effect on a host with a
stale sphinx-build shim left over from a manual "pip install --user"
under python3.6. Check bare python3 directly instead.

ehb54/ultrascan-tickets#925


  Commit: c71f3b106e12d2e2c40ee77a9695bee1793ff680
      https://github.com/ehb54/ultrascan3/commit/c71f3b106e12d2e2c40ee77a9695bee1793ff680
  Author: emre brookes <ehb54 at users.noreply.github.com>
  Date:   2026-06-23 (Tue, 23 Jun 2026)

  Changed paths:
    M makeall.sh

  Log Message:
  -----------
  Merge pull request #457 from ehb54/ehb54-issue-925

makeall.sh: robust sphinx/python3 detection for DOMAN on RHEL8 variants


Compare: https://github.com/ehb54/ultrascan3/compare/e3b3099b8aae...c71f3b106e12

To unsubscribe from these emails, change your notification settings at https://github.com/ehb54/ultrascan3/settings/notifications


More information about the us-commits mailing list