chore: drop Python 3.11 support#454
Conversation
Removes Python 3.11 from CI matrix, publish_pypi workflow, tox envlist, and setup.py classifiers. Part of openedx/public-engineering#499
Regenerated all pinned requirements files using Python 3.12.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
d522499 to
cbda92e
Compare
sphinx==9.1.0 (pinned by the requirements upgrade) requires Python 3.12+. The .readthedocs.yaml was still specifying python: "3.11", causing RTD builds to fail. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
pylint 4.0.5 (upgraded via edx-lint) is stricter about W0221 (arguments-differ). Django 5.x added **kwargs to Model.save(), so ConfigurationModel.save() now triggers this warning because its signature does not include **kwargs. Add **kwargs to ConfigurationModel.save() and pass it through to super().save(), aligning with the Django 5.x base class signature. See: https://docs.djangoproject.com/en/5.2/ref/models/instances/#saving-objects Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Django 4.2 reached end-of-life in April 2024. Remove the django42 tox env and classifier. BREAKING CHANGE: Django 4.2 is no longer supported. Requires Django 5.2+. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Django 5.2 changed Model.save() to accept *args: def save(self, *args, force_insert=False, force_update=False, ...) See: django/django@3d9bde50 pylint 4.x W0221 (arguments-differ) correctly flagged that our override removed the *args variadic introduced in Django 5.2. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #454 +/- ##
=============================
=============================
☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
@UsamaSadiq this is ready to be reviewed, and merged and released if it looks good to you please feel free to do all those things. |
@feanil I have all these PRs on my radar but let's wait for platform |
|
@UsamaSadiq Platform PR has merged so this should be good to go. |
|
Good to hear. I'll soon do a pass on all the packages to release updated packages. |
|
https://pypi.org/project/django-config-models/3.0.0/ published successfully. |
Summary
Context
Python 3.11 is being dropped across the Open edX ecosystem as part of the move
to standardize on Python 3.12. See the tracking issue for the full list of repos:
openedx/public-engineering#499
Test plan