From 004c832c3d69c631828bdf27f676a1ee916e10a0 Mon Sep 17 00:00:00 2001 From: Xavier Delaruelle Date: Wed, 9 Sep 2026 17:45:58 +0200 Subject: [PATCH] gh: add python39-tomli Cygwin package for Sphinx 7.4 Cygwin updated python39-sphinx from 4.4.0 to 7.4.7. On Python < 3.11, Sphinx 7.4 imports the tomli module but the Cygwin package does not declare python39-tomli as a dependency, so the documentation build now fails on every Windows CI job: Could not import extension sphinx.builders.changes (exception: No module named 'tomli') Explicitly install python39-tomli alongside the other Sphinx dependencies already listed. The python39-docutils=0.18.1-1 pin is kept as Sphinx 7.4.7 builds the man and text documentation fine with this docutils version. Also fix the misspelled python39-sphinxcontrib-jsmath package name on the native-cmd and native-pwsh jobs, which silently skipped its installation. Assisted-by: Claude:claude-fable-5-1 Signed-off-by: Xavier Delaruelle --- .github/workflows/windows_tests.yaml | 15 +++++++++------ .hunspell.en.dic | 5 +++++ 2 files changed, 14 insertions(+), 6 deletions(-) diff --git a/.github/workflows/windows_tests.yaml b/.github/workflows/windows_tests.yaml index 7f281e2fc..5cea85290 100644 --- a/.github/workflows/windows_tests.yaml +++ b/.github/workflows/windows_tests.yaml @@ -33,8 +33,9 @@ jobs: - uses: cygwin/cygwin-install-action@3f0a3f9f988f7e96b8c18098ae05eaec175f5b52 # v6.1 with: # precise all sphinxcontrib packages required as dependency spec - # of python39-sphinx package is regularly broken - packages: make sed git autoconf automake libtool tcl python39 python39-docutils=0.18.1-1 python39-sphinx gzip zip python39-sphinxcontrib-applehelp python39-sphinxcontrib-devhelp python39-sphinxcontrib-htmlhelp python39-sphinxco ntrib-jsmath python39-sphinxcontrib-qthelp python39-sphinxcontrib-serializinghtml python39-sphinxcontrib-websupport python39-alabaster python39-sqlalchemy + # of python39-sphinx package is regularly broken (tomli module is + # required by Sphinx 7.4 on Python < 3.11) + packages: make sed git autoconf automake libtool tcl python39 python39-docutils=0.18.1-1 python39-sphinx python39-tomli gzip zip python39-sphinxcontrib-applehelp python39-sphinxcontrib-devhelp python39-sphinxcontrib-htmlhelp python39-sphinxcontrib-jsmath python39-sphinxcontrib-qthelp python39-sphinxcontrib-serializinghtml python39-sphinxcontrib-websupport python39-alabaster python39-sqlalchemy - name: Install Tcl under Windows shell: cmd run: | @@ -108,8 +109,9 @@ jobs: - uses: cygwin/cygwin-install-action@3f0a3f9f988f7e96b8c18098ae05eaec175f5b52 # v6.1 with: # precise all sphinxcontrib packages required as dependency spec - # of python39-sphinx package is regularly broken - packages: make sed git autoconf automake libtool tcl python39 python39-docutils=0.18.1-1 python39-sphinx gzip zip python39-sphinxcontrib-applehelp python39-sphinxcontrib-devhelp python39-sphinxcontrib-htmlhelp python39-sphinxco ntrib-jsmath python39-sphinxcontrib-qthelp python39-sphinxcontrib-serializinghtml python39-sphinxcontrib-websupport python39-alabaster python39-sqlalchemy + # of python39-sphinx package is regularly broken (tomli module is + # required by Sphinx 7.4 on Python < 3.11) + packages: make sed git autoconf automake libtool tcl python39 python39-docutils=0.18.1-1 python39-sphinx python39-tomli gzip zip python39-sphinxcontrib-applehelp python39-sphinxcontrib-devhelp python39-sphinxcontrib-htmlhelp python39-sphinxcontrib-jsmath python39-sphinxcontrib-qthelp python39-sphinxcontrib-serializinghtml python39-sphinxcontrib-websupport python39-alabaster python39-sqlalchemy - name: Install Tcl under Windows shell: cmd run: | @@ -154,10 +156,11 @@ jobs: - uses: cygwin/cygwin-install-action@3f0a3f9f988f7e96b8c18098ae05eaec175f5b52 # v6.1 with: # precise all sphinxcontrib packages required as dependency spec - # of python39-sphinx package is regularly broken + # of python39-sphinx package is regularly broken (tomli module is + # required by Sphinx 7.4 on Python < 3.11) # precise liblapack0 package needed by R package (missing dependency # since R-4.2.1-1) - packages: make sed git autoconf automake libtool tcl dejagnu python39 python39-docutils=0.18.1-1 python39-sphinx gzip ruby zsh tcsh mksh fish cmake R liblapack0 tcl-devel gcc-core curl python39-sphinxcontrib-applehelp python39-sphinxcontrib-devhelp python39-sphinxcontrib-htmlhelp python39-sphinxcontrib-jsmath python39-sphinxcontrib-qthelp python39-sphinxcontrib-serializinghtml python39-sphinxcontrib-websupport python39-alabaster python39-sqlalchemy + packages: make sed git autoconf automake libtool tcl dejagnu python39 python39-docutils=0.18.1-1 python39-sphinx python39-tomli gzip ruby zsh tcsh mksh fish cmake R liblapack0 tcl-devel gcc-core curl python39-sphinxcontrib-applehelp python39-sphinxcontrib-devhelp python39-sphinxcontrib-htmlhelp python39-sphinxcontrib-jsmath python39-sphinxcontrib-qthelp python39-sphinxcontrib-serializinghtml python39-sphinxcontrib-websupport python39-alabaster python39-sqlalchemy - name: Configure Git safe.directory run: | bash -lc 'git config --global --add safe.directory $(cygpath -u "$GITHUB_WORKSPACE")' diff --git a/.hunspell.en.dic b/.hunspell.en.dic index ba135790e..fe29298d0 100644 --- a/.hunspell.en.dic +++ b/.hunspell.en.dic @@ -402,6 +402,7 @@ dl dll dnsdomainname docdir +docutils doesLoadingModuleMatchesName doesModuleConflict domainname @@ -545,6 +546,7 @@ isbooleanvariant isdefaultvalue ismodlo journalctl +jsmath json keypress kL @@ -733,6 +735,7 @@ pty pushenv py pwsh +python39 quuz qux rc @@ -826,6 +829,7 @@ softb somescript sos specfile +sphinxcontrib spoolfile sse stashclear @@ -897,6 +901,7 @@ threadingmodel tmp tmux toctree +tomli toolchain topState toppostvalue