From f2a88f6fdf298d0b606ee0c97efbbe3620a28ca9 Mon Sep 17 00:00:00 2001 From: Sergei Maertens Date: Tue, 28 May 2024 11:11:19 +0200 Subject: [PATCH] :package: Drop support for old python/django versions * Dropped Django 3.2 and 4.1 support, these are no longer maintained * Require Python 3.10+ so that we can use modern typing annotations syntax. --- .github/workflows/ci.yml | 7 ++----- CHANGELOG.rst | 7 +++++++ MANIFEST.in | 1 + README.rst | 1 - digid_eherkenning/py.typed | 0 docs/quickstart.rst | 4 +--- setup.cfg | 7 +++---- tox.ini | 9 ++------- 8 files changed, 16 insertions(+), 20 deletions(-) create mode 100644 digid_eherkenning/py.typed diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 81a4f21..0ff198d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -16,11 +16,8 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - python: ['3.9', '3.10', '3.11'] - django: ['3.2', '4.1', '4.2'] - exclude: - - python: '3.11' - django: '3.2' + python: ['3.10', '3.11', '3.12'] + django: ['4.2'] steps: - uses: actions/checkout@v4 diff --git a/CHANGELOG.rst b/CHANGELOG.rst index dff0bfa..a066459 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -2,6 +2,13 @@ Changelog ========= +0.14.0 (2024-??-??) +=================== + +* Dropped support for Django versions older than 4.2 (LTS). +* Dropped support for Python versions older than 3.10. +* ... + 0.13.1 (2024-04-08) =================== diff --git a/MANIFEST.in b/MANIFEST.in index 784a865..eef20d6 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -1,6 +1,7 @@ include *.rst include *.md include LICENSE +include digid_eherkenning/py.typed recursive-include digid_eherkenning *.html recursive-include digid_eherkenning *.txt recursive-include digid_eherkenning *.po diff --git a/README.rst b/README.rst index 2c000cb..ff0f77c 100644 --- a/README.rst +++ b/README.rst @@ -5,7 +5,6 @@ django-digid-eherkenning :Version: 0.13.1 :Source: https://github.com/maykinmedia/django-digid-eherkenning :Keywords: django, authentication, digid, eherkenning, eidas, dutch, nl, netherlands -:PythonVersion: 3.9+ |build-status| |code-quality| |black| |coverage| |docs| diff --git a/digid_eherkenning/py.typed b/digid_eherkenning/py.typed new file mode 100644 index 0000000..e69de29 diff --git a/docs/quickstart.rst b/docs/quickstart.rst index b10a996..0048117 100644 --- a/docs/quickstart.rst +++ b/docs/quickstart.rst @@ -8,9 +8,7 @@ Installation Requirements ------------ -* Python 3.7 or newer -* setuptools 30.3.0 or above -* Django 3.2 +* See the badges for the supported Python and Django versions * XML system packages, e.g. for Debian/Ubuntu: - ``libxml2-dev`` diff --git a/setup.cfg b/setup.cfg index e5f7b5e..e8edf86 100644 --- a/setup.cfg +++ b/setup.cfg @@ -17,25 +17,24 @@ keywords = django, authentication, digid, eherkenning, eidas, dutch, nl, netherl classifiers = Development Status :: 4 - Beta Framework :: Django - Framework :: Django :: 3.2 - Framework :: Django :: 4.1 Framework :: Django :: 4.2 Intended Audience :: Developers Operating System :: Unix Operating System :: MacOS Operating System :: Microsoft :: Windows - Programming Language :: Python :: 3.9 Programming Language :: Python :: 3.10 Programming Language :: Python :: 3.11 + Programming Language :: Python :: 3.12 Topic :: Software Development :: Libraries :: Python Modules [options] zip_safe = False include_package_data = True packages = find: +python_requires = >= 3.10 install_requires = cryptography >= 40.0.0 - django >= 3.2.0 + django >= 4.2.0 django-sessionprofile django-simple-certmanager django-solo diff --git a/tox.ini b/tox.ini index 5294834..65127b8 100644 --- a/tox.ini +++ b/tox.ini @@ -1,7 +1,6 @@ [tox] envlist = - py{39,310}-django{32,41,42} - py311-django{41,42} + py{310,311,312}-django{42} isort black docs @@ -9,14 +8,12 @@ skip_missing_interpreters = true [gh-actions] python = - 3.9: py39 3.10: py310 3.11: py311 + 3.12: py312 [gh-actions:env] DJANGO = - 3.2: django32 - 4.1: django41 4.2: django42 [testenv] @@ -26,8 +23,6 @@ extras = tests coverage deps = - django32: Django~=3.2 - django41: Django~=4.1 django42: Django~=4.2 install_command = python -I -m pip install {opts} --no-binary lxml {packages}