Skip to content

Commit 0884981

Browse files
feanilclaude
andcommitted
feat!: drop Python 3.11 and Django 4.2, add Django 6.0 to test matrix
Django 6.0 requires Python 3.12+, so Python 3.11 is also dropped from the matrix and requires-python is bumped to >=3.12. - Replaces django42 group with django60 (Django>=6.0,<7.0) - Adds Django<7.0 to constraints.txt to override the global Django<6.0 constraint from edx-lint, allowing Django 6.x to resolve - Updates [tool.uv].conflicts and tox envlist/factor conditionals - Regenerates uv.lock with both Django 5.2 and 6.0 resolutions BREAKING CHANGE: Python 3.11 is no longer supported (requires Python 3.12+) and Django 4.2 is no longer tested or supported. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 85ffe75 commit 0884981

4 files changed

Lines changed: 99 additions & 452 deletions

File tree

.github/workflows/backend-ci.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ jobs:
2020
matrix:
2121
os: [ubuntu-latest]
2222
python-version: ["3.12"]
23-
toxenv: [quality, docs, pii_check, django52]
23+
toxenv: [quality, docs, pii_check, django52, django60]
2424
steps:
2525
- uses: actions/checkout@v4
2626
- name: setup python

backend/pyproject.toml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta"
55
[project]
66
name = "openedx-sample-plugin"
77
description = "A sample backend plugin for the Open edX Platform"
8-
requires-python = ">=3.11"
8+
requires-python = ">=3.12"
99
license="Apache-2.0"
1010
authors = [
1111
{name = "Open edX Project", email = "oscm@openedx.org"},
@@ -61,9 +61,9 @@ test = [
6161
{include-group = "test-base"},
6262
"Django>=5.0,<6.0",
6363
]
64-
django42 = [
64+
django60 = [
6565
{include-group = "test-base"},
66-
"Django>=4.0,<5.0",
66+
"Django>=6.0,<7.0",
6767
]
6868
quality = [
6969
{include-group = "test"},
@@ -123,15 +123,15 @@ local_scheme = 'no-local-version'
123123
# new pair here whenever you add a legacy-version group to [dependency-groups].
124124
# See docs/how-tos/adding-a-matrix-dependency.rst for the full process.
125125
conflicts = [
126-
[{group = "test"}, {group = "django42"}],
126+
[{group = "test"}, {group = "django60"}],
127127
]
128128
# DO NOT EDIT constraint-dependencies DIRECTLY.
129129
# This list is managed by `edx_lint write_uv_constraints`
130130
# and will be overwritten the next time `make upgrade` is run.
131131
# - GLOBAL constraints: edit edx_lint/files/common_constraints.txt
132132
# - REPO-SPECIFIC constraints: edit [tool.edx_lint].uv_constraints in this file
133133
constraint-dependencies = [
134-
"Django<6.0",
134+
"Django<7.0",
135135
"elasticsearch<7.14.0",
136136
]
137137

backend/tox.ini

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[tox]
2-
envlist = py{311,312}-django{42,52},docs,quality,pii_check
2+
envlist = py312-django{52,60},docs,quality,pii_check
33
requires =
44
tox-uv>=1
55

@@ -39,8 +39,8 @@ norecursedirs = .* docs requirements site-packages
3939
[testenv]
4040
runner = uv-venv-lock-runner
4141
dependency_groups =
42-
django42: django42
4342
django52: test
43+
django60: django60
4444
commands =
4545
pytest {posargs}
4646
python manage.py check

0 commit comments

Comments
 (0)