From: Vladimír Vondruš Date: Sat, 14 Sep 2024 20:30:10 +0000 (+0200) Subject: package/ci: test on Python 3.11 and 3.12, and Doxygen 1.9 and 1.11 also. X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~cjwatson/git?a=commitdiff_plain;h=109fdf71673ad71f662694eed1b7879a8079f2a5;p=blog.git package/ci: test on Python 3.11 and 3.12, and Doxygen 1.9 and 1.11 also. 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. --- diff --git a/doc/build-status.html.in b/doc/build-status.html.in index 49de282f..e551d261 100644 --- a/doc/build-status.html.in +++ b/doc/build-status.html.in @@ -7,10 +7,12 @@ Python
3.8 Python
3.9 Python
3.10 + Python
3.11 + Python
3.12 code coverage -  
 
+  
 
@@ -21,6 +23,8 @@  
 
 
 
 
 
+  
 
+  
 
Plugins @@ -33,7 +37,7 @@ Documentation themes
client search -  
 
+  
 
Math rendering @@ -42,6 +46,8 @@ + + diff --git a/package/ci/circleci.yml b/package/ci/circleci.yml index 3a958bbc..b80fd55a 100644 --- a/package/ci/circleci.yml +++ b/package/ci/circleci.yml @@ -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