From e9f13929bb37d33642c7efdc30e95130bb4865aa Mon Sep 17 00:00:00 2001 From: Nick Moreton Date: Mon, 13 Feb 2023 17:23:01 +0000 Subject: [PATCH 01/13] Update dependencies and add support for Wagtail 4.2 --- setup.py | 8 ++++---- tox.ini | 11 ++++------- 2 files changed, 8 insertions(+), 11 deletions(-) diff --git a/setup.py b/setup.py index afec9d1f..90d5d4c8 100644 --- a/setup.py +++ b/setup.py @@ -3,7 +3,7 @@ from setuptools import find_packages, setup install_requires = [ - "wagtail>=2.15,<4.2", + "wagtail>=4.1", "user-agents>=1.1.0", "wagtail-font-awesome-svg>=0.0.3", "pycountry", @@ -66,10 +66,10 @@ "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Framework :: Django", - "Framework :: Django :: 3", - "Framework :: Django :: 4", + "Framework :: Django :: 3.2", + "Framework :: Django :: 4.0", + "Framework :: Django :: 4.1", "Framework :: Wagtail", - "Framework :: Wagtail :: 3", "Framework :: Wagtail :: 4", "Topic :: Internet :: WWW/HTTP :: Site Management", ], diff --git a/tox.ini b/tox.ini index 33646b78..05b097b6 100644 --- a/tox.ini +++ b/tox.ini @@ -1,9 +1,9 @@ [tox] envlist = flake8 - py{37,38,39,310,311}-dj{32}-wt{215} - py{38,39,310,311}-dj{32,40}-wt{216,30,40,41} - py{39,310,311}-dj{41}-wt{40,41} + py{37}-dj{32}-wt{41,42} + py{38,39,310}-dj{32,40,41}-wt{41,42} + py{311}-dj{41}-wt{41,42} [gh-actions] python = @@ -26,11 +26,8 @@ deps = dj32: Django>=3.2,<3.3 dj40: Django>=4.0,<4.1 dj41: Django>=4.1,<4.2 - wt215: wagtail>=2.15,<2.16 - wt216: wagtail>=2.16,<2.17 - wt30: wagtail>=3.0,<4.0 - wt40: wagtail>=4.0,<4.1 wt41: wagtail>=4.1,<4.2 + wt42: wagtail>=4.2,<5.0 geoip2: geoip2 [testenv:coverage-report] From 4d762c32aebe6d138bc986a1d97b70270cfcb02f Mon Sep 17 00:00:00 2001 From: Nick Moreton Date: Mon, 13 Feb 2023 17:36:44 +0000 Subject: [PATCH 02/13] Run black on migrations --- src/wagtail_personalisation/migrations/0001_initial.py | 1 - .../migrations/0002_auto_20161205_1623.py | 1 - .../migrations/0003_auto_20161206_1005.py | 1 - .../migrations/0004_segment_persistent.py | 1 - .../migrations/0005_userisloggedinrule.py | 1 - src/wagtail_personalisation/migrations/0006_segment_match_any.py | 1 - src/wagtail_personalisation/migrations/0007_dayrule.py | 1 - src/wagtail_personalisation/migrations/0008_devicerule.py | 1 - .../migrations/0009_auto_20170531_0428.py | 1 - .../migrations/0010_auto_20170531_1101.py | 1 - .../migrations/0011_personalisablepagemetadata.py | 1 - .../0012_remove_personalisablepagemetadata_is_segmented.py | 1 - .../migrations/0013_add_dynamic_static_to_segment.py | 1 - src/wagtail_personalisation/migrations/0015_static_users.py | 1 - .../migrations/0016_auto_20180125_0918.py | 1 - .../migrations/0017_segment_randomisation_percent.py | 1 - .../migrations/0018_segment_excluded_users.py | 1 - .../migrations/0019_auto_20180526_1425.py | 1 - .../migrations/0020_rules_delete_relatedqueryname.py | 1 - ...1_personalisablepagemetadata_segment_set_on_delete_protect.py | 1 - .../0022_personalisablepagemetadata_canonical_protect.py | 1 - .../0023_personalisablepagemetadata_variant_cascade.py | 1 - src/wagtail_personalisation/migrations/0024_origincountryrule.py | 1 - .../migrations/0025_auto_20190822_0627.py | 1 - tests/site/pages/migrations/0001_initial.py | 1 - tests/site/pages/migrations/0002_regularpage.py | 1 - 26 files changed, 26 deletions(-) diff --git a/src/wagtail_personalisation/migrations/0001_initial.py b/src/wagtail_personalisation/migrations/0001_initial.py index baad8e84..a25c8a49 100644 --- a/src/wagtail_personalisation/migrations/0001_initial.py +++ b/src/wagtail_personalisation/migrations/0001_initial.py @@ -8,7 +8,6 @@ class Migration(migrations.Migration): - initial = True dependencies = [ diff --git a/src/wagtail_personalisation/migrations/0002_auto_20161205_1623.py b/src/wagtail_personalisation/migrations/0002_auto_20161205_1623.py index bd8e68dc..8e1c52db 100644 --- a/src/wagtail_personalisation/migrations/0002_auto_20161205_1623.py +++ b/src/wagtail_personalisation/migrations/0002_auto_20161205_1623.py @@ -8,7 +8,6 @@ class Migration(migrations.Migration): - dependencies = [ ("wagtail_personalisation", "0001_initial"), ] diff --git a/src/wagtail_personalisation/migrations/0003_auto_20161206_1005.py b/src/wagtail_personalisation/migrations/0003_auto_20161206_1005.py index 3f206ec5..c1648614 100644 --- a/src/wagtail_personalisation/migrations/0003_auto_20161206_1005.py +++ b/src/wagtail_personalisation/migrations/0003_auto_20161206_1005.py @@ -6,7 +6,6 @@ class Migration(migrations.Migration): - dependencies = [ ("wagtail_personalisation", "0002_auto_20161205_1623"), ] diff --git a/src/wagtail_personalisation/migrations/0004_segment_persistent.py b/src/wagtail_personalisation/migrations/0004_segment_persistent.py index f5e592b9..ba6c90cf 100644 --- a/src/wagtail_personalisation/migrations/0004_segment_persistent.py +++ b/src/wagtail_personalisation/migrations/0004_segment_persistent.py @@ -6,7 +6,6 @@ class Migration(migrations.Migration): - dependencies = [ ("wagtail_personalisation", "0003_auto_20161206_1005"), ] diff --git a/src/wagtail_personalisation/migrations/0005_userisloggedinrule.py b/src/wagtail_personalisation/migrations/0005_userisloggedinrule.py index dccd67b2..0a7d08d9 100644 --- a/src/wagtail_personalisation/migrations/0005_userisloggedinrule.py +++ b/src/wagtail_personalisation/migrations/0005_userisloggedinrule.py @@ -8,7 +8,6 @@ class Migration(migrations.Migration): - dependencies = [ ("wagtail_personalisation", "0004_segment_persistent"), ] diff --git a/src/wagtail_personalisation/migrations/0006_segment_match_any.py b/src/wagtail_personalisation/migrations/0006_segment_match_any.py index 1507d12f..1683f492 100644 --- a/src/wagtail_personalisation/migrations/0006_segment_match_any.py +++ b/src/wagtail_personalisation/migrations/0006_segment_match_any.py @@ -6,7 +6,6 @@ class Migration(migrations.Migration): - dependencies = [ ("wagtail_personalisation", "0005_userisloggedinrule"), ] diff --git a/src/wagtail_personalisation/migrations/0007_dayrule.py b/src/wagtail_personalisation/migrations/0007_dayrule.py index f89a07f1..575c8942 100644 --- a/src/wagtail_personalisation/migrations/0007_dayrule.py +++ b/src/wagtail_personalisation/migrations/0007_dayrule.py @@ -8,7 +8,6 @@ class Migration(migrations.Migration): - dependencies = [ ("wagtail_personalisation", "0006_segment_match_any"), ] diff --git a/src/wagtail_personalisation/migrations/0008_devicerule.py b/src/wagtail_personalisation/migrations/0008_devicerule.py index 6f605896..8b20fc88 100644 --- a/src/wagtail_personalisation/migrations/0008_devicerule.py +++ b/src/wagtail_personalisation/migrations/0008_devicerule.py @@ -8,7 +8,6 @@ class Migration(migrations.Migration): - dependencies = [ ("wagtail_personalisation", "0007_dayrule"), ] diff --git a/src/wagtail_personalisation/migrations/0009_auto_20170531_0428.py b/src/wagtail_personalisation/migrations/0009_auto_20170531_0428.py index e85d1ec2..9b457d6b 100644 --- a/src/wagtail_personalisation/migrations/0009_auto_20170531_0428.py +++ b/src/wagtail_personalisation/migrations/0009_auto_20170531_0428.py @@ -6,7 +6,6 @@ class Migration(migrations.Migration): - dependencies = [ ("wagtail_personalisation", "0008_devicerule"), ] diff --git a/src/wagtail_personalisation/migrations/0010_auto_20170531_1101.py b/src/wagtail_personalisation/migrations/0010_auto_20170531_1101.py index 07cf91a5..3f799ad1 100644 --- a/src/wagtail_personalisation/migrations/0010_auto_20170531_1101.py +++ b/src/wagtail_personalisation/migrations/0010_auto_20170531_1101.py @@ -6,7 +6,6 @@ class Migration(migrations.Migration): - dependencies = [ ("wagtail_personalisation", "0009_auto_20170531_0428"), ] diff --git a/src/wagtail_personalisation/migrations/0011_personalisablepagemetadata.py b/src/wagtail_personalisation/migrations/0011_personalisablepagemetadata.py index 14d74b77..7ce2f276 100644 --- a/src/wagtail_personalisation/migrations/0011_personalisablepagemetadata.py +++ b/src/wagtail_personalisation/migrations/0011_personalisablepagemetadata.py @@ -7,7 +7,6 @@ class Migration(migrations.Migration): - dependencies = [ ("wagtailcore", "0001_initial"), ("wagtail_personalisation", "0010_auto_20170531_1101"), diff --git a/src/wagtail_personalisation/migrations/0012_remove_personalisablepagemetadata_is_segmented.py b/src/wagtail_personalisation/migrations/0012_remove_personalisablepagemetadata_is_segmented.py index 2582599b..2557ba08 100644 --- a/src/wagtail_personalisation/migrations/0012_remove_personalisablepagemetadata_is_segmented.py +++ b/src/wagtail_personalisation/migrations/0012_remove_personalisablepagemetadata_is_segmented.py @@ -6,7 +6,6 @@ class Migration(migrations.Migration): - dependencies = [ ("wagtail_personalisation", "0011_personalisablepagemetadata"), ] diff --git a/src/wagtail_personalisation/migrations/0013_add_dynamic_static_to_segment.py b/src/wagtail_personalisation/migrations/0013_add_dynamic_static_to_segment.py index ff521659..addc1a49 100644 --- a/src/wagtail_personalisation/migrations/0013_add_dynamic_static_to_segment.py +++ b/src/wagtail_personalisation/migrations/0013_add_dynamic_static_to_segment.py @@ -6,7 +6,6 @@ class Migration(migrations.Migration): - dependencies = [ ("sessions", "0001_initial"), ( diff --git a/src/wagtail_personalisation/migrations/0015_static_users.py b/src/wagtail_personalisation/migrations/0015_static_users.py index c2f328a5..db35051e 100644 --- a/src/wagtail_personalisation/migrations/0015_static_users.py +++ b/src/wagtail_personalisation/migrations/0015_static_users.py @@ -7,7 +7,6 @@ class Migration(migrations.Migration): - dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ("wagtail_personalisation", "0013_add_dynamic_static_to_segment"), diff --git a/src/wagtail_personalisation/migrations/0016_auto_20180125_0918.py b/src/wagtail_personalisation/migrations/0016_auto_20180125_0918.py index a553b8a6..82d30afa 100644 --- a/src/wagtail_personalisation/migrations/0016_auto_20180125_0918.py +++ b/src/wagtail_personalisation/migrations/0016_auto_20180125_0918.py @@ -6,7 +6,6 @@ class Migration(migrations.Migration): - dependencies = [ ("wagtail_personalisation", "0015_static_users"), ] diff --git a/src/wagtail_personalisation/migrations/0017_segment_randomisation_percent.py b/src/wagtail_personalisation/migrations/0017_segment_randomisation_percent.py index f637869e..d75c51dc 100644 --- a/src/wagtail_personalisation/migrations/0017_segment_randomisation_percent.py +++ b/src/wagtail_personalisation/migrations/0017_segment_randomisation_percent.py @@ -7,7 +7,6 @@ class Migration(migrations.Migration): - dependencies = [ ("wagtail_personalisation", "0016_auto_20180125_0918"), ] diff --git a/src/wagtail_personalisation/migrations/0018_segment_excluded_users.py b/src/wagtail_personalisation/migrations/0018_segment_excluded_users.py index 3b739a99..ff18b9d8 100644 --- a/src/wagtail_personalisation/migrations/0018_segment_excluded_users.py +++ b/src/wagtail_personalisation/migrations/0018_segment_excluded_users.py @@ -7,7 +7,6 @@ class Migration(migrations.Migration): - dependencies = [ migrations.swappable_dependency(settings.AUTH_USER_MODEL), ("wagtail_personalisation", "0017_segment_randomisation_percent"), diff --git a/src/wagtail_personalisation/migrations/0019_auto_20180526_1425.py b/src/wagtail_personalisation/migrations/0019_auto_20180526_1425.py index edb00ce0..4431697f 100644 --- a/src/wagtail_personalisation/migrations/0019_auto_20180526_1425.py +++ b/src/wagtail_personalisation/migrations/0019_auto_20180526_1425.py @@ -5,7 +5,6 @@ class Migration(migrations.Migration): - dependencies = [ ("wagtail_personalisation", "0018_segment_excluded_users"), ] diff --git a/src/wagtail_personalisation/migrations/0020_rules_delete_relatedqueryname.py b/src/wagtail_personalisation/migrations/0020_rules_delete_relatedqueryname.py index db2e322c..ab530c5f 100644 --- a/src/wagtail_personalisation/migrations/0020_rules_delete_relatedqueryname.py +++ b/src/wagtail_personalisation/migrations/0020_rules_delete_relatedqueryname.py @@ -6,7 +6,6 @@ class Migration(migrations.Migration): - dependencies = [ ("wagtail_personalisation", "0019_auto_20180526_1425"), ] diff --git a/src/wagtail_personalisation/migrations/0021_personalisablepagemetadata_segment_set_on_delete_protect.py b/src/wagtail_personalisation/migrations/0021_personalisablepagemetadata_segment_set_on_delete_protect.py index 454437d4..58dec322 100644 --- a/src/wagtail_personalisation/migrations/0021_personalisablepagemetadata_segment_set_on_delete_protect.py +++ b/src/wagtail_personalisation/migrations/0021_personalisablepagemetadata_segment_set_on_delete_protect.py @@ -5,7 +5,6 @@ class Migration(migrations.Migration): - dependencies = [ ("wagtail_personalisation", "0020_rules_delete_relatedqueryname"), ] diff --git a/src/wagtail_personalisation/migrations/0022_personalisablepagemetadata_canonical_protect.py b/src/wagtail_personalisation/migrations/0022_personalisablepagemetadata_canonical_protect.py index 6a24de07..cb4cf0e1 100644 --- a/src/wagtail_personalisation/migrations/0022_personalisablepagemetadata_canonical_protect.py +++ b/src/wagtail_personalisation/migrations/0022_personalisablepagemetadata_canonical_protect.py @@ -5,7 +5,6 @@ class Migration(migrations.Migration): - dependencies = [ ( "wagtail_personalisation", diff --git a/src/wagtail_personalisation/migrations/0023_personalisablepagemetadata_variant_cascade.py b/src/wagtail_personalisation/migrations/0023_personalisablepagemetadata_variant_cascade.py index 56f9bf11..0a3e95be 100644 --- a/src/wagtail_personalisation/migrations/0023_personalisablepagemetadata_variant_cascade.py +++ b/src/wagtail_personalisation/migrations/0023_personalisablepagemetadata_variant_cascade.py @@ -5,7 +5,6 @@ class Migration(migrations.Migration): - dependencies = [ ( "wagtail_personalisation", diff --git a/src/wagtail_personalisation/migrations/0024_origincountryrule.py b/src/wagtail_personalisation/migrations/0024_origincountryrule.py index fa180aca..6c522c28 100644 --- a/src/wagtail_personalisation/migrations/0024_origincountryrule.py +++ b/src/wagtail_personalisation/migrations/0024_origincountryrule.py @@ -6,7 +6,6 @@ class Migration(migrations.Migration): - dependencies = [ ("wagtail_personalisation", "0023_personalisablepagemetadata_variant_cascade"), ] diff --git a/src/wagtail_personalisation/migrations/0025_auto_20190822_0627.py b/src/wagtail_personalisation/migrations/0025_auto_20190822_0627.py index 2f68fd39..ba6ca8af 100644 --- a/src/wagtail_personalisation/migrations/0025_auto_20190822_0627.py +++ b/src/wagtail_personalisation/migrations/0025_auto_20190822_0627.py @@ -4,7 +4,6 @@ class Migration(migrations.Migration): - dependencies = [ ("wagtail_personalisation", "0024_origincountryrule"), ] diff --git a/tests/site/pages/migrations/0001_initial.py b/tests/site/pages/migrations/0001_initial.py index b40b2879..e0ae5671 100644 --- a/tests/site/pages/migrations/0001_initial.py +++ b/tests/site/pages/migrations/0001_initial.py @@ -10,7 +10,6 @@ class Migration(migrations.Migration): - initial = True dependencies = [ diff --git a/tests/site/pages/migrations/0002_regularpage.py b/tests/site/pages/migrations/0002_regularpage.py index 0bd6b8db..61d4a50f 100644 --- a/tests/site/pages/migrations/0002_regularpage.py +++ b/tests/site/pages/migrations/0002_regularpage.py @@ -7,7 +7,6 @@ class Migration(migrations.Migration): - dependencies = [ ("wagtailcore", "0001_initial"), ("pages", "0001_initial"), From e7279f4de1657b10481c3e77d59e365beebf05b7 Mon Sep 17 00:00:00 2001 From: Nick Moreton Date: Tue, 14 Feb 2023 09:45:07 +0000 Subject: [PATCH 03/13] Update sandbox dependencies --- sandbox/requirements.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/sandbox/requirements.txt b/sandbox/requirements.txt index 0daa5008..011eb147 100644 --- a/sandbox/requirements.txt +++ b/sandbox/requirements.txt @@ -1,4 +1,4 @@ -Django>=2.2,<2.3 -wagtail>=2.6,<2.7 +Django>=3.2 +wagtail>=4.1 django-debug-toolbar==2.0 -e .[docs,test] From 92cc08884cfce3f8968a2e718a4aa749a5dd4f37 Mon Sep 17 00:00:00 2001 From: Nick Moreton Date: Tue, 14 Feb 2023 09:45:49 +0000 Subject: [PATCH 04/13] Remove support for wagtail < 4.1 in sandbox --- .../migrations/0003_homepage_text_content.py | 38 +---------- sandbox/sandbox/apps/home/models.py | 65 ++++++------------- sandbox/sandbox/apps/search/views.py | 7 +- sandbox/sandbox/settings.py | 4 +- sandbox/sandbox/urls.py | 8 +-- 5 files changed, 26 insertions(+), 96 deletions(-) diff --git a/sandbox/sandbox/apps/home/migrations/0003_homepage_text_content.py b/sandbox/sandbox/apps/home/migrations/0003_homepage_text_content.py index 5708696c..46dc5395 100644 --- a/sandbox/sandbox/apps/home/migrations/0003_homepage_text_content.py +++ b/sandbox/sandbox/apps/home/migrations/0003_homepage_text_content.py @@ -3,14 +3,9 @@ from __future__ import unicode_literals from django.db import migrations -from wagtail import VERSION as WAGTAIL_VERSION -if WAGTAIL_VERSION >= (3, 0): - import wagtail.blocks as wagtail_blocks - import wagtail.fields as wagtail_fields -else: - import wagtail.core.fields as wagtail_fields - import wagtail.core.blocks as wagtail_blocks +import wagtail.blocks as wagtail_blocks +import wagtail.fields as wagtail_fields import wagtail_personalisation @@ -58,34 +53,5 @@ class Migration(migrations.Migration): use_json_field=True, ), preserve_default=False, - ) - if WAGTAIL_VERSION >= (3, 0) - else migrations.AddField( - model_name="homepage", - name="body", - field=wagtail_fields.StreamField( - ( - ( - "personalisable_paragraph", - wagtail_blocks.StructBlock( - ( - ( - "segment", - wagtail_blocks.ChoiceBlock( - choices=wagtail_personalisation.blocks.list_segment_choices, - help_text="Only show this content block for users in this segment", - label="Personalisation segment", - required=False, - ), - ), - ("paragraph", wagtail_blocks.RichTextBlock()), - ), - icon="pilcrow", - ), - ), - ), - default="", - ), - preserve_default=False, ), ] diff --git a/sandbox/sandbox/apps/home/models.py b/sandbox/sandbox/apps/home/models.py index 2866cce1..f4909c87 100644 --- a/sandbox/sandbox/apps/home/models.py +++ b/sandbox/sandbox/apps/home/models.py @@ -1,17 +1,9 @@ from __future__ import absolute_import, unicode_literals -from wagtail import VERSION as WAGTAIL_VERSION - -if WAGTAIL_VERSION >= (3, 0): - from wagtail import blocks - from wagtail.admin.panels import FieldPanel - from wagtail.fields import RichTextField, StreamField - from wagtail.models import Page -else: - from wagtail.admin.edit_handlers import RichTextFieldPanel, StreamFieldPanel - from wagtail.core import blocks - from wagtail.core.fields import RichTextField, StreamField - from wagtail.core.models import Page +from wagtail import blocks +from wagtail.admin.panels import FieldPanel +from wagtail.fields import RichTextField, StreamField +from wagtail.models import Page from wagtail_personalisation.blocks import PersonalisedStructBlock from wagtail_personalisation.models import PersonalisablePageMixin @@ -19,39 +11,22 @@ class HomePage(PersonalisablePageMixin, Page): intro = RichTextField() - if WAGTAIL_VERSION >= (3, 0): - body = StreamField( - [ - ( - "personalisable_paragraph", - PersonalisedStructBlock( - [ - ("paragraph", blocks.RichTextBlock()), - ], - icon="pilcrow", - ), - ) - ], - use_json_field=True, - ) - else: - body = StreamField( - [ - ( - "personalisable_paragraph", - PersonalisedStructBlock( - [ - ("paragraph", blocks.RichTextBlock()), - ], - icon="pilcrow", - ), - ) - ] - ) + body = StreamField( + [ + ( + "personalisable_paragraph", + PersonalisedStructBlock( + [ + ("paragraph", blocks.RichTextBlock()), + ], + icon="pilcrow", + ), + ) + ], + use_json_field=True, + ) content_panels = Page.content_panels + [ - FieldPanel("intro") - if WAGTAIL_VERSION >= (3, 0) - else RichTextFieldPanel("intro"), - FieldPanel("body") if WAGTAIL_VERSION >= (3, 0) else StreamFieldPanel("body"), + FieldPanel("intro"), + FieldPanel("body"), ] diff --git a/sandbox/sandbox/apps/search/views.py b/sandbox/sandbox/apps/search/views.py index e18c7d0f..73b28498 100644 --- a/sandbox/sandbox/apps/search/views.py +++ b/sandbox/sandbox/apps/search/views.py @@ -2,13 +2,8 @@ from django.core.paginator import EmptyPage, PageNotAnInteger, Paginator from django.shortcuts import render -from wagtail import VERSION as WAGTAIL_VERSION - -if WAGTAIL_VERSION >= (3, 0): - from wagtail.models import Page -else: - from wagtail.core.models import Page +from wagtail.models import Page from wagtail.search.models import Query diff --git a/sandbox/sandbox/settings.py b/sandbox/sandbox/settings.py index 0df99c04..884cb254 100644 --- a/sandbox/sandbox/settings.py +++ b/sandbox/sandbox/settings.py @@ -16,8 +16,6 @@ import os from importlib.util import find_spec -from wagtail import VERSION as WAGTAIL_VERSION - PROJECT_DIR = os.path.dirname(os.path.abspath(__file__)) BASE_DIR = os.path.dirname(PROJECT_DIR) @@ -54,7 +52,7 @@ "wagtail.images", "wagtail.search", "wagtail.admin", - "wagtail" if WAGTAIL_VERSION >= (3, 0) else "wagtail.core", + "wagtail", "wagtail.contrib.modeladmin", "wagtailfontawesome", "modelcluster", diff --git a/sandbox/sandbox/urls.py b/sandbox/sandbox/urls.py index 95cf7596..1c39bf2a 100644 --- a/sandbox/sandbox/urls.py +++ b/sandbox/sandbox/urls.py @@ -4,13 +4,9 @@ from django.conf import settings from django.contrib import admin from django.urls import include, re_path -from wagtail import VERSION as WAGTAIL_VERSION -from wagtail.admin import urls as wagtailadmin_urls -if WAGTAIL_VERSION >= (3, 0): - from wagtail import urls as wagtail_urls -else: - from wagtail.core import urls as wagtail_urls +from wagtail import urls as wagtail_urls +from wagtail.admin import urls as wagtailadmin_urls from wagtail.documents import urls as wagtaildocs_urls From 7409629e934c52ef2abc2b2dea04c45dcb4fdcd8 Mon Sep 17 00:00:00 2001 From: Nick Moreton Date: Tue, 14 Feb 2023 09:46:24 +0000 Subject: [PATCH 05/13] Remove support for Wagtail < 4.1 in package --- src/wagtail_personalisation/blocks.py | 7 +- src/wagtail_personalisation/models.py | 20 +-- src/wagtail_personalisation/rules.py | 11 +- src/wagtail_personalisation/views.py | 7 +- src/wagtail_personalisation/wagtail_hooks.py | 146 +++++-------------- tests/unit/test_models.py | 6 +- tests/unit/test_wagtail_hooks.py | 7 +- 7 files changed, 48 insertions(+), 156 deletions(-) diff --git a/src/wagtail_personalisation/blocks.py b/src/wagtail_personalisation/blocks.py index 376ddc06..7cb1ca32 100644 --- a/src/wagtail_personalisation/blocks.py +++ b/src/wagtail_personalisation/blocks.py @@ -1,10 +1,5 @@ from django.utils.translation import gettext_lazy as _ -from wagtail import VERSION as WAGTAIL_VERSION - -if WAGTAIL_VERSION >= (3, 0): - from wagtail import blocks -else: - from wagtail.core import blocks +from wagtail import blocks from wagtail_personalisation.adapters import get_segment_adapter from wagtail_personalisation.models import Segment diff --git a/src/wagtail_personalisation/models.py b/src/wagtail_personalisation/models.py index c2e9386c..1fbbaa77 100644 --- a/src/wagtail_personalisation/models.py +++ b/src/wagtail_personalisation/models.py @@ -10,24 +10,8 @@ from django.utils.safestring import mark_safe from django.utils.translation import gettext_lazy as _ from modelcluster.models import ClusterableModel -from wagtail import VERSION as WAGTAIL_VERSION - -if WAGTAIL_VERSION >= (3, 0): - from wagtail.admin.panels import ( - FieldPanel, - FieldRowPanel, - InlinePanel, - MultiFieldPanel, - ) - from wagtail.models import Page -else: - from wagtail.admin.edit_handlers import ( - FieldPanel, - FieldRowPanel, - InlinePanel, - MultiFieldPanel, - ) - from wagtail.core.models import Page +from wagtail.admin.panels import FieldPanel, FieldRowPanel, InlinePanel, MultiFieldPanel +from wagtail.models import Page from wagtail_personalisation.rules import AbstractBaseRule from wagtail_personalisation.utils import count_active_days diff --git a/src/wagtail_personalisation/rules.py b/src/wagtail_personalisation/rules.py index aba6f8a2..b54602c3 100644 --- a/src/wagtail_personalisation/rules.py +++ b/src/wagtail_personalisation/rules.py @@ -14,12 +14,7 @@ from django.utils.translation import gettext_lazy as _ from modelcluster.fields import ParentalKey from user_agents import parse -from wagtail import VERSION as WAGTAIL_VERSION - -if WAGTAIL_VERSION >= (3, 0): - from wagtail.admin.panels import FieldPanel, FieldRowPanel -else: - from wagtail.admin.edit_handlers import FieldPanel, FieldRowPanel, PageChooserPanel +from wagtail.admin.panels import FieldPanel, FieldRowPanel from wagtail_personalisation.utils import get_client_ip @@ -252,9 +247,7 @@ class VisitCountRule(AbstractBaseRule): ) panels = [ - FieldPanel("counted_page") - if WAGTAIL_VERSION >= (3, 0) - else PageChooserPanel("counted_page"), + FieldPanel("counted_page"), FieldRowPanel( [ FieldPanel("operator"), diff --git a/src/wagtail_personalisation/views.py b/src/wagtail_personalisation/views.py index cd606acd..ae2e66a8 100644 --- a/src/wagtail_personalisation/views.py +++ b/src/wagtail_personalisation/views.py @@ -7,14 +7,9 @@ from django.shortcuts import get_object_or_404 from django.urls import reverse from django.utils.translation import gettext_lazy as _ -from wagtail import VERSION as WAGTAIL_VERSION from wagtail.contrib.modeladmin.options import ModelAdmin, modeladmin_register from wagtail.contrib.modeladmin.views import DeleteView, IndexView - -if WAGTAIL_VERSION >= (3, 0): - from wagtail.models import Page -else: - from wagtail.core.models import Page +from wagtail.models import Page from wagtail_personalisation.models import Segment from wagtail_personalisation.utils import can_delete_pages diff --git a/src/wagtail_personalisation/wagtail_hooks.py b/src/wagtail_personalisation/wagtail_hooks.py index 6eb861ab..8a0553d0 100644 --- a/src/wagtail_personalisation/wagtail_hooks.py +++ b/src/wagtail_personalisation/wagtail_hooks.py @@ -8,19 +8,12 @@ from django.urls import include, re_path, reverse from django.utils.safestring import mark_safe from django.utils.translation import gettext_lazy as _ -from wagtail import VERSION as WAGTAIL_VERSION - -if WAGTAIL_VERSION >= (3, 0): - from wagtail import hooks - from wagtail.models import Page -else: - from wagtail.core import hooks - from wagtail.core.models import Page - +from wagtail import hooks from wagtail.admin import messages from wagtail.admin.site_summary import PagesSummaryItem, SummaryItem from wagtail.admin.views.pages.utils import get_valid_next_url_from_request from wagtail.admin.widgets import Button, ButtonWithDropdownFromHook +from wagtail.models import Page from wagtail_personalisation import admin_urls, models, utils from wagtail_personalisation.adapters import get_segment_adapter @@ -132,14 +125,6 @@ def dont_show_variant(parent_page, pages, request): return utils.exclude_variants(pages) -if WAGTAIL_VERSION >= (4, 0): - # removed in Wagtail 4.0 - # https://docs.wagtail.org/en/stable/releases/4.0.html#is-parent-removed-from-page-button-hooks - is_parent = {} -else: - is_parent = {"is_parent": False} - - @hooks.register("register_page_listing_buttons") def page_listing_variant_buttons(page, page_perms, *args, **is_parent): """Adds page listing buttons to personalisable pages. Shows variants for @@ -151,27 +136,15 @@ def page_listing_variant_buttons(page, page_perms, *args, **is_parent): metadata = page.personalisation_metadata - if WAGTAIL_VERSION >= (4, 0): - if metadata.is_canonical: - yield ButtonWithDropdownFromHook( - _("Variants"), - hook_name="register_page_listing_variant_buttons", - page=page, - page_perms=page_perms, - attrs={"target": "_blank", "title": _("Create or edit a variant")}, - priority=100, - ) - else: - if metadata.is_canonical: - yield ButtonWithDropdownFromHook( - _("Variants"), - hook_name="register_page_listing_variant_buttons", - page=page, - page_perms=page_perms, - is_parent=is_parent, - attrs={"target": "_blank", "title": _("Create or edit a variant")}, - priority=100, - ) + if metadata.is_canonical: + yield ButtonWithDropdownFromHook( + _("Variants"), + hook_name="register_page_listing_variant_buttons", + page=page, + page_perms=page_perms, + attrs={"target": "_blank", "title": _("Create or edit a variant")}, + priority=100, + ) @hooks.register("register_page_listing_variant_buttons") @@ -230,19 +203,10 @@ def get_total_pages(self, context): return page_count - if WAGTAIL_VERSION >= (2, 15): - - def get_context_data(self, parent_context): - context = super().get_context_data(parent_context) - context["total_pages"] = self.get_total_pages(context) - return context - - else: - - def get_context(self): - context = super().get_context() - context["total_pages"] = self.get_total_pages(context) - return context + def get_context_data(self, parent_context): + context = super().get_context_data(parent_context) + context["total_pages"] = self.get_total_pages(context) + return context @hooks.register("construct_homepage_summary_items") @@ -265,25 +229,15 @@ def render_html(self, parent_context): segment_count = models.Segment.objects.count() target_url = reverse("wagtail_personalisation_segment_modeladmin_index") title = _("Segments") - if WAGTAIL_VERSION >= (4, 0): - return mark_safe( - """ -
  • - - {}{} -
  • """.format( - target_url, segment_count, title - ) - ) - else: - return mark_safe( - """ -
  • - {}{} -
  • """.format( - target_url, segment_count, title - ) + return mark_safe( + """ +
  • + + {}{} +
  • """.format( + target_url, segment_count, title ) + ) class PersonalisedPagesSummaryPanel(PagesSummaryItem): @@ -294,25 +248,15 @@ def render_html(self, parent_context): segment__isnull=True ).count() title = _("Personalised Page") - if WAGTAIL_VERSION >= (4, 0): - return mark_safe( - """ -
  • - - {}{}{} -
  • """.format( - page_count, title, pluralize(page_count) - ) - ) - else: - return mark_safe( - """ -
  • - {}{}{} -
  • """.format( - page_count, title, pluralize(page_count) - ) + return mark_safe( + """ +
  • + + {}{}{} +
  • """.format( + page_count, title, pluralize(page_count) ) + ) class VariantPagesSummaryPanel(PagesSummaryItem): @@ -323,26 +267,16 @@ def render_html(self, parent_context): segment__isnull=False ).count() title = _("Variant") - if WAGTAIL_VERSION >= (4, 0): - return mark_safe( - """ -
  • - - {}{}{} -
  • """.format( - page_count, title, pluralize(page_count) - ) - ) - else: - return mark_safe( - """ -
  • - {}{}{} -
  • """.format( - page_count, title, pluralize(page_count) - ) + return mark_safe( + """ +
  • + + {}{}{} +
  • """.format( + page_count, title, pluralize(page_count) ) + ) @hooks.register("construct_homepage_summary_items") diff --git a/tests/unit/test_models.py b/tests/unit/test_models.py index 94a6d0f7..ba7c28cc 100644 --- a/tests/unit/test_models.py +++ b/tests/unit/test_models.py @@ -2,7 +2,6 @@ import pytest from django.db.models import ProtectedError -from wagtail import VERSION as WAGTAIL_VERSION from tests.factories.page import ContentPageFactory from tests.factories.segment import SegmentFactory @@ -78,8 +77,5 @@ def test_sitemap_generation_for_variants_is_disabled(segmented_page): @pytest.mark.django_db def test_segment_edit_view(site, client, django_user_model): test_segment = SegmentFactory() - if WAGTAIL_VERSION >= (3, 0): - new_panel = test_segment.panels[1].children[0].bind_to_model(Segment) - else: - new_panel = test_segment.panels[1].children[0].bind_to(model=Segment) + new_panel = test_segment.panels[1].children[0].bind_to_model(Segment) assert new_panel.related.name == "wagtail_personalisation_timerules" diff --git a/tests/unit/test_wagtail_hooks.py b/tests/unit/test_wagtail_hooks.py index 41b26fbe..07de88c6 100644 --- a/tests/unit/test_wagtail_hooks.py +++ b/tests/unit/test_wagtail_hooks.py @@ -1,11 +1,6 @@ import pytest from django.http import Http404 -from wagtail import VERSION as WAGTAIL_VERSION - -if WAGTAIL_VERSION >= (3, 0): - from wagtail.models import Page -else: - from wagtail.core.models import Page +from wagtail.models import Page from tests.factories.page import ContentPageFactory from tests.factories.segment import SegmentFactory From 5ef0152a9c135625d50cc575cd06cd32ebf00422 Mon Sep 17 00:00:00 2001 From: Nick Moreton Date: Tue, 14 Feb 2023 10:04:23 +0000 Subject: [PATCH 06/13] Fix some older wagtail version deprecation warnings --- tests/conftest.py | 2 +- tests/factories/page.py | 14 +++++--------- tests/factories/site.py | 2 +- tests/settings.py | 8 +------- tests/site/pages/migrations/0001_initial.py | 4 ++-- tests/site/pages/migrations/0002_regularpage.py | 4 ++-- tests/site/pages/models.py | 6 +++--- tests/site/urls.py | 2 +- tests/unit/test_utils.py | 2 +- tests/unit/test_views.py | 2 +- 10 files changed, 18 insertions(+), 28 deletions(-) diff --git a/tests/conftest.py b/tests/conftest.py index 14a33526..8d1e59af 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -10,7 +10,7 @@ def enable_db_access(db): @pytest.fixture(scope="session") def django_db_setup(django_db_setup, django_db_blocker): - from wagtail.core.models import Page, Site + from wagtail.models import Page, Site with django_db_blocker.unblock(): # Remove some initial data that is brought by the tests.site module diff --git a/tests/factories/page.py b/tests/factories/page.py index 48c3afb3..ad039467 100644 --- a/tests/factories/page.py +++ b/tests/factories/page.py @@ -2,22 +2,18 @@ import factory from django.utils.text import slugify +from wagtail.models import Locale from wagtail_factories.factories import PageFactory from tests.site.pages import models from wagtail_personalisation.models import PersonalisablePageMetadata -try: - from wagtail.core.models import Locale - class LocaleFactory(factory.django.DjangoModelFactory): - language_code = "en" +class LocaleFactory(factory.django.DjangoModelFactory): + language_code = "en" - class Meta: - model = Locale - -except ImportError: - pass + class Meta: + model = Locale class ContentPageFactory(PageFactory): diff --git a/tests/factories/site.py b/tests/factories/site.py index fbeb923a..3409ef64 100644 --- a/tests/factories/site.py +++ b/tests/factories/site.py @@ -1,5 +1,5 @@ import factory -from wagtail.core.models import Site +from wagtail.models import Site from tests.factories.page import ContentPageFactory diff --git a/tests/settings.py b/tests/settings.py index c471b3e6..f6d342b3 100644 --- a/tests/settings.py +++ b/tests/settings.py @@ -1,5 +1,4 @@ import os -from importlib.util import find_spec DATABASES = { "default": { @@ -59,11 +58,6 @@ "django.middleware.clickjacking.XFrameOptionsMiddleware", ) -if find_spec("wagtail.contrib.legacy"): - MIDDLEWARE += ("wagtail.contrib.legacy.sitemiddleware.SiteMiddleware",) -else: - MIDDLEWARE += ("wagtail.core.middleware.SiteMiddleware",) - INSTALLED_APPS = ( "wagtail_personalisation", @@ -74,7 +68,7 @@ "wagtail.images", "wagtail.documents", "wagtail.admin", - "wagtail.core", + "wagtail", "taggit", "django.contrib.admin", "django.contrib.auth", diff --git a/tests/site/pages/migrations/0001_initial.py b/tests/site/pages/migrations/0001_initial.py index e0ae5671..a9d99261 100644 --- a/tests/site/pages/migrations/0001_initial.py +++ b/tests/site/pages/migrations/0001_initial.py @@ -3,8 +3,8 @@ from __future__ import unicode_literals import django.db.models.deletion -import wagtail.core.fields from django.db import migrations, models +from wagtail import fields import wagtail_personalisation.models @@ -32,7 +32,7 @@ class Migration(migrations.Migration): ), ), # noqa: E501 ("subtitle", models.CharField(blank=True, default="", max_length=255)), - ("body", wagtail.core.fields.RichTextField(blank=True, default="")), + ("body", fields.RichTextField(blank=True, default="")), ], options={ "abstract": False, diff --git a/tests/site/pages/migrations/0002_regularpage.py b/tests/site/pages/migrations/0002_regularpage.py index 61d4a50f..1609cc60 100644 --- a/tests/site/pages/migrations/0002_regularpage.py +++ b/tests/site/pages/migrations/0002_regularpage.py @@ -2,8 +2,8 @@ from __future__ import unicode_literals import django.db.models.deletion -import wagtail.core.fields from django.db import migrations, models +from wagtail import fields class Migration(migrations.Migration): @@ -28,7 +28,7 @@ class Migration(migrations.Migration): ), ), # noqa: E501 ("subtitle", models.CharField(blank=True, default="", max_length=255)), - ("body", wagtail.core.fields.RichTextField(blank=True, default="")), + ("body", fields.RichTextField(blank=True, default="")), ], options={ "abstract": False, diff --git a/tests/site/pages/models.py b/tests/site/pages/models.py index ecfa29d7..1c661abe 100644 --- a/tests/site/pages/models.py +++ b/tests/site/pages/models.py @@ -1,7 +1,7 @@ from django.db import models -from wagtail.admin.edit_handlers import FieldPanel -from wagtail.core.fields import RichTextField -from wagtail.core.models import Page +from wagtail.admin.panels import FieldPanel +from wagtail.fields import RichTextField +from wagtail.models import Page from wagtail_personalisation.models import PersonalisablePageMixin diff --git a/tests/site/urls.py b/tests/site/urls.py index 1a6cf5f9..afa697ba 100644 --- a/tests/site/urls.py +++ b/tests/site/urls.py @@ -2,8 +2,8 @@ from django.contrib import admin from django.urls import include, re_path +from wagtail import urls as wagtail_urls from wagtail.admin import urls as wagtailadmin_urls -from wagtail.core import urls as wagtail_urls from wagtail.documents import urls as wagtaildocs_urls urlpatterns = [ diff --git a/tests/unit/test_utils.py b/tests/unit/test_utils.py index 7b30eee4..12caf84f 100644 --- a/tests/unit/test_utils.py +++ b/tests/unit/test_utils.py @@ -1,6 +1,6 @@ import pytest from django.test import override_settings -from wagtail.core.models import Page as WagtailPage +from wagtail.models import Page as WagtailPage from tests.factories.page import ContentPageFactory, PersonalisablePageMetadataFactory from wagtail_personalisation.utils import ( diff --git a/tests/unit/test_views.py b/tests/unit/test_views.py index fa240d20..444b8e88 100644 --- a/tests/unit/test_views.py +++ b/tests/unit/test_views.py @@ -1,7 +1,7 @@ import pytest from django.core.exceptions import PermissionDenied from django.urls import reverse -from wagtail.core.models import Page +from wagtail.models import Page from wagtail_personalisation.models import Segment from wagtail_personalisation.rules import VisitCountRule From b2d67827fcc8a224a9b989e345a6f7ca2fc089b5 Mon Sep 17 00:00:00 2001 From: Nick Moreton Date: Tue, 14 Feb 2023 10:11:09 +0000 Subject: [PATCH 07/13] Update wagtail factories to 4.0.0 --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 90d5d4c8..ac5c97ad 100644 --- a/setup.py +++ b/setup.py @@ -21,7 +21,7 @@ "pytest-pythonpath==0.7.4", "pytest-sugar==0.9.4", "pytest==6.2.5", - "wagtail_factories==2.0.1", + "wagtail_factories==4.0.0", "pytest-mock==3.8.1", ] From 684704128d1324ed90c5648ee825f0f431853e9c Mon Sep 17 00:00:00 2001 From: Nick Moreton Date: Mon, 6 Mar 2023 13:01:44 +0000 Subject: [PATCH 08/13] revert the wagtail-font-awesome-svg dependency to wagtailfontawesome --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index ac5c97ad..0d656cae 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ install_requires = [ "wagtail>=4.1", "user-agents>=1.1.0", - "wagtail-font-awesome-svg>=0.0.3", + "wagtailfontawesome>=1.2.1", "pycountry", ] From 9acc9ef7b5a2b892124c6a9fec60cae68b85b1df Mon Sep 17 00:00:00 2001 From: Nick Moreton Date: Mon, 6 Mar 2023 13:02:19 +0000 Subject: [PATCH 09/13] Update django-debug-toolbar dependency to 3.8.1 --- sandbox/requirements.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sandbox/requirements.txt b/sandbox/requirements.txt index 011eb147..d4f0eece 100644 --- a/sandbox/requirements.txt +++ b/sandbox/requirements.txt @@ -1,4 +1,4 @@ Django>=3.2 wagtail>=4.1 -django-debug-toolbar==2.0 +django-debug-toolbar==3.8.1 -e .[docs,test] From 86f14afde99db1ae6555b5925aabc7107fff7bf3 Mon Sep 17 00:00:00 2001 From: Nick Moreton Date: Tue, 7 Mar 2023 14:41:18 +0000 Subject: [PATCH 10/13] Avoids the Configure the DEFAULT_AUTO_FIELD setting warning --- src/wagtail_personalisation/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/wagtail_personalisation/__init__.py b/src/wagtail_personalisation/__init__.py index 78fa773d..3c0c97d7 100644 --- a/src/wagtail_personalisation/__init__.py +++ b/src/wagtail_personalisation/__init__.py @@ -1 +1 @@ -# default_app_config = 'wagtail_personalisation.config.WagtailPersonalisationConfig' +default_app_config = 'wagtail_personalisation.config.WagtailPersonalisationConfig' From 54fe87bda8509c5835c7e120d4a74d92314f7e00 Mon Sep 17 00:00:00 2001 From: Nick Moreton Date: Tue, 7 Mar 2023 14:48:39 +0000 Subject: [PATCH 11/13] Update docs --- README.rst | 2 +- docs/getting_started/installation.rst | 2 +- docs/usage_guide/implementation.rst | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/README.rst b/README.rst index 9fb5dc2f..5e11c50f 100644 --- a/README.rst +++ b/README.rst @@ -37,7 +37,7 @@ in the admin interface. Instructions ------------ -Wagtail Personalisation requires Wagtail 2.0 or 2.1 and Django 1.11 or 2.0. +Wagtail Personalisation requires Wagtail 4.1+ and Django 3.2+ To install the package with pip: diff --git a/docs/getting_started/installation.rst b/docs/getting_started/installation.rst index baf08407..e5d37aad 100644 --- a/docs/getting_started/installation.rst +++ b/docs/getting_started/installation.rst @@ -1,7 +1,7 @@ Installing Wagxperience ======================= -Wagtail Personalisation requires Wagtail_ 2.0 or 2.1 and Django_ 1.11 or 2.0. +Wagtail Personalisation requires Wagtail_ 4.1+ and Django_ 3.2+ .. _Wagtail: https://github.com/wagtail/wagtail .. _Django: https://github.com/django/django diff --git a/docs/usage_guide/implementation.rst b/docs/usage_guide/implementation.rst index 3c6bad90..58e92f75 100644 --- a/docs/usage_guide/implementation.rst +++ b/docs/usage_guide/implementation.rst @@ -17,7 +17,7 @@ A very simple example for a personalisable homepage: .. code-block:: python - from wagtail.wagtailcore.models import Page + from wagtail.models import Page from wagtail_personalisation.models import PersonalisablePageMixin class HomePage(PersonalisablePageMixin, Page): From 1bcc1922ae1a0ee8fd2b8641e4e116dd2838e3c3 Mon Sep 17 00:00:00 2001 From: Nick Moreton Date: Wed, 8 Mar 2023 09:48:09 +0000 Subject: [PATCH 12/13] Linting --- src/wagtail_personalisation/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/wagtail_personalisation/__init__.py b/src/wagtail_personalisation/__init__.py index 3c0c97d7..9dd7e9c1 100644 --- a/src/wagtail_personalisation/__init__.py +++ b/src/wagtail_personalisation/__init__.py @@ -1 +1 @@ -default_app_config = 'wagtail_personalisation.config.WagtailPersonalisationConfig' +default_app_config = "wagtail_personalisation.config.WagtailPersonalisationConfig" From 859cce9acdd2af3259b0bd1fff439e78259c9814 Mon Sep 17 00:00:00 2001 From: Katherine Domingo Date: Tue, 13 Jun 2023 16:55:09 +0800 Subject: [PATCH 13/13] Updated tests to support Wagtail 5.0 --- .github/workflows/python-test.yml | 2 +- CHANGES | 6 ++++++ Makefile | 2 +- sandbox/sandbox/apps/search/views.py | 2 +- screenshot.png | Bin 100708 -> 114393 bytes tox.ini | 12 +++++------- 6 files changed, 14 insertions(+), 10 deletions(-) diff --git a/.github/workflows/python-test.yml b/.github/workflows/python-test.yml index 0c3b0317..3ca7d933 100644 --- a/.github/workflows/python-test.yml +++ b/.github/workflows/python-test.yml @@ -22,7 +22,7 @@ jobs: strategy: max-parallel: 5 matrix: - python: ["3.7", "3.8", "3.9", "3.10", "3.11"] + python: ["3.8", "3.9", "3.10", "3.11"] steps: - uses: actions/checkout@v3 diff --git a/CHANGES b/CHANGES index 0a097f74..b3ab01ce 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,9 @@ +Unreleased +================= +- Upgrade to Wagtail 5.0, drop support for Wagtail < 4.1 +- Add Django 4.2 support, drop support for Django 4.0 +- Add Python 3.11 support, drop support for Python 3.7 + 0.15.3 ================= - Add wagtail >= 2.15 support with get_context_data override instead of get_context diff --git a/Makefile b/Makefile index 7b282823..064847f5 100644 --- a/Makefile +++ b/Makefile @@ -35,7 +35,7 @@ flake8: isort: pip install isort - isort --recursive src tests + isort src tests dist: pip install wheel diff --git a/sandbox/sandbox/apps/search/views.py b/sandbox/sandbox/apps/search/views.py index 73b28498..54196040 100644 --- a/sandbox/sandbox/apps/search/views.py +++ b/sandbox/sandbox/apps/search/views.py @@ -4,7 +4,7 @@ from django.shortcuts import render from wagtail.models import Page -from wagtail.search.models import Query +from wagtail.contrib.search_promotions.models import Query def search(request): diff --git a/screenshot.png b/screenshot.png index e8200934e2d9e1480e15ba447ceb5736329f8975..0558f4b30eb84ba91e542edf9131df26b4f43e52 100644 GIT binary patch literal 114393 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≺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
    grYtJx7xAAsvvFsi-aZUBW%KhMY8^w?{Vun1oZ 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 diff --git a/tox.ini b/tox.ini index 05b097b6..f90491ee 100644 --- a/tox.ini +++ b/tox.ini @@ -1,13 +1,11 @@ [tox] envlist = flake8 - py{37}-dj{32}-wt{41,42} - py{38,39,310}-dj{32,40,41}-wt{41,42} - py{311}-dj{41}-wt{41,42} + py{38,39,310}-dj{32,41}-wt{41,42,50} + py{311}-dj{41,42}-wt{50} [gh-actions] python = - 3.7: py37 3.8: py38 3.9: py39 3.10: py310 @@ -15,7 +13,6 @@ python = [testenv] basepython = - py37: python3.7 py38: python3.8 py39: python3.9 py310: python3.10 @@ -24,10 +21,11 @@ commands = coverage run --parallel -m pytest -rs {posargs} extras = test deps = dj32: Django>=3.2,<3.3 - dj40: Django>=4.0,<4.1 dj41: Django>=4.1,<4.2 + dj42: Django>=4.2,<4.3 wt41: wagtail>=4.1,<4.2 wt42: wagtail>=4.2,<5.0 + wt50: wagtail>=5.0,<5.1 geoip2: geoip2 [testenv:coverage-report] @@ -43,7 +41,7 @@ basepython = python3.8 deps = flake8==3.5.0 commands = flake8 src tests setup.py - isort -q --recursive --diff src/ tests/ + isort --diff src/ tests/ [testenv:format] basepython = python3.8