Repository: pySTEPS/pysteps (language: python)

Issue:
Python 3.6 reached end-of-life
https://endoflife.date/python

python 3.6 has reached end-of-life last month, while python 3.9 has been released more than a year ago.

Therefore, I suggest that we test and build pysteps for versions 3.7-3.9.


Discussion / hints:

Fix patch:
diff --git a/doc/source/user_guide/install_pysteps.rst b/doc/source/user_guide/install_pysteps.rst
index 7cda5b10a..ef7be0623 100644
--- a/doc/source/user_guide/install_pysteps.rst
+++ b/doc/source/user_guide/install_pysteps.rst
@@ -8,7 +8,7 @@ Dependencies
 
 The pysteps package needs the following dependencies
 
-* `python >=3.6 <http://www.python.org/>`_
+* `python >=3.7 <http://www.python.org/>`_ (lower versions may work but they are not officially supported).
 * `jsonschema <https://pypi.org/project/jsonschema/>`_
 * `matplotlib <http://matplotlib.org/>`_
 * `netCDF4 <https://pypi.org/project/netCDF4/>`_
diff --git a/environment.yml b/environment.yml
index b71cd8de3..bd298cc11 100644
--- a/environment.yml
+++ b/environment.yml
@@ -3,7 +3,7 @@ channels:
 - conda-forge
 - defaults
 dependencies:
-  - python>=3.6
+  - python>=3.7
   - jsmin
   - jsonschema
   - matplotlib
diff --git a/environment_dev.yml b/environment_dev.yml
index b29e347fe..378611d98 100644
--- a/environment_dev.yml
+++ b/environment_dev.yml
@@ -4,7 +4,7 @@ channels:
   - conda-forge
   - defaults
 dependencies:
-  - python>=3.6
+  - python>=3.7
   - pip
   - jsmin
   - jsonschema
diff --git a/requirements_dev.txt b/requirements_dev.txt
index bf85f7d86..3f18ec557 100644
--- a/requirements_dev.txt
+++ b/requirements_dev.txt
@@ -1,5 +1,5 @@
 # Base dependencies
-python>=3.6
+python>=3.7
 numpy
 opencv-python
 pillow
diff --git a/setup.py b/setup.py
index 5a531c0fa..aaab58312 100644
--- a/setup.py
+++ b/setup.py
@@ -93,7 +93,10 @@
         "Topic :: Scientific/Engineering :: Atmospheric Science",
         "Topic :: Scientific/Engineering :: Hydrology",
         "License :: OSI Approved :: BSD License",
-        "Programming Language :: Python :: 3",
+        "Programming Language :: Python :: 3 :: Only",
+        "Programming Language :: Python :: 3.7",
+        "Programming Language :: Python :: 3.8",
+        "Programming Language :: Python :: 3.9",
         "Operating System :: OS Independent",
     ],
     ext_modules=external_modules,
diff --git a/tox.ini b/tox.ini
index 207f92e46..aaa752e64 100644
--- a/tox.ini
+++ b/tox.ini
@@ -14,7 +14,7 @@
 # > tox -e black    # Test for black formatting warnings
 
 [tox]
-envlist = py36, py37, py38, py39
+envlist = py37, py38, py39
 
 [testenv]
 description = Run the pysteps's test suite


Test patch:
diff --git a/.github/workflows/test_pysteps.yml b/.github/workflows/test_pysteps.yml
index 41d8c8426..e8695d1c1 100644
--- a/.github/workflows/test_pysteps.yml
+++ b/.github/workflows/test_pysteps.yml
@@ -21,7 +21,7 @@ jobs:
       fail-fast: false
       matrix:
         os: [ "ubuntu-latest", "macos-latest", "windows-latest" ]
-        python-version: [ "3.6", "3.8" ]
+        python-version: [ "3.7", "3.9" ]
       max-parallel: 6
 
     defaults: