From adc3804bf78345f505584dc8b35ba4d1ff83d545 Mon Sep 17 00:00:00 2001 From: daveoconnor Date: Thu, 11 Sep 2025 10:39:25 -0700 Subject: [PATCH] Upgrade of django 4.n version (#1910) (#1912) --- config/settings.py | 5 +- requirements-dev.txt | 8 +- requirements.in | 20 ++-- requirements.txt | 224 ++++++++++++++++++++++--------------------- 4 files changed, 131 insertions(+), 126 deletions(-) diff --git a/config/settings.py b/config/settings.py index 39dbc319..94921c8c 100755 --- a/config/settings.py +++ b/config/settings.py @@ -351,9 +351,8 @@ ACCOUNT_EMAIL_VERIFICATION = "mandatory" LOGIN_REDIRECT_URL = "home" ACCOUNT_LOGOUT_ON_GET = True ACCOUNT_USER_MODEL_USERNAME_FIELD = None -ACCOUNT_EMAIL_REQUIRED = True -ACCOUNT_USERNAME_REQUIRED = False -ACCOUNT_AUTHENTICATION_METHOD = "email" +ACCOUNT_LOGIN_METHODS = {"email"} +ACCOUNT_SIGNUP_FIELDS = ["email*", "password1*", "password2*"] SOCIALACCOUNT_QUERY_EMAIL = True SOCIALACCOUNT_LOGIN_ON_GET = True ACCOUNT_UNIQUE_EMAIL = True diff --git a/requirements-dev.txt b/requirements-dev.txt index 7d058647..f1a54f7b 100644 --- a/requirements-dev.txt +++ b/requirements-dev.txt @@ -1,18 +1,18 @@ # This file was autogenerated by uv via the following command: # uv pip compile ./requirements-dev.in --no-strip-extras --output-file ./requirements-dev.txt -asgiref==3.8.1 +asgiref==3.9.1 # via # -c ./requirements.txt # django -django==4.2.16 +django==4.2.24 # via # -c ./requirements.txt # django-debug-toolbar -django-debug-toolbar==4.4.6 +django-debug-toolbar==6.0.0 # via -r ./requirements-dev.in pydevd-pycharm==243.26053.29 # via -r ./requirements-dev.in -sqlparse==0.5.1 +sqlparse==0.5.3 # via # -c ./requirements.txt # django diff --git a/requirements.in b/requirements.in index fe1c8b81..f10d3464 100644 --- a/requirements.in +++ b/requirements.in @@ -13,18 +13,18 @@ django-oauth-toolkit django-redis django-rest-auth django-widget-tweaks -djangorestframework>=3.14 +djangorestframework environs[django] -greenlet==3.0.3 +greenlet psycogreen -gevent==24.2.1 +gevent gunicorn interrogate itsdangerous psycopg2-binary whitenoise django-click -Pillow==10.2.0 +Pillow python-dateutil django-storages wheel @@ -41,8 +41,8 @@ python-json-logger structlog # Celery -celery==5.4.0 -redis==5.0.8 +celery +redis>=5,<6 # Testing Faker @@ -59,16 +59,18 @@ pytest-django responses # Packaging -uv>=0.2.27,<0.3 +uv # Parsing content from external sources (like S3) mistletoe python-frontmatter beautifulsoup4 -django-haystack>=3.2 +# used in old mailinglist migrations, squash them and this can probably be removed django-mptt==0.14 -elasticsearch==7.17.9 +# used by mailman/hyperkitty +django-haystack +elasticsearch>7,<8 # Github ghapi diff --git a/requirements.txt b/requirements.txt index cc081dbe..526c2a70 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,32 +1,33 @@ # This file was autogenerated by uv via the following command: # uv pip compile ./requirements.in --no-strip-extras --output-file ./requirements.txt -amqp==5.2.0 +amqp==5.3.1 # via kombu appdirs==1.4.4 # via fs -argon2-cffi==23.1.0 +argon2-cffi==25.1.0 # via minio -argon2-cffi-bindings==21.2.0 +argon2-cffi-bindings==25.1.0 # via argon2-cffi -asgiref==3.8.1 +asgiref==3.9.1 # via # django + # django-allauth # django-cors-headers -asttokens==2.4.1 +asttokens==3.0.0 # via stack-data -attrs==24.2.0 +attrs==25.3.0 # via interrogate -beautifulsoup4==4.12.3 +beautifulsoup4==4.13.5 # via -r ./requirements.in billiard==4.2.1 # via celery -black==24.10.0 +black==25.1.0 # via -r ./requirements.in -boto3==1.35.36 +boto3==1.40.24 # via # -r ./requirements.in # django-bakery -botocore==1.35.36 +botocore==1.40.24 # via # boto3 # s3transfer @@ -34,9 +35,9 @@ bump2version==1.0.1 # via bumpversion bumpversion==0.6.0 # via -r ./requirements.in -celery==5.4.0 +celery==5.5.3 # via -r ./requirements.in -certifi==2024.8.30 +certifi==2025.8.3 # via # elasticsearch # minio @@ -47,9 +48,9 @@ cffi==1.17.1 # cryptography cfgv==3.4.0 # via pre-commit -charset-normalizer==3.4.0 +charset-normalizer==3.4.3 # via requests -click==8.1.7 +click==8.2.1 # via # black # celery @@ -60,32 +61,32 @@ click==8.1.7 # interrogate click-didyoumean==0.3.1 # via celery -click-plugins==1.1.1 +click-plugins==1.1.1.2 # via celery click-repl==0.3.0 # via celery colorama==0.4.6 # via interrogate -contourpy==1.3.0 +contourpy==1.3.3 # via matplotlib -coverage[toml]==7.6.2 +coverage[toml]==7.10.6 # via pytest-cov -cryptography==43.0.1 +cryptography==45.0.7 # via # -r ./requirements.in # jwcrypto # pyjwt cycler==0.12.1 # via matplotlib -decorator==5.1.1 +decorator==5.2.1 # via ipython -distlib==0.3.8 +distlib==0.4.0 # via virtualenv -dj-database-url==2.2.0 +dj-database-url==3.0.1 # via environs dj-email-url==1.0.6 # via environs -django==4.2.16 +django==4.2.24 # via # -r ./requirements.in # dj-database-url @@ -104,93 +105,95 @@ django==4.2.16 # django-storages # djangorestframework # model-bakery -django-admin-env-notice==1.0 +django-admin-env-notice==1.0.1 # via -r ./requirements.in -django-allauth[socialaccount]==65.0.2 +django-allauth[socialaccount]==65.11.1 # via -r ./requirements.in -django-anymail[mailgun]==12.0 +django-anymail[mailgun]==13.1 # via -r ./requirements.in -django-appconf==1.0.6 +django-appconf==1.1.0 # via django-imagekit -django-bakery==0.13.4 +django-bakery==0.13.5 # via -r ./requirements.in django-cache-url==3.4.5 # via environs -django-click==2.4.0 +django-click==2.4.1 # via -r ./requirements.in -django-cors-headers==4.4.0 +django-cors-headers==4.7.0 # via -r ./requirements.in -django-db-geventpool==4.0.7 +django-db-geventpool==4.0.8 # via -r ./requirements.in -django-extensions==3.2.3 +django-extensions==4.1 # via -r ./requirements.in django-haystack==3.3.0 # via -r ./requirements.in -django-health-check==3.18.3 +django-health-check==3.20.0 # via -r ./requirements.in django-imagekit==5.0.0 # via -r ./requirements.in -django-js-asset==2.2.0 +django-js-asset==3.1.2 # via django-mptt django-mptt==0.14.0 # via -r ./requirements.in django-oauth-toolkit==3.0.1 # via -r ./requirements.in -django-redis==5.4.0 +django-redis==6.0.0 # via -r ./requirements.in django-rest-auth==0.9.5 # via -r ./requirements.in -django-storages==1.14.4 +django-storages==1.14.6 # via -r ./requirements.in -django-test-plus==2.2.4 +django-test-plus==2.3.0 # via -r ./requirements.in django-tracer==0.9.3 # via -r ./requirements.in django-widget-tweaks==1.5.0 # via -r ./requirements.in -djangorestframework==3.15.2 +djangorestframework==3.16.1 # via # -r ./requirements.in # django-rest-auth -elasticsearch==7.17.9 +elasticsearch==7.17.12 # via -r ./requirements.in -environs[django]==11.0.0 +environs[django]==14.3.0 # via -r ./requirements.in -executing==2.1.0 +executing==2.2.1 # via stack-data -faker==30.3.0 +faker==37.6.0 # via -r ./requirements.in -fastcore==1.7.12 +fastcore==1.8.8 # via ghapi -filelock==3.16.1 +filelock==3.19.1 # via virtualenv -fonttools==4.54.1 +fonttools==4.59.2 # via matplotlib fs==2.4.16 # via django-bakery -gevent==24.2.1 +gevent==25.8.2 # via -r ./requirements.in ghapi==1.0.6 # via -r ./requirements.in -greenlet==3.0.3 +greenlet==3.2.4 # via # -r ./requirements.in # gevent gunicorn==23.0.0 # via -r ./requirements.in -identify==2.6.1 +identify==2.6.13 # via pre-commit idna==3.10 # via requests -iniconfig==2.0.0 +iniconfig==2.1.0 # via pytest interrogate==1.7.0 # via -r ./requirements.in -ipython==8.28.0 +ipython==9.5.0 # via -r ./requirements.in +ipython-pygments-lexers==1.1.1 + # via ipython itsdangerous==2.2.0 # via -r ./requirements.in -jedi==0.19.1 +jedi==0.19.2 # via ipython jmespath==1.0.1 # via @@ -202,48 +205,48 @@ jsoncomment==0.4.2 # via -r ./requirements.in jwcrypto==1.5.6 # via django-oauth-toolkit -kiwisolver==1.4.7 +kiwisolver==1.4.9 # via matplotlib -kombu==5.4.2 +kombu==5.5.4 # via celery -lxml==5.4.0 +lxml==6.0.1 # via -r ./requirements.in -marshmallow==3.22.0 +marshmallow==4.0.1 # via environs -matplotlib==3.9.2 +matplotlib==3.10.6 # via wordcloud matplotlib-inline==0.1.7 # via ipython -minio==7.2.9 +minio==7.2.16 # via -r ./requirements.in mistletoe==1.4.0 # via -r ./requirements.in -model-bakery==1.19.5 +model-bakery==1.20.5 # via -r ./requirements.in -mypy-extensions==1.0.0 +mypy-extensions==1.1.0 # via black nodeenv==1.9.1 # via pre-commit -numpy==2.1.2 +numpy==2.3.2 # via # contourpy # matplotlib # wordcloud -oauthlib==3.2.2 +oauthlib==3.3.1 # via + # django-allauth # django-oauth-toolkit - # requests-oauthlib -packaging==24.1 +packaging==25.0 # via # black # django-haystack # fastcore # ghapi # gunicorn - # marshmallow + # kombu # matplotlib # pytest -parso==0.8.4 +parso==0.8.5 # via jedi pathspec==0.12.1 # via black @@ -251,27 +254,29 @@ pexpect==4.9.0 # via ipython pilkit==3.0 # via django-imagekit -pillow==10.2.0 +pillow==11.3.0 # via # -r ./requirements.in # matplotlib # pilkit # wordcloud -platformdirs==4.3.6 +platformdirs==4.4.0 # via # black # virtualenv -pluggy==1.5.0 - # via pytest -pre-commit==4.0.1 +pluggy==1.6.0 + # via + # pytest + # pytest-cov +pre-commit==4.3.0 # via -r ./requirements.in -prompt-toolkit==3.0.48 +prompt-toolkit==3.0.52 # via # click-repl # ipython psycogreen==1.0.2 # via -r ./requirements.in -psycopg2-binary==2.9.9 +psycopg2-binary==2.9.10 # via -r ./requirements.in ptyprocess==0.7.0 # via pexpect @@ -281,80 +286,80 @@ py==1.11.0 # via interrogate pycparser==2.22 # via cffi -pycryptodome==3.21.0 +pycryptodome==3.23.0 # via minio -pygments==2.18.0 - # via ipython -pyjwt[crypto]==2.9.0 - # via django-allauth -pyparsing==3.2.0 +pygments==2.19.2 + # via + # ipython + # ipython-pygments-lexers + # pytest +pyjwt[crypto]==2.10.1 + # via + # django-allauth + # redis +pyparsing==3.2.3 # via matplotlib -pytest==8.3.3 +pytest==8.4.2 # via # -r ./requirements.in # pytest-cov # pytest-django -pytest-cov==5.0.0 +pytest-cov==6.2.1 # via -r ./requirements.in -pytest-django==4.9.0 +pytest-django==4.11.1 # via -r ./requirements.in python-dateutil==2.9.0.post0 # via # -r ./requirements.in # botocore # celery - # faker # matplotlib -python-dotenv==1.0.1 +python-dotenv==1.1.1 # via environs python-frontmatter==1.1.0 # via -r ./requirements.in -python-json-logger==2.0.7 +python-json-logger==3.3.0 # via -r ./requirements.in pyyaml==6.0.2 # via # pre-commit # python-frontmatter # responses -redis==5.0.8 +redis==5.3.1 # via # -r ./requirements.in # django-redis -requests==2.32.3 +requests==2.32.5 # via # -r ./requirements.in # django-allauth # django-anymail # django-oauth-toolkit - # requests-oauthlib # responses -requests-oauthlib==2.0.0 - # via django-allauth -responses==0.25.3 +responses==0.25.8 # via -r ./requirements.in -s3transfer==0.10.3 +s3transfer==0.13.1 # via boto3 -setuptools==75.1.0 +setuptools==80.9.0 # via # fs # zope-event # zope-interface -six==1.16.0 +six==1.17.0 # via - # asttokens # django-bakery # django-rest-auth # fs # python-dateutil -slack-sdk==3.33.2 +slack-sdk==3.36.0 # via -r ./requirements.in -soupsieve==2.6 +soupsieve==2.8 # via beautifulsoup4 -sqlparse==0.5.1 +sqlparse==0.5.3 # via django stack-data==0.6.3 # via ipython -structlog==24.4.0 +structlog==25.4.0 # via -r ./requirements.in tabulate==0.9.0 # via interrogate @@ -362,18 +367,17 @@ traitlets==5.14.3 # via # ipython # matplotlib-inline -typing-extensions==4.12.2 +typing-extensions==4.15.0 # via - # dj-database-url - # faker + # beautifulsoup4 # ipython # jwcrypto # minio -tzdata==2024.2 +tzdata==2025.2 # via - # celery + # faker # kombu -unidecode==1.3.8 +unidecode==1.4.0 # via -r ./requirements.in urllib3==1.26.20 # via @@ -383,24 +387,24 @@ urllib3==1.26.20 # minio # requests # responses -uv==0.2.37 +uv==0.8.15 # via -r ./requirements.in vine==5.1.0 # via # amqp # celery # kombu -virtualenv==20.26.6 +virtualenv==20.34.0 # via pre-commit wcwidth==0.2.13 # via prompt-toolkit -wheel==0.44.0 +wheel==0.45.1 # via -r ./requirements.in -whitenoise==6.7.0 +whitenoise==6.9.0 # via -r ./requirements.in -wordcloud==1.9.3 +wordcloud==1.9.4 # via -r ./requirements.in -zope-event==5.0 +zope-event==5.1.1 # via gevent -zope-interface==7.0.3 +zope-interface==7.2 # via gevent