Skip to content

Upgrade to Django 2#3953

Merged
willgearty merged 56 commits intomainfrom
django2
Jan 30, 2026
Merged

Upgrade to Django 2#3953
willgearty merged 56 commits intomainfrom
django2

Conversation

@willgearty
Copy link
Copy Markdown
Member

@willgearty willgearty commented Nov 19, 2025

TODO:

Notes for later:

  • I updated django-argcache, but in order to get the new version to install properly, I first had to fully uninstall it 🤷 . Same with django-admin-tools.
    • I had forgotten to bump the version number
  • django-reversion docs say that you need to migrate the package to upgrade to >= 3.0.2 from < 3.0.1:
    pip install django-reversion==3.0.1
    python manage.py migrate reversion
    pip install --upgrade django-reversion
    python manage.py migrate reversion
    
    • I followed these instructions, but it said there were no migrations to apply, so I think we can ignore it? (otherwise, this would probably go in the Makefile?)
  • Despite putting a bunch of time into trying to get watchman to work, it looks like the current available versions of pywatchman and watchman just aren't compatible (given we are on Django 2.2 and Python 3.7)
    • When we upgrade to Python 3.8, we should be able to upgrade pywatchman, and I think it'll "just work"
    • For now, runserver uses the backup StatReloader which polls for changes every ~second or so

Fixes #3777

@willgearty willgearty added this to the Stable Release 17 milestone Nov 19, 2025
@willgearty willgearty added Work in progress dependencies Pull requests that update a dependency file labels Nov 19, 2025
@willgearty willgearty requested a review from kkbrum December 19, 2025 15:30
@willgearty
Copy link
Copy Markdown
Member Author

OK @kkbrum, I think this is ready for testing!

@willgearty
Copy link
Copy Markdown
Member Author

willgearty commented Jan 28, 2026

Issues encountered by @kkbrum:

  1. Permission denied for packages_dev_manual_install.sh. Watchdog doesn't really work anyways, so I'm fine just removing this functionality for now and punting it to whenever we upgrade to python 3.8 (see more details in the OP).
  2. Error trying to apply migrations for reversion. I thought this might be an issue but was hoping it would just not show up. Looks like we'll need to incorporate something like this in the Makefile for the next release:
...
[update_deps.sh]
pip install django-reversion==3.0.1
python esp/manage.py migrate reversion
pip install django-reversion==5.0.2
python esp/manage.py migrate reversion
[migrate]
...

Copy link
Copy Markdown
Contributor

@kkbrum kkbrum left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great! I testing making accounts, making a program with all the accoutrements and making another program to test importing as well. I noticed one bug: #3963, but I'm not sure that it's related to django in any way. Even if it is, I think this can be merged and that can be addressed separately.

@willgearty willgearty merged commit 61040e6 into main Jan 30, 2026
5 checks passed
@willgearty willgearty deleted the django2 branch January 30, 2026 08:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Upgrade to Django 2.2.28

2 participants