Django 4.2 Upgrade Plan
All of the Django-using Open edX IDAs are now on Django 3.2, which will reach end of life and stop receiving security updates in April 2024. edX wants to upgrade Django to version 4.2, the next LTS (long term support) release. We want this project complete by September 30, 2023, in time for the next Open edX release, Quince. Key contacts are @Jeremy Bowman (Deactivated) and @Usama Sadiq .
After reviewing the project upgrade run book, the following major steps were identified in internal team discussions.
Identify Key changes in the Django 4.0, Django 4.1 and Django 4.2 release notes.
Write modernizers & codemods for the potential changes/refactorings.
Update tox and github actions modernizers, so they can be used to add support for Django 4.2 in all first-party packages
These modernizers will be triggered from Bulk Repo Update Job, to create PRs in multiple repos at once through the graphical user interface.
Create issues in the upgrades repo for adding Django 4.2 support in all third-party packages
Share these upgrade issues with the Open edX community.
Create ownership issues for all IDAs to communicate the upgrade process ownership with the owning teams.
Use Maintenance Board to capture all the details.
Create a separate dashboard for Django 4.2 upgrade on Maintenance Board.
Create issues in all edx/openedx repos to add support for Django 4.2
Arbi-BOM will be working on all these issues
An automated Job will track the support for Django 4.2 in all packages
Checklist for the sub-issues in each repo:
Support added for Django 4.2