Repository: cogent3/cogent3 (language: python)

Issue:
drop support for python 3.8
The easiest way is to search for "3.8" throughout the entire project.

change:
- version check in `cogent3.__init__`
- update `pyproject.toml` required version PLUS meta-data section PLUS black etc...
- look for all python 3.8 related comments

Other?


Discussion / hints:

Fix patch:
diff --git a/.sourcery.yaml b/.sourcery.yaml
index 75524cd8e..e43736f34 100644
--- a/.sourcery.yaml
+++ b/.sourcery.yaml
@@ -1,2 +1,2 @@
 refactor:
-  python_version: '3.8'
\ No newline at end of file
+  python_version: '3.9'
\ No newline at end of file
diff --git a/noxfile.py b/noxfile.py
index 7309928de..ea45369a8 100644
--- a/noxfile.py
+++ b/noxfile.py
@@ -3,7 +3,7 @@
 import nox
 
 
-_py_versions = range(8, 12)
+_py_versions = range(9, 12)
 
 
 @nox.session(python=[f"3.{v}" for v in _py_versions])
diff --git a/pyproject.toml b/pyproject.toml
index 8152205db..6b0ddae6e 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -15,7 +15,6 @@ readme = "README.md"
 license = { file = "LICENSE" }
 dependencies = ["chardet",
         "numpy",
-        "numba>0.48.0;python_version<'3.9'",
         "numba>0.53; python_version>='3.9'",
         "numba>0.54; python_version>='3.10'",
         "numba>=0.57.0; python_version=='3.11'",
@@ -24,7 +23,7 @@ dependencies = ["chardet",
         "tqdm",
         "typing_extensions"]
 # remember to update version in requires-python and classifiers
-requires-python = ">=3.8,<3.12"
+requires-python = ">=3.9,<3.12"
 classifiers = [
         "Development Status :: 5 - Production/Stable",
         "Intended Audience :: Science/Research",
@@ -32,7 +31,6 @@ classifiers = [
         "Topic :: Scientific/Engineering :: Bio-Informatics",
         "Topic :: Software Development :: Libraries :: Python Modules",
         "Operating System :: OS Independent",
-        "Programming Language :: Python :: 3.8",
         "Programming Language :: Python :: 3.9",
         "Programming Language :: Python :: 3.10",
         "Programming Language :: Python :: 3.11",
@@ -137,7 +135,7 @@ filterwarnings = [
 
 [tool.black]
 line-length = 88
-target-version = ["py38", "py39", "py310"]
+target-version = ["py39", "py310", "py311"]
 exclude = '''
 /(
     \.eggs
diff --git a/src/cogent3/__init__.py b/src/cogent3/__init__.py
index 94c6af108..ac4d511a7 100644
--- a/src/cogent3/__init__.py
+++ b/src/cogent3/__init__.py
@@ -52,7 +52,7 @@
 __license__ = "BSD-3"
 
 
-_min_version = (3, 8)
+_min_version = (3, 9)
 if (sys.version_info.major, sys.version_info.minor) < _min_version:
     PY_VERSION = ".".join([str(n) for n in sys.version_info])
     _min_version = ".".join(str(e) for e in _min_version)


Test patch:
diff --git a/.github/workflows/testing_develop.yml b/.github/workflows/testing_develop.yml
index 357fa0a03..6b2a66da1 100644
--- a/.github/workflows/testing_develop.yml
+++ b/.github/workflows/testing_develop.yml
@@ -16,7 +16,7 @@ jobs:
     strategy:
       matrix:
         os: [ubuntu-latest, macos-latest, windows-latest]
-        python-version: ["3.8", "3.9", "3.10", "3.11"]
+        python-version: ["3.9", "3.10", "3.11"]
 
     steps:
       - uses: "actions/checkout@v2"
@@ -51,7 +51,7 @@ jobs:
     strategy:
       matrix:
         os: [macos-latest, ubuntu-latest, windows-latest]
-        python-version: ["3.8", "3.9", "3.10", "3.11"]
+        python-version: ["3.9", "3.10", "3.11"]
     steps:
     - name: Coveralls Finished
       uses: coverallsapp/github-action@master