From: Vladimír Vondruš Date: Sun, 2 Jan 2022 17:53:10 +0000 (+0100) Subject: package/ci: drop Python 3.5 testing, add 3.8 to 3.10. X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~cjwatson/git?a=commitdiff_plain;h=dc08e79bcf9d49ce596c1f554f6ac54cb88b9514;p=blog.git package/ci: drop Python 3.5 testing, add 3.8 to 3.10. Python 3.5 was EOL'd in September 2020 and support for it is being removed from major packages like pybind. It was also the only version on which neither the Doxygen nor Python doc generator worked due to lack of typing annotations, and since those two are the major use cases, I don't think there's many users relying still on 3.5. Python 3.6 was EOL'd in December 2021 so *technically* I could drop it as well, however Ubuntu 18.04 LTS still has it as the default version so it's good to keep it. I don't really need to use any 3.7-specific features yet either, so this isn't a problem. --- diff --git a/doc/build-status.html.in b/doc/build-status.html.in index 66a90d81..49de282f 100644 --- a/doc/build-status.html.in +++ b/doc/build-status.html.in @@ -2,21 +2,25 @@ - Python
3.5 Python
3.6 Python
3.7 + Python
3.8 + Python
3.9 + Python
3.10 code coverage -  
 
+  
 
Pelican theme -  
 
-  
 
-  
 
+  
 
+  
 
+  
 
+  
 
+  
 
Plugins @@ -26,18 +30,18 @@ Documentation themes - Documentation themes
client search - -  
 
+  
 
Math rendering + + diff --git a/package/ci/circleci.yml b/package/ci/circleci.yml index e2605188..5d14f9a9 100644 --- a/package/ci/circleci.yml +++ b/package/ci/circleci.yml @@ -10,15 +10,21 @@ notify: #- url: https://webhooks.gitter.im/e/cfbadbd34d28708a57c6 executors: - python-3_5: + python-3_06: docker: - - image: python:3.5.10 - python-3_6: + - image: python:3.6.15 + python-3_07: docker: - - image: python:3.6.12 - python-3_7: + - image: python:3.7.12 + python-3_08: docker: - - image: python:3.7.9 + - image: python:3.8.12 + python-3_09: + docker: + - image: python:3.9.8 + python-3_10: + docker: + - image: python:3.10.1 node-10: docker: - image: node:10.24.0-buster-slim @@ -171,19 +177,24 @@ commands: codecov jobs: - py35: - executor: python-3_5 + py306: + executor: python-3_06 steps: - install-base: - extra: graphviz - - install-python-deps + extra: graphviz cmake ninja-build wget + - install-python-deps: + matplotlib-version: ==3.3.4 + extra: attrs==19.3.0 - checkout - test-theme - test-plugins + - test-documentation-themes: + python-version: "3.6" + pybind-version: "2.2.4" - coverage - py36: - executor: python-3_6 + py307: + executor: python-3_07 steps: - install-base: extra: graphviz cmake ninja-build wget @@ -194,12 +205,12 @@ jobs: - test-theme - test-plugins - test-documentation-themes: - python-version: "3.6" - pybind-version: "2.2.4" + python-version: "3.7" + pybind-version: "2.3.0" - coverage - py37: - executor: python-3_7 + py308: + executor: python-3_08 steps: - install-base: extra: graphviz cmake ninja-build wget @@ -210,8 +221,46 @@ jobs: - test-theme - test-plugins - test-documentation-themes: - python-version: "3.7" - pybind-version: "2.3.0" + python-version: "3.8" + # 2.4.1 fixes a Py3.8-specific bug, so the 2.3 versions are probably + # not wise to use here + pybind-version: "2.4.3" + - coverage + + py309: + executor: python-3_09 + steps: + - install-base: + extra: graphviz cmake ninja-build wget + - install-python-deps: + matplotlib-version: ==3.3.4 + extra: attrs==19.3.0 + - checkout + - test-theme + - test-plugins + - test-documentation-themes: + python-version: "3.9" + # 2.5.0 is the first that properly searches for Python 3.9 in CMake, so + # anything before that probably won't work at all. + pybind-version: "2.5.0" + - coverage + + py310: + executor: python-3_10 + steps: + - install-base: + extra: graphviz cmake ninja-build wget + - install-python-deps: + matplotlib-version: ==3.3.4 + extra: attrs==19.3.0 + - checkout + - test-theme + - test-plugins + - test-documentation-themes: + python-version: "3.10" + # Python 3.10 and Pybind 2.8 were both released on 2021-10-04, so + # assume anything older won't really work there. + pybind-version: "2.8.0" - coverage js: @@ -229,7 +278,9 @@ workflows: version: 2 build: jobs: - - py35 - - py36 - - py37 + - py306 + - py307 + - py308 + - py309 + - py310 - js diff --git a/plugins/m/test/plots/page-py35.html b/plugins/m/test/plots/page-py35.html deleted file mode 100644 index 0d64be21..00000000 --- a/plugins/m/test/plots/page-py35.html +++ /dev/null @@ -1,682 +0,0 @@ - - - - - m.plots | A Pelican Blog - - - - - - -
-
-
-
-
-
-

m.plots

- -

Note: the test uses DejaVu Sans instead of Source Sans Pro in order to have -predictable rendering on the CIs.

-
- - - - - - - - - - 15.0 meters, i guess? - - - 30.0 meters, i guess? - - - - - - - - - - - - - - 0 - - - - - - - - - - 5 - - - - - - - - - - 10 - - - - - - - - - - 15 - - - - - - - - - - 20 - - - - - - - - - - 25 - - - - - - - - - - 30 - - - - meters, i guess? - - - - - - - - - - - - - - First - - - - - - - - - - Second - - - - - A plot with a single color - - - - - - - - - -
-
-

A plot with separate colors, extra labels, error bars and custom width + height

-
- - - - - - - - - - 3.0 ± 0.1 Mondays - - - 4.0 ± 2.1 Mondays - - - 5.0 ± 1.0 Mondays - - - - - - - - - - - - - - 0 - - - - - - - - - - 1 - - - - - - - - - - 2 - - - - - - - - - - 3 - - - - - - - - - - 4 - - - - - - - - - - 5 - - - - - - - - - - 6 - - - - Mondays - - - - - - - - - - - - - - January - - - - - - - - - - - February - - - - - - - - - - March - - - - - - - - - - - - - - - - - - - - - - - - - - - - - a paradise - - - - hell! - - - Yes. - - - - - - - - - -
-
-
- - - - - - - - - - 111.9 kB - - - 74.4 kB - - - 52.1 kB - - - 731.2 kB - - - 226.3 kB - - - 226.0 kB - - - - - - - - - - - - - - 0 - - - - - - - - - - 100 - - - - - - - - - - 200 - - - - - - - - - - 300 - - - - - - - - - - 400 - - - - - - - - - - 500 - - - - - - - - - - 600 - - - - - - - - - - 700 - - - - - - - - - - 800 - - - - kB - - - - - - - - - - - - - - A - - - - - - - - - - B - - - - - - - - - - C - - - - - Stacked plot - - - - - - - - - -
-
- - - - - - - - - - 111.9 ± 25.0 kB - - - 74.4 ± 15.3 kB - - - 731.2 ± 200.0 kB - - - 226.3 ± 5.0 kB - - - - - - - - - - - - - - 0 - - - - - - - - - - 200 - - - - - - - - - - 400 - - - - - - - - - - 600 - - - - - - - - - - 800 - - - - - - - - - - 1000 - - - - kB - - - - - - - - - - - - - - A - - - - - - - - - - B - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Stacked plot with errors and full colors - - - - - - - - - -
- -
-
-
-
-
- - diff --git a/plugins/m/test/test_plots.py b/plugins/m/test/test_plots.py index 7c48e289..f93e9585 100644 --- a/plugins/m/test/test_plots.py +++ b/plugins/m/test/test_plots.py @@ -45,9 +45,6 @@ class Plots(PelicanPluginTestCase): if LooseVersion(matplotlib.__version__) >= LooseVersion('3.2'): self.assertEqual(*self.actual_expected_contents('page.html')) elif LooseVersion(matplotlib.__version__) >= LooseVersion('3.0'): - if LooseVersion(sys.version) >= LooseVersion("3.6"): - self.assertEqual(*self.actual_expected_contents('page-30.html')) - else: - self.assertEqual(*self.actual_expected_contents('page.html', 'page-py35.html')) + self.assertEqual(*self.actual_expected_contents('page-30.html')) else: self.assertEqual(*self.actual_expected_contents('page.html', 'page-22.html'))