From 49ac96201687fb5e80f2f8ecab4db4cf3423a9d9 Mon Sep 17 00:00:00 2001 From: Matthew Feickert Date: Mon, 18 Mar 2024 15:58:44 -0500 Subject: [PATCH] build: Require Python 3.8+ MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * For the requires-python metadata, require Python 3.8+ as all CPython versions up through Python 3.7 are now EOL. - c.f. https://packaging.python.org/en/latest/specifications/core-metadata/#requires-python ┌───────┬────────────┬─────────┬────────────────┬────────────┬────────────┐ │ cycle │ release │ latest │ latest release │ support │ eol │ ├───────┼────────────┼─────────┼────────────────┼────────────┼────────────┤ │ 3.12 │ 2023-10-02 │ 3.12.2 │ 2024-02-06 │ 2025-04-02 │ 2028-10-31 │ │ 3.11 │ 2022-10-24 │ 3.11.8 │ 2024-02-06 │ 2024-04-01 │ 2027-10-31 │ │ 3.10 │ 2021-10-04 │ 3.10.13 │ 2023-08-24 │ 2023-04-05 │ 2026-10-31 │ │ 3.9 │ 2020-10-05 │ 3.9.18 │ 2023-08-24 │ 2022-05-17 │ 2025-10-31 │ │ 3.8 │ 2019-10-14 │ 3.8.18 │ 2023-08-24 │ 2021-05-03 │ 2024-10-31 │ │ 3.7 │ 2018-06-26 │ 3.7.17 │ 2023-06-05 │ 2020-06-27 │ 2023-06-27 │ │ 3.6 │ 2016-12-22 │ 3.6.15 │ 2021-09-03 │ 2018-12-24 │ 2021-12-23 │ │ 3.5 │ 2015-09-12 │ 3.5.10 │ 2020-09-05 │ False │ 2020-09-30 │ │ 3.4 │ 2014-03-15 │ 3.4.10 │ 2019-03-18 │ False │ 2019-03-18 │ │ 3.3 │ 2012-09-29 │ 3.3.7 │ 2017-09-19 │ False │ 2017-09-29 │ │ 3.2 │ 2011-02-20 │ 3.2.6 │ 2014-10-12 │ False │ 2016-02-20 │ │ 3.1 │ 2009-06-26 │ 3.1.5 │ 2012-04-06 │ False │ 2012-04-09 │ │ 3.0 │ 2008-12-03 │ 3.0.1 │ 2009-02-12 │ False │ 2009-06-27 │ │ 2.7 │ 2010-07-03 │ 2.7.18 │ 2020-04-19 │ False │ 2020-01-01 │ │ 2.6 │ 2008-10-01 │ 2.6.9 │ 2013-10-29 │ False │ 2013-10-29 │ └───────┴────────────┴─────────┴────────────────┴────────────┴────────────┘ * Retain upper bound on CPython as the dependency on the CPython AST is brittle given large changes from CPython. --- setup.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/setup.py b/setup.py index fc9caf4..3c8ecfd 100644 --- a/setup.py +++ b/setup.py @@ -9,8 +9,7 @@ long_description=long_description, long_description_content_type="text/markdown", packages=setuptools.find_packages(exclude=['tests']), - python_requires=('>=2.7, ' - '!=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, <3.13'), + python_requires=('>=3.8, <3.13'), install_requires=['lark'], extras_require={'test': ['flake8', 'pytest', 'pytest-cov']}, package_data={'qastle': ['syntax.lark']},