diff --git a/.github/workflows/ci-3-8.yml b/.github/workflows/ci-3-8.yml deleted file mode 100644 index 7db5ae981..000000000 --- a/.github/workflows/ci-3-8.yml +++ /dev/null @@ -1,34 +0,0 @@ -name: Django-DSFR CI for Python 3.8 and 3.9 - -on: - push: - branches: [ main ] - pull_request: - branches: [ main ] - -jobs: - build: - runs-on: ubuntu-latest - strategy: - max-parallel: 4 - matrix: - python-version: [3.8, 3.9] - - steps: - - uses: actions/checkout@v2 - - name: 🐍 Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v2 - with: - python-version: ${{ matrix.python-version }} - - name: 👷 Install Dependencies - run: | - python -m pip install --upgrade pip - pip install poetry - poetry install - - name: 🧪 Run Tests - Django 3 - run: | - poetry run python manage.py test - - name: 🧪 Run Tests - Django 4 - run: | - poetry add django@^4.1 - poetry run python manage.py test diff --git a/.github/workflows/ci-3-10.yml b/.github/workflows/ci.yml similarity index 83% rename from .github/workflows/ci-3-10.yml rename to .github/workflows/ci.yml index 094131dfb..d09baaa44 100644 --- a/.github/workflows/ci-3-10.yml +++ b/.github/workflows/ci.yml @@ -28,15 +28,10 @@ jobs: - name: 🚧 Check pending migrations run: | poetry run python manage.py makemigrations --check --dry-run --noinput - - name: 🧪 Run Tests - Django 3 - run: | - poetry run python manage.py test - name: 🧪 Run Tests - Django 4 run: | - poetry add django@^4.1 poetry run python manage.py test - name: 🧪 Run Tests - Django 5 run: | - sed -i 's/python = "^3.8"/python = "^3.10"/g' pyproject.toml poetry add django@^5.0 poetry run python manage.py test diff --git a/README.md b/README.md index 7648fa239..588e24350 100644 --- a/README.md +++ b/README.md @@ -2,9 +2,7 @@ [![image](https://badge.fury.io/py/django-dsfr.svg)](https://pypi.org/project/django-dsfr/) -[![image](https://github.com/numerique-gouv/django-dsfr/actions/workflows/ci-3-8.yml/badge.svg)](https://github.com/numerique-gouv/django-dsfr/actions/workflows/ci-3-8.yml) - -[![image](https://github.com/numerique-gouv/django-dsfr/actions/workflows/ci-3-10.yml/badge.svg)](https://github.com/numerique-gouv/django-dsfr/actions/workflows/ci-3-10.yml) +[![image](https://github.com/numerique-gouv/django-dsfr/actions/workflows/ci.yml/badge.svg)](https://github.com/numerique-gouv/django-dsfr/actions/workflows/ci.yml) [![image](https://github.com/numerique-gouv/django-dsfr/actions/workflows/codeql-analysis.yml/badge.svg)](https://github.com/numerique-gouv/django-dsfr/actions/workflows/codeql-analysis.yml) @@ -23,14 +21,13 @@ Django-DSFR implements the [version 1.12.1 of the DSFR](https://www.systeme-de-d ## Requirements -Tested with Python 3.8 to 3.12 and Django 3.2 to 5.0. Per [vermin](https://github.com/netromdk/vermin), it should work with Python >= 3.6, and it should work with old versions of Django too. +Tested with Python 3.10 to 3.13 and the latest available version of Django 4 and 5. Note: Only supported versions of Django and Python are supported by this project. You can check the supported versions and their end of life on the following pages: - [Python](https://devguide.python.org/versions/) - [Django](https://www.djangoproject.com/download/#supported-versions) -⚠️ Warning: Support for Django < 4.0 and Python < 3.10 will be removed at the end of 2024. ## Quick start diff --git a/config/settings.py b/config/settings.py index e4a7666da..045e80f0f 100644 --- a/config/settings.py +++ b/config/settings.py @@ -13,7 +13,6 @@ from pathlib import Path import os from django import VERSION as DJANGO_VERSION -import warnings # Build paths inside the project like this: BASE_DIR / 'subdir'. BASE_DIR = Path(__file__).resolve().parent.parent @@ -29,14 +28,6 @@ ALLOWED_HOSTS = [] -warnings.simplefilter("default") -if DJANGO_VERSION < (4, 0): - warnings.warn( - "Support for Django < 4.0 will be deprecated in django-dsfr at the end of 2024.", - PendingDeprecationWarning, - stacklevel=3, - ) - # Application definition INSTALLED_APPS = [ diff --git a/pyproject.toml b/pyproject.toml index e4864ba5a..ba28f1d61 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -3,12 +3,11 @@ authors = ["Sylvain Boissel "] description = "Integrate the French government Design System into a Django app" license = "MIT" name = "django-dsfr" -version = "1.4.5" +version = "2.0.0alpha1" classifiers = [ "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Framework :: Django", - "Framework :: Django :: 3.2", "Framework :: Django :: 4.0", "Framework :: Django :: 4.1", "Framework :: Django :: 4.2", @@ -18,11 +17,10 @@ classifiers = [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.8", - "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", "Topic :: Software Development :: Libraries", "Topic :: Utilities", ] @@ -39,8 +37,8 @@ packages = [ include = ["LICENSE", "README.md", "dsfr/static/dsfr/dist/*/*.*"] [tool.poetry.dependencies] -Django = ">3.2.5" -python = "^3.8" +Django = ">4.2.17" +python = "^3.10" requests = "^2.26.0" django-widget-tweaks = "^1.4.12" django-crispy-forms = "^2.0"