v5.0.0 release notes

5.0 is currently in beta. All features are complete except for the addition of Wagtail Block Previews (Wagtail 6.4), which may take extensive time to complete based on the large number of blocks provided by CRX.

New features

  • Support Wagtail 6.4.

  • Support Python 3.9 to 3.13.

  • NEW: SEO preview on each page. Read more on our blog post SEO Previews in Wagtail.

  • NEW: spam protection with Google reCAPTCHA v2 and v3 on forms. See: Spam Protection

Maintenance

  • wagtail_flexible_forms module has been split out into its own package. No action is required. See wagtail-flexible-forms.

  • Large cleanup of deprecated code. See upgrade considerations below.

Upgrade considerations

In addition to the changes below, be sure to read the Wagtail 6.4 upgrade considerations.

SEO fields have moved

Structured data about the organization was previously available on every page (under the SEO tab in the page editor). Now, organization data has been moved into the site settings under Settings > SEO.

For most sites, no action is required, as the organization data is automatically copied from each site’s Home Page to these settings.

However, if you were previously using custom organization data on many separate pages, you’ll need to follow the wagtail-seo 3 upgrade instructions

Preview options removed from Pages and Blocks

For most sites, no action is required as these have been deprecated and replaced by miniview templates back in version 2.1.

However, if you have any custom code using these deprecated fields or templates, replace them with custom miniview templates on relevant page models instead.

  • PagePreviewBlock fields removed:

    • show_previews

  • CoderedArticleIndexPage fields removed:

    • show_images

    • show_captions

    • show_meta

    • show_preview_text

  • Template options (in block Advanced Settings) have been removed from PageListBlock and PagePreviewBlock.

  • If you have CRX_FRONTEND_TEMPLATES_BLOCKS in your Django settings, remove the pagelistblock and pagepreviewblock entries from that dictionary.

  • Corresponding pagelist_*.html and pagepreview_*.html templates have been removed from the project.

Migrations

After upgrading, be sure to generate and apply new migrations as so:

python manage.py makemigrations
python manage.py migrate

Thank you!

Thanks to everyone who contributed to 5.0.0 on GitHub.