Add Django 6.1 support - #1
Merged
Merged
Conversation
Django 6.1 (released 2026-08-05) requires Python >= 3.12, so the new CI entries mirror the existing Django 6.0 rows: Python 3.12 / 3.13 / 3.14. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
…o-sync
The test jobs pinned a Django series with `uv pip install "Django~=X.Y.0"`
and then invoked `uv run`, which re-syncs the environment from the project
metadata before executing. That silently reinstalled the newest Django and
discarded the pin, so every matrix cell ran the same (latest) version
regardless of matrix.django-version.
Reproduced locally:
uv sync && uv pip install "Django~=5.2.0"
.venv/bin/python -c "import django; print(django.get_version())" # 5.2.17
uv run python -c "import django; print(django.get_version())" # 6.1 <- pin lost
uv run --no-sync python -c "import django; print(django.get_version())" # 5.2.17
Without this, adding Django 6.1 to the matrix would not have tested it.
Lint jobs are untouched: they do not pin Django.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds Django 6.1 (released 2026-08-05) as an additional supported/tested target.
Changes
.github/workflows/tests.yml— three new matrix entries: Django 6.1 × Python 3.12 / 3.13 / 3.14, mirroring the existing Django 6.0 block. Install step is unchanged:django~=${DJANGO_VERSION}.0resolves~=6.1.0to>=6.1.0,<6.2.pyproject.toml— added theFramework :: Django :: 6.1classifier. No dependency change was needed: the requirement is alreadydjango>=5.2with no upper bound.README.md— Django badge and the "Django × Python" support table now list 6.1.CLAUDE.md— supported matrix section updated.CHANGELOG.md—Unreleased / Addedentry.Python requirement
Django 6.1 requires Python >= 3.12, exactly like 6.0. The matrix uses
include:(explicit combinations, no cross-product), so noexclude:entries are needed — Python 3.10 / 3.11 simply never get paired with 6.1.django-model-utilscompatibilityThe package pins
django-model-utils>=5,<6and relies onSplitField's auto-injected excerpt column (see theSeparateDatabaseAndStatedance in0001_initial). Verified locally on Python 3.13 with Django 6.1 + django-model-utils 5.0.0:pytest— 17 passedmanage.py checkonexample/— no issuesmakemigrations --check --dry-run— no changes detectedruff check/ruff format --check— cleanNo code changes were required; there were no Django 6.1 incompatibilities to fix.
🤖 Generated with Claude Code