chiark / gitweb /
package/ci: test on Python 3.11 and 3.12, and Doxygen 1.9 and 1.11 also.
authorVladimír Vondruš <mosra@centrum.cz>
Sat, 14 Sep 2024 20:30:10 +0000 (22:30 +0200)
committerVladimír Vondruš <mosra@centrum.cz>
Sat, 14 Sep 2024 23:49:34 +0000 (01:49 +0200)
1.12 has extremely broken typedef merging which is making too many tests
failing, so can't test on that one, or at least until my PR is merged.

doc/build-status.html.in
package/ci/circleci.yml

index 49de282fa5369a3561078a4e282875fd3ff07c96..e551d26175d6b7e15335a09a11081af3ae4250b7 100644 (file)
@@ -7,10 +7,12 @@
       <th>Python<br />3.8</th>
       <th>Python<br />3.9</th>
       <th>Python<br />3.10</th>
+      <th>Python<br />3.11</th>
+      <th>Python<br />3.12</th>
     </tr>
     <tr>
       <th class="m-text-right m-text-middle" style="border-top-width: 0;">code coverage</th>
-      <td colspan="5" id="coverage-mcss"><a>&nbsp;<br/><span class="m-text m-small">&nbsp;</span></a></td>
+      <td colspan="7" id="coverage-mcss"><a>&nbsp;<br/><span class="m-text m-small">&nbsp;</span></a></td>
     </tr>
   </thead>
   <tbody>
@@ -21,6 +23,8 @@
       <td rowspan="4" id="mcss-py308"><a>&nbsp;<br/><span class="m-text m-small">&nbsp;</span></a></td>
       <td rowspan="4" id="mcss-py309"><a>&nbsp;<br/><span class="m-text m-small">&nbsp;</span></a></td>
       <td rowspan="4" id="mcss-py310"><a>&nbsp;<br/><span class="m-text m-small">&nbsp;</span></a></td>
+      <td rowspan="4" id="mcss-py311"><a>&nbsp;<br/><span class="m-text m-small">&nbsp;</span></a></td>
+      <td rowspan="4" id="mcss-py312"><a>&nbsp;<br/><span class="m-text m-small">&nbsp;</span></a></td>
     </tr>
     <tr>
       <th class="m-text-right">Plugins</th>
@@ -33,7 +37,7 @@
     </tr>
     <tr>
       <th class="m-text-right">Documentation themes<br/>client search</th>
-      <td id="mcss-js" colspan="5"><a>&nbsp;<br/><span class="m-text m-small">&nbsp;</span></a></td>
+      <td id="mcss-js" colspan="7"><a>&nbsp;<br/><span class="m-text m-small">&nbsp;</span></a></td>
     </tr>
     <tr>
       <th class="m-text-right">Math rendering</th>
@@ -42,6 +46,8 @@
       <td class="m-dim"></td>
       <td class="m-dim"></td>
       <td class="m-dim"></td>
+      <td class="m-dim"></td>
+      <td class="m-dim"></td>
     </tr>
   </tbody>
 </table>
index 3a958bbc9a509183ba7f6046d9bf6384cc5a0a94..b80fd55a3817fc63d28333e338e5f29f29e35f04 100644 (file)
@@ -24,7 +24,13 @@ executors:
     - image: python:3.9.8
   python-3_10:
     docker:
-    - image: python:3.10.1
+    - image: python:3.10.15
+  python-3_11:
+    docker:
+    - image: python:3.11.10
+  python-3_12:
+    docker:
+    - image: python:3.12.6
   node-10:
     docker:
     - image: node:10.24.0-buster-slim
@@ -287,8 +293,7 @@ jobs:
     executor: python-3_10
     steps:
     - install-base:
-        # libtinfo5 needed by doxygen 1.8.18, wtf
-        extra: graphviz cmake ninja-build wget libtinfo5
+        extra: graphviz cmake ninja-build wget
     - install-python-deps:
         # NumPy 2.0 doesn't work with pybind 2.11, see below
         numpy-version: ==1.26.4
@@ -301,7 +306,54 @@ jobs:
         # different docstring typing annotations to which I need to adapt tests
         # first. Pinning to a version before together with NumPy 1.
         pybind-version: "2.11.1"
-        doxygen-version: "1.8.18"
+        # 1.9.1 is in Ubuntu 22.04 repos, HOWEVER both 1.9.1 and 1.9.2 link
+        # against libclang-9.so.1, which is stupid. I think I even asked if the
+        # builds could be fixed back then, but of course they didn't even
+        # realize it could be a problem. 1.9.3 is the first working.
+        doxygen-version: "1.9.3"
+    - coverage
+
+  py311:
+    executor: python-3_11
+    steps:
+    - install-base:
+        extra: graphviz cmake ninja-build wget
+    - install-python-deps:
+        # NumPy 2.0 doesn't work with pybind 2.11, see below
+        numpy-version: ==1.26.4
+    - checkout
+    - test-theme
+    - test-plugins
+    - test-documentation-themes:
+        python-version: "3.11"
+        # 2.12.0 is the first that works with NumPy 2.0, unfortunately it has
+        # different docstring typing annotations to which I need to adapt tests
+        # first. Pinning to a version before together with NumPy 1.
+        pybind-version: "2.11.1"
+        # 1.9.8 is in Ubuntu 24.04 repos
+        doxygen-version: "1.9.8"
+    - coverage
+
+  py312:
+    executor: python-3_12
+    steps:
+    - install-base:
+        extra: graphviz cmake ninja-build wget
+    - install-python-deps:
+        # NumPy 2.0 doesn't work with pybind 2.11, see below
+        numpy-version: ==1.26.4
+    - checkout
+    - test-theme
+    - test-plugins
+    - test-documentation-themes:
+        python-version: "3.12"
+        # 2.12.0 is the first that works with NumPy 2.0, unfortunately it has
+        # different docstring typing annotations to which I need to adapt tests
+        # first. Pinning to a version before together with NumPy 1.
+        pybind-version: "2.11.1"
+        # 1.11 is the latest that passes all tests, 1.12 first needs
+        # https://github.com/doxygen/doxygen/pull/11141 merged to be usable.
+        doxygen-version: "1.11.0"
     - coverage
 
   js:
@@ -324,4 +376,6 @@ workflows:
     - py308
     - py309
     - py310
+    - py311
+    - py312
     - js