From 6b218e546e50fceb1ade902bf18c0bcc95257833 Mon Sep 17 00:00:00 2001 From: "Fabio C. Barrionuevo da Luz" Date: Sun, 1 Aug 2021 17:27:48 -0300 Subject: [PATCH 1/2] Upgrade to Django 2.2. Update dependencies for django 2.2 compatibility --- .gitignore | 4 + banners/__init__.py | 1 + banners/apps.py | 6 ++ base-requirements.txt | 41 ++++----- blogs/__init__.py | 1 + blogs/apps.py | 6 ++ blogs/urls.py | 5 +- boxes/__init__.py | 1 + boxes/apps.py | 6 ++ boxes/factories.py | 3 +- boxes/urls.py | 5 +- cms/__init__.py | 1 + cms/apps.py | 6 ++ codesamples/__init__.py | 1 + codesamples/apps.py | 6 ++ codesamples/factories.py | 3 +- community/__init__.py | 1 + community/apps.py | 6 ++ community/models.py | 2 +- community/urls.py | 7 +- companies/__init__.py | 1 + companies/apps.py | 6 ++ companies/factories.py | 3 +- companies/models.py | 2 +- dev-requirements.txt | 8 +- downloads/__init__.py | 1 + downloads/api.py | 6 +- downloads/apps.py | 6 ++ downloads/factories.py | 7 +- downloads/urls.py | 14 +-- env_sample | 30 +++++++ events/__init__.py | 1 + events/apps.py | 6 ++ events/factories.py | 3 +- events/models.py | 2 +- events/tests/test_importer.py | 20 ++--- events/urls.py | 26 +++--- events/utils.py | 2 +- jobs/factories.py | 9 +- jobs/listeners.py | 2 +- jobs/urls.py | 40 ++++----- manage.py | 18 +++- membership/__init__.py | 1 + membership/apps.py | 6 ++ membership/urls.py | 5 +- minutes/__init__.py | 1 + minutes/apps.py | 6 ++ minutes/urls.py | 9 +- nominations/__init__.py | 1 + nominations/apps.py | 6 ++ nominations/urls.py | 27 ++---- pages/__init__.py | 1 + pages/api.py | 2 +- pages/apps.py | 6 ++ pages/factories.py | 3 +- pages/urls.py | 5 +- pages/views.py | 4 +- peps/__init__.py | 1 + peps/apps.py | 6 ++ pydotorg/context_processors.py | 6 +- pydotorg/settings/base.py | 19 ++-- pydotorg/settings/heroku.py | 44 +++++---- pydotorg/settings/local.py | 15 +++- pydotorg/urls.py | 89 ++++++++++--------- pydotorg/urls_api.py | 4 +- sponsors/__init__.py | 1 + sponsors/admin.py | 6 +- sponsors/apps.py | 6 ++ sponsors/forms.py | 2 +- .../0045_add_added_by_user_sponsorbenefit.py | 18 ++++ sponsors/urls.py | 9 +- successstories/__init__.py | 1 + successstories/apps.py | 6 ++ successstories/factories.py | 5 +- successstories/urls.py | 11 ++- templates/components/navigation-widget.html | 4 +- .../sponsors/admin/approve_application.html | 2 +- .../sponsors/admin/execute_contract.html | 2 +- .../sponsors/admin/nullify_contract.html | 2 +- .../sponsors/admin/reject_application.html | 2 +- .../rollback_sponsorship_to_editing.html | 2 +- templates/sponsors/admin/send_contract.html | 2 +- .../sponsors/sponsorship_benefits_form.html | 2 +- users/admin.py | 2 +- users/factories.py | 5 +- users/migrations/0014_auto_20210801_2332.py | 23 +++++ users/models.py | 4 +- users/urls.py | 23 +++-- work_groups/__init__.py | 1 + work_groups/apps.py | 6 ++ 90 files changed, 475 insertions(+), 264 deletions(-) create mode 100644 banners/apps.py create mode 100644 blogs/apps.py create mode 100644 boxes/apps.py create mode 100644 cms/apps.py create mode 100644 codesamples/apps.py create mode 100644 community/apps.py create mode 100644 companies/apps.py create mode 100644 downloads/apps.py create mode 100644 env_sample create mode 100644 events/apps.py create mode 100644 membership/apps.py create mode 100644 minutes/apps.py create mode 100644 nominations/apps.py create mode 100644 pages/apps.py create mode 100644 peps/apps.py create mode 100644 sponsors/apps.py create mode 100644 sponsors/migrations/0045_add_added_by_user_sponsorbenefit.py create mode 100644 successstories/apps.py create mode 100644 users/migrations/0014_auto_20210801_2332.py create mode 100644 work_groups/apps.py diff --git a/.gitignore b/.gitignore index b2836fa19..8f018dc4f 100644 --- a/.gitignore +++ b/.gitignore @@ -17,5 +17,9 @@ static/stylesheets/no-mq.css static/stylesheets/style.css __pycache__ *.db +*.py[co] .vscode .~lock.* +.idea +.coverage +.env diff --git a/banners/__init__.py b/banners/__init__.py index e69de29bb..010b54570 100644 --- a/banners/__init__.py +++ b/banners/__init__.py @@ -0,0 +1 @@ +default_app_config = 'banners.apps.BannersAppConfig' diff --git a/banners/apps.py b/banners/apps.py new file mode 100644 index 000000000..9e3aa2c34 --- /dev/null +++ b/banners/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class BannersAppConfig(AppConfig): + + name = 'banners' diff --git a/base-requirements.txt b/base-requirements.txt index 9f92092c4..66b693491 100644 --- a/base-requirements.txt +++ b/base-requirements.txt @@ -1,48 +1,49 @@ dj-database-url==0.5.0 -django-pipeline==1.6.14 -django-sitetree==1.10.0 -Django==2.0.13 +django-pipeline==2.0.6 +django-sitetree==1.17.0 +Django==2.2.24 docutils==0.12 Markdown==3.3.4 -cmarkgfm==0.4.2 +cmarkgfm==0.6.0 Pillow==8.3.1 psycopg2==2.8.6 -python3-openid==3.1.0 +python3-openid==3.2.0 +python-decouple==3.4 # lxml used by BeautifulSoup. lxml==4.6.3 -cssselect==0.9.1 +cssselect==1.1.0 feedparser==6.0.8 -beautifulsoup4==4.6.0 -icalendar==3.8.4 +beautifulsoup4==4.9.3 +icalendar==4.0.7 chardet==4.0.0 # TODO: We may drop 'django-imagekit' completely. django-imagekit==4.0.2 -git+https://github.com/django-haystack/django-haystack.git@802b0f6f4b3b99314453261876a32bac2bbec94f +django-haystack==3.0 elasticsearch>=5,<6 # TODO: 0.14.0 only supports Django 1.8 and 1.11. -django-tastypie==0.14.1 +django-tastypie==0.14.3 -pytz==2017.2 -python-dateutil==2.8.1 +pytz==2021.1 +python-dateutil==2.8.2 requests[security]>=2.26.0 -django-honeypot==0.6.0 -django-markupfield==1.4.3 +django-honeypot==1.0.1 +django-markupfield==2.0.0 django-markupfield-helpers==0.1.1 django-allauth==0.41.0 -django-waffle==0.14 +django-waffle==2.2.1 -djangorestframework==3.8.2 -django-filter==1.1.0 +djangorestframework==3.12.2 +django-filter==2.4.0 django-ordered-model==3.4.3 django-widget-tweaks==1.4.8 -django-countries==6.1.3 +django-countries==7.2.1 xhtml2pdf==0.2.5 -django-easy-pdf==0.1.1 +django-easy-pdf3==0.1.2 num2words==0.5.10 -django-polymorphic==2.1.2 +django-polymorphic==3.0.0 sorl-thumbnail==12.7.0 docxtpl==0.12.0 diff --git a/blogs/__init__.py b/blogs/__init__.py index e69de29bb..620291c46 100644 --- a/blogs/__init__.py +++ b/blogs/__init__.py @@ -0,0 +1 @@ +default_app_config = 'blogs.apps.BlogsAppConfig' diff --git a/blogs/apps.py b/blogs/apps.py new file mode 100644 index 000000000..0c88608d1 --- /dev/null +++ b/blogs/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class BlogsAppConfig(AppConfig): + + name = 'blogs' diff --git a/blogs/urls.py b/blogs/urls.py index 84fe9d9a7..d315ed486 100644 --- a/blogs/urls.py +++ b/blogs/urls.py @@ -1,7 +1,6 @@ -from django.conf.urls import url - from . import views +from django.urls import path urlpatterns = [ - url(r'^$', views.BlogHome.as_view(), name='blog'), + path('', views.BlogHome.as_view(), name='blog'), ] diff --git a/boxes/__init__.py b/boxes/__init__.py index e69de29bb..401a83d2e 100644 --- a/boxes/__init__.py +++ b/boxes/__init__.py @@ -0,0 +1 @@ +default_app_config = 'boxes.apps.BoxesAppConfig' diff --git a/boxes/apps.py b/boxes/apps.py new file mode 100644 index 000000000..6f7e158e2 --- /dev/null +++ b/boxes/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class BoxesAppConfig(AppConfig): + + name = 'boxes' diff --git a/boxes/factories.py b/boxes/factories.py index dde6bf033..5d8c7f2ad 100644 --- a/boxes/factories.py +++ b/boxes/factories.py @@ -4,13 +4,14 @@ import factory from django.conf import settings +from factory.django import DjangoModelFactory from .models import Box from users.factories import UserFactory -class BoxFactory(factory.DjangoModelFactory): +class BoxFactory(DjangoModelFactory): class Meta: model = Box diff --git a/boxes/urls.py b/boxes/urls.py index 2d1e6553d..8ac457c08 100644 --- a/boxes/urls.py +++ b/boxes/urls.py @@ -1,7 +1,6 @@ -from django.conf.urls import url - from .views import box +from django.urls import path urlpatterns = [ - url(r'(?P