- Support for custom base page models (Matt Westcott)
- Create a global registry for permission policies (Sage Abdullah)
- Add customizability for all remaining page views to
PageViewSet(Sage Abdullah) - Set
FieldPanel(required_on_save=True)forAbstractFormField'sfield_typefield (Alex Tomkins) - Handle pasting of multiple tags separated by newlines or commas (Matthias Brück)
- Make
Buttoncomponent render a<button>element when no URL is supplied (Nayeli De Jesus, LB (Ben Johnston), Sage Abdullah) - Show site name in site switcher dropdown in site settings editor (Jack Morgan)
- Improve clarity of different task states in workflow details dialog (Dan Braghis)
- Add
submenu_hookattribute toViewSetGroupfor collecting submenu items registered via a hook (Hunzlah Malik, MariyaOT, Sage Abdullah) - Respect
ViewSet.menu_orderwhen used in aViewSetGroup(Sage Abdullah) - Use a more accessible label for blank values of
ChoiceBlock(Sage Abdullah) - Use a more accessible label for blank values of dropdowns in locked page report filters (Sage Abdullah)
- Make audit log messages for scheduling/unscheduling generic (Sage Abdullah)
- Stop converting AVIF and WebP images to PNG by default (Thibaud Colas)
- Add rich text serializing to HTML support in the v2 API (Thibaud Colas)
- Expose the block
idas a template context variable when rendering children ofStreamBlockandListBlock(Sage Abdullah) - Add extension blocks for image and document stats in the edit view templates (Preeti Singh)
- Fix: Make
SnippetChooserViewSet.widget_classa class instead of an instance (Amrinder Singh, Sage Abdullah) - Fix: Prevent an error when approving a workflow that has been cancelled in a different session (Kailesh)
- Fix: Accommodate multilingual sites in skipping the "choose parent" step when creating a new page from a flat page listing (Amrinder Singh)
- Fix: Prevent error when moving a page to a destination with missing translations and
WAGTAILSIMPLETRANSLATION_SYNC_PAGE_TREE = True(Sahil Kumar) - Fix: Handle Pillow detecting decompression bombs when validating image pixel count (Jake Howard, Sage Abdullah)
- Fix: Use canonical URL for TED oEmbed provider (Marquis Nobles)
- Fix: Prevent icons from capturing clicks inside buttons (Maciek Baron)
- Fix: Prevent stale content types from breaking audit log message formatting (Thibaud Colas)
- Fix: Ensure form field clean_name is consistently set on form pages if autosave runs prematurely (Joey Jurjens)
- Fix: Enforce 'choose' permission on image chooser select-format view (Matt Westcott)
- Docs: Add reference documentation entry for
SnippetChooserViewSet(Sage Abdullah) - Docs: Fix panel classname and deprecated usage of
format_htmlinconstruct_homepage_panelsexample (Andreas Nüßlein) - Docs: Add docs for
request.in_preview_panelto explain its use (Raghad Dahi) - Docs: Update image format docs to encourage more intentional conversions (Thibaud Colas)
- Docs: Clarify Wagtail XSS protections for uploaded documents (Thibaud Colas)
- Maintenance: Provisional Django 6.1 support, pending a compatible django-ninja release
- Maintenance: Rename
requestargument tocache_objectinPage._get_site_root_paths()for correctness (Kailesh) - Maintenance: Fix blank choice tests for Django 6.1 (Sage Abdullah)
- Maintenance: Ignore
EMAIL_BACKENDsetting deprecation on Django 6.1 when running project template tests (Sage Abdullah) - Maintenance: Use uv with lockfile in CI configurations (Sage Abdullah)
- Maintenance: Add
oneandnotmatch support toRulesController(LB (Ben Johnston)) - Maintenance: Pin all GitHub Actions dependencies to specific versions (Thibaud Colas)
- Maintenance: Refactor pages' function-based views to class-based views (Sage Abdullah)
- Maintenance: Add renovate configuration to automate Python dependencies management (Sage Abdullah)
- Maintenance: Use Renovate to update GitHub Actions dependencies pins (Sage Abdullah)
- Maintenance: Enable flake8-bandit security-focused linting rules (Storm Heg)
- Maintenance: Add support for latest Azure SDK for frontend cache invalidation (Sage Abdullah)
- Maintenance: Update guide.wagtail.org links to new versioning scheme (Raghad Dahi)
- Maintenance: Format Python code in documentation using ruff (Thibaud Colas)