View Issue Details

IDProjectCategoryView StatusLast Update
0011577Talerdocumentationpublic2026-06-30 09:42
Reporterapteryx Assigned To 
PrioritynormalSeverityminorReproducibilityalways
Status newResolutionopen 
PlatformGNU/LinuxOSGuix SystemOS Versionlatest
Summary0011577: taler-docs bundles an old httpdomain sphinx extension which does not work with Python 3.12
DescriptionHi,

Attempting to build taler-docs from source, I stumble on the following error:
```
sphinx-build -b texinfo -d _build/doctrees . _build/texinfo
Running Sphinx v9.0.3
loading translations [en]... done

Extension error!

Versions
========

* Platform: linux; (Linux-6.18.33-x86_64-with-glibc2.41)
* Python version: 3.12.12 (CPython)
* Sphinx version: 9.0.3
* Docutils version: 0.21.2
* Jinja2 version: 3.1.2
* Pygments version: 2.19.2

Last Messages
=============

None.

Loaded Extensions
=================

None.

Traceback
=========

      File "/gnu/store/4s6s5k2sysvy1q7q5dijhy5x43h4kxx9-python-sphinx-9.0.3/lib/python3.12/site-packages/sphinx/registry.py", line 546, in load_extension
        raise ExtensionError(
    sphinx.errors.ExtensionError: Could not import extension httpdomain.httpdomain (exception: No module named 'pkg_resources')


The full traceback has been saved in:
/tmp/guix-build-taler-docs-0.0.0-0.3626faf.drv-0/sphinx-err-fgwfdi8j.log

To report this error to the developers, please open an issue at <https://github.com/sphinx-doc/sphinx/issues/>. Thanks!
Please also report this if it was a user error, so that a better error message can be provided next time.
make: *** [Makefile:158: info] Error 2
```

If I understand, this is because the bundled httpdomain sphinx extension under _exts/httpdomain is too old and relies on older deprecated API that no longer exist in Python 3.12.
Steps To ReproduceBuilding using Guix with the following inputs:

python-minimal@3.12.12
python-myst-parser@5.0.0 python-sphinx-design@0.6.1
python-sphinx-multitoc-numbering@0.1.3
python-sphinx@9.0.3
python-sphinxcontrib-httpdomain@2.0.0 texinfo@6.8
Additional InformationI can remove the bundled library of httpdomain (and also multitoc-numbering since I packaged it in Guix) and adjust the conf.py to use the new package name `sphinxcontrib.httpdomain` instead of `httpdomain.httpdomain`, and then it proceeds further.
TagsNo tags attached.

Activities

apteryx

2026-06-30 09:42

reporter   ~0029025

OK, I realized there are now improvements made in the taler-docs fork of httpdomain not yet upstreamed; I'm trying to rectify that in https://github.com/sphinx-contrib/httpdomain/pull/110

Issue History

Date Modified Username Field Change
2026-06-30 09:02 apteryx New Issue
2026-06-30 09:42 apteryx Note Added: 0029025