Skip to content

Releases: wagtail/wagtail

6.1rc1

18 Apr 16:58
Compare
Choose a tag to compare
6.1rc1 Pre-release
Pre-release
  • Refine wording of page & collection privacy using password is a shared password and should not be used for secure content (Rohit Sharma, Jake Howard)
  • Add RelatedObjectsColumn to the table UI framework (Matt Westcott)
  • Reduce memory usage when rebuilding search indexes (Jake Howard)
  • Support creating images in .ico format (Jake Howard)
  • Add the ability to disable the usage of a shared password for enhanced security for the private pages and collections (documents) feature (Salvo Polizzi, Jake Howard)
  • Add system checks to ensure that WAGTAIL_DATE_FORMAT, WAGTAIL_DATETIME_FORMAT, WAGTAIL_TIME_FORMAT are correctly configured (Rohit Sharma, Coen van der Kamp)
  • Allow custom permissions with the same prefix as built-in permissions (Sage Abdullah)
  • Allow displaying permissions linked to the Admin model's content type (Sage Abdullah)
  • Add support for Draftail's JavaScript to use chooserUrls provided by entity options & for the Draftail widget to encode lazy URLs/ translations (Elhussein Almasri)
  • Reimplement search promotions IndexView using the generic.IndexView (Rohit Sharma, Sage Abdullah, Storm Heg)
  • Reimplement redirects IndexView using the generic.IndexView (Rohit Sharma, Sage Abdullah, Temidayo Azeez)
  • Add PageListingViewSet for custom per-page-type page listings (Matt Westcott)
  • Add ChooseParentView to PageListingViewSet to allow creating pages from custom page listings (Abdelrahman Hamada, Sage Abdullah)
  • Implement new universal listings design for image listing view (Sage Abdullah)
  • Implement new universal listings design for document listing view (Sage Abdullah)
  • Implement new universal listings design for site and locale listing views (Sage Abdullah)
  • Implement new universal listings design for page and snippet history view (Sage Abdullah)
  • Implement new universal listings design for form builder submissions view (Sage Abdullah)
  • Implement new universal listings design for collections listing view (Sage Abdullah)
  • Implement new universal listings design for groups views (Sage Abdullah)
  • Implement new universal listings design for users views (Sage Abdullah)
  • Implement new universal listings design for workflow and task views (Sage Abdullah)
  • Refine slim header button style to match designs (Sage Abdullah)
  • Add simple admin keyboard shortcuts overview dialog, available in the help sub-menu (Karthik Ayangar, Rohit Sharma)
  • Add ability to bulk toggle permissions in the user group editing view, including shift+click for multiple selections (LB (Ben) Johnston, Kalob Taulien)
  • Update the minimum version of djangorestframework to 3.15.1 (Sage Abdullah)
  • Add support for related fields in generic IndexView.list_display (Abdelrahman Hamada)
  • Improve page fetching logic and cache route results per request (Gordon Pendleton)
  • Optimise rewriting of links / embeds in rich text using bulk database lookups (Andy Chosak)
  • Add normalization mechanism to StreamField so that assignments and defaults can be passed in a wider range of data types (Joshua Munn, Matt Westcott)
  • Allow specifying a STORAGES alias name for WAGTAILIMAGES_RENDITION_STORAGE (Alec Baron)
  • Update PASSWORD_REQUIRED_TEMPLATE setting to WAGTAIL_PASSWORD_REQUIRED_TEMPLATE with deprecation of previous naming (Saksham Misra, LB (Ben) Johnston)
  • Update DOCUMENT_PASSWORD_REQUIRED_TEMPLATE setting to WAGTAILDOCS_PASSWORD_REQUIRED_TEMPLATE with deprecation of previous naming (Saksham Misra, LB (Ben) Johnston)
  • When editing settings (contrib) use the same icon in the editing view that was declared when registering the setting (Vince Salvino, Rohit Sharma)
  • Populate django-treebeard cache during page routing to improve performance of get_parent (Nigel van Keulen)
  • Add a new user profile preference to configure user interface information density (Thibaud Colas)
  • Add additional field types to Elasticsearch mapping (scott-8)
  • Fix: Fix typo in __str__ for MySQL search index (Jake Howard)
  • Fix: Ensure that unit tests correctly check for migrations in all core Wagtail apps (Matt Westcott)
  • Fix: Correctly handle date objects on human_readable_date template tag (Jhonatan Lopes)
  • Fix: Ensure re-ordering buttons work correctly when using a nested InlinePanel (Adrien Hamraoui)
  • Fix: Consistently remove model's verbose_name in group edit view when listing custom permissions (Sage Abdullah, Neeraj Yetheendran, Omkar Jadhav)
  • Fix: Resolve issue local development of docs when running make livehtml (Sage Abdullah)
  • Fix: Resolve issue with unwanted padding in chooser modal listings (Sage Abdullah)
  • Fix: Ensure form builder emails that have date or datetime fields correctly localize dates based on the configured LANGUAGE_CODE (Mark Niehues)
  • Fix: Ensure the Stimulus UnsavedController checks for nested removal/additions of inputs so that the unsaved warning shows in more valid cases when editing a page (Karthik Ayangar)
  • Fix: Ensure get_add_url() is always used to re-render the add button when the listing is refreshed in viewsets (Sage Abdullah)
  • Fix: Ensure dropdown content cannot get higher than the viewport and add scrolling within content if needed (Chiemezuo Akujobi)
  • Fix: Prevent snippets model index view from crashing when a model does not have an objects manager (Jhonatan Lopes)
  • Fix: Fix get_dummy_request's resulting host name when running tests with ALLOWED_HOSTS = ["*"] (David Buxton)
  • Fix: Fix timezone handling in the timesince_last_update template tag (Matt Westcott)
  • Fix: Fix Postgres phrase search to respect the language set in settings (Ihar Marhitych)
  • Fix: Retain query parameters when switching between locales in the page chooser (Abdelrahman Hamada, Sage Abdullah)
  • Fix: Add w-kbd-scope-value with support for global so that specific keyboard shortcuts (e.g. ctrl+s/cmd+s) trigger consistently even when focused on fields (Neeraj Yetheendran)
  • Fix: Improve exception handling when generating image renditions concurrently (Andy Babic)
  • Fix: Respect WAGTAIL_ALLOW_UNICODE_SLUGS setting when auto-generating slugs (LB (Ben) Johnston)
  • Docs: Add contributing development documentation on how to work with a fork of Wagtail (Nix Asteri, Dan Braghis)
  • Docs: Make sure the settings panel is listed in tabbed interface examples (Tibor Leupold)
  • Docs: Update content and page names to their US spelling instead of UK spelling (Victoria Poromon)
  • Docs: Update broken and incorrect links throughout the documentation (EK303)
  • Docs: Fix formatting of --purge-only in wagtail_update_image_renditions management command section (Pranith Beeram)
  • Docs: Update template components documentation to better explain the usage of the Laces library (Tibor Leupold)
  • Docs: Update Sphinx theme to 6.3.0 with a fix for the missing favicon (Sage Abdullah)
  • Docs: Document risk of XSS attacks on document upload (Matt Westcott, with thanks to Georgios Roumeliotis of TwelveSec for the original report)
  • Docs: Add clarity to how custom StreamField validation works (Tibor Leupold)
  • Docs: Add additional reference to the wagtail_update_image_renditions management command on the using images page (LB (Ben) Johnston)
  • Docs: Correct information about line endings in Window development docs (Sage Abdullah)
  • Docs: Improve code snippets for "Create a footer for all pages" tutorial section (Drikus Roor)
  • Maintenance: Move RichText HTML whitelist parser to use the faster, built in html.parser (Jake Howard)
  • Maintenance: Remove duplicate 'path' in default_exclude_fields_in_copy (Ramchandra Shahi Thakuri)
  • Maintenance: Update unit tests to always use the faster, built in html.parser & remove html5lib dependency (Jake Howard)
  • Maintenance: Adjust Eslint rules for TypeScript files (Karthik Ayangar)
  • Maintenance: Rename the React Button that only renders links (a element) to Link and remove unused prop & behavior that was non-compliant for aria role usage (Advik Kabra)
  • Maintenance: Set up an wagtail.models.AbstractWorkflow model to support future customizations around workflows (Hossein)
  • Maintenance: Improve classnames template tag to handle nested lists of strings, use template tag for admin body element (LB (Ben) Johnston)
  • Maintenance: Merge UploadedDocument and UploadedImage into new UploadedFile model for easier shared code usage (Advik Kabra, Karl Hobley)
  • Maintenance: Optimize queries in dashboard panels (Sage Abdullah)
  • Maintenance: Optimize queries in group create/edit view (Sage Abdullah)
  • Maintenance: Move modal-workflow.js script usage to base admin template instead of ad-hoc imports (Elhussein Almasri)
  • Maintenance: Update all Draftail chooserUrls to be passed in via the Entity options instead of using window.chooserUrls globals, removing the need for inline scripts (Elhussein Almasri)
  • Maintenance: Enhance w-init (InitController) to support a detail value to be dispatched on events (Chiemezuo Akujobi)
  • Maintenance: Remove usage of inline scripts and instead use event dispatching to instantiate standalone Draftail editor instances (Chiemezuo Akujobi)
  • Maintenance: Refactor page_breadcrumbs tag to use shared breadcrumbs.html template (Sage Abdullah)
  • Maintenance: Add keyboard icon to admin icon set (Rohit Sharma)
  • Maintenance: Remove dead code in the minimap when elements are not found (LB (Ben) Johnston)
  • Maintenance: Ensure untrusted data sources are logged correctly in the Stimulus SwapController (LB (Ben) Johnston)
  • Maintenance: Update Wagtail logo in admin sidebar & favicon plus documentation to the latest version (Osaf AliSayed, Albina Starykova, LB (Ben) Johnston)
  • Maintenance: Remove usage of inline scripts and instead use a new Stimulus controller (w-block/BlockController) to instantiate StreamField blocks (Karthik Ayangar)
  • Mai...
Read more

6.0.2

03 Apr 22:00
Compare
Choose a tag to compare
  • Fix: Ensure that modal tabs width are not impacted by side panel opening (LB (Ben) Johnston)
  • Fix: Resolve issue local development of docs when running make livehtml (Sage Abdullah)
  • Fix: Resolve issue with unwanted padding in chooser modal listings (Sage Abdullah)
  • Fix: Ensure get_add_url() is always used to re-render the add button when the listing is refreshed in viewsets (Sage Abdullah)
  • Fix: Move modal-workflow.js script usage to base admin template instead of ad-hoc imports so that choosers work in ModelViewSets (Elhussein Almasri)
  • Fix: Ensure JavaScript for common widgets such as InlinePanel is included by default in ModelViewSet's create and edit views (Sage Abdullah)
  • Fix: Reinstate styles for customizations of extra_footer_actions block in page create/edit templates (LB (Ben) Johnston, Sage Abdullah)
  • Fix: Prevent crash when loading an empty table block in the editor (Sage Abdullah)
  • Docs: Update Sphinx theme to 6.3.0 with a fix for the missing favicon (Sage Abdullah)

5.2.4

03 Apr 21:33
Compare
Choose a tag to compare
  • Fix: Prevent TitleFieldPanel from raising an error when the slug field is missing or read-only (Rohit Sharma)
  • Fix: Fix pagination links on model history and usage views (Matt Westcott)
  • Fix: Fix crash when accessing workflow reports with a deleted snippet (Sage Abdullah)
  • Fix: Prevent error on submitting an empty search in the admin under Elasticsearch (Maikel Martens)

6.0.1

15 Feb 14:09
Compare
Choose a tag to compare
  • Fix: Ensure BooleanRadioSelect uses the same styles as RadioSelect (Thibaud Colas)
  • Fix: Prevent failure on collectstatic when ManifestStaticFilesStorage is in use (Matt Westcott)
  • Fix: Prevent error on submitting an empty search in the admin under Elasticsearch (Maikel Martens)

6.0

07 Feb 13:20
Compare
Choose a tag to compare
6.0

🎉 Special 10th anniversary release! 🎉

  • Added support for Django 5.0
  • Implemented universal listings – a unified listing and filtering interface for Pages, Snippets, Forms (Ben Enright, Matt Westcott, Thibaud Colas, Sage Abdullah)
  • Add the accessibility checker within the page and snippets editor (Thibaud Colas)
  • Added search_index option to StreamField blocks to control whether the block is indexed for searching (Vedant Pandey)
  • Remember previous location on returning from page add/edit actions (Robert Rollins)
  • Update settings file in project settings to address Django 4.2 deprecations (Sage Abdullah)
  • Improve layout and accessibility of the image URL generator page, reduce reliance on JavaScript (Temidayo Azeez)
  • Allow UniqueConstraint in place of unique_together for TranslatableMixin's system check (Temidayo Azeez, Sage Abdullah)
  • Make use of IndexView.get_add_url() in snippets index view template (Christer Jensen, Sage Abdullah)
  • Allow Page.permissions_for_user() to be overridden by specific page types (Sébastien Corbin)
  • Improve visual alignment of explore icon in Page listings for longer content (Krzysztof Jeziorny)
  • Add extra_actions blocks to Snippets and generic index templates (Bhuvnesh Sharma)
  • Added page types usage report (Jhonatan Lopes)
  • Add support for defining panels / edit_handler on ModelViewSet (Sage Abdullah)
  • Use a single instance of PagePermissionPolicy in wagtail.permissions module (Sage Abdullah)
  • Add max tag length validation for multiple uploads (documents/images) (Temidayo Azeez)
  • Ensure expanded side panel does not overlap form content for most viewports (Chiemezuo Akujobi)
  • Add ability to modify the default ordering for the page explorer view (Shlomo Markowitz)
  • Remove overly verbose image captions in image listings for screen readers (Sage Abdullah)
  • Ensure screen readers and dictation tools can more easily navigate bulk actions in images, documents and page listings by streamlining labels and descriptions (Sage Abdullah)
  • Remove support for Safari 14 (Thibaud Colas)
  • Add ability to click to copy the URL in the image URL generator page (Sai Srikar Dumpeti)
  • Add ability to filter by page type and date updated in the page listing view (Matt Westcott)
  • Add ability to filter by owner and site in the page listing view (Matt Westcott)
  • Improve right-to-left support by using flow-relative float styles (Thibaud Colas)
  • Improve right-to-left support by mirroring Wagtail icons as needed (Sage Abdullah)
  • Add support for mirroring third-party icons added in Wagtail (Sage Abdullah)
  • Show edit as a main action in generic history and usage views (Sage Abdullah)
  • Make styles for header buttons consistent (Sage Abdullah)
  • Improve styles of slim header's search and filters (Sage Abdullah)
  • Change page listing's add button to icon-only (Sage Abdullah)
  • Add sublabel to breadcrumbs, including history, usage, and inspect views (Sage Abdullah)
  • Standardise search form placeholder to 'Search…' (Sage Abdullah)
  • Use SlugInput on all SlugFields by default (LB (Ben) Johnston)
  • Show character counts on RichTextBlock with max_length (Elhussein Almasri)
  • Move locale selector in generic IndexView to a filter (Sage Abdullah)
  • Add ability to customise a page's copy form (Neeraj Yetheendran)
  • Add optional caption field to TypedTableBlock (Tommaso Amici, Cynthia Kiser)
  • Switch the TableBlock header controls to a field that requires user input (Bhuvnesh Sharma, Aman Pandey, Cynthia Kiser)
  • Add WAGTAILADMIN_LOGIN_URL setting to allow customising the login URL (Neeraj Yetheendran)
  • Replace legacy dropdown component with new Tippy dropdown-button (Thibaud Colas)
  • Add ability to filter by existence of child pages in the page listing view (Matt Westcott)
  • Polish dark theme styles and update color tokens (Thibaud Colas, Rohit Sharma)
  • Keep database state of pages and snippets updated while in draft state (Stefan Hammer)
  • Add DrilldownController and w-drilldown component to support drilldown menus (Thibaud Colas)
  • Add support for caption on admin UI Table component (Aman Pandey)
  • Add API support for a redirects (contrib) endpoint (Rohit Sharma, Jaap Roes, Andreas Donig)
  • Add the default ability for all SnippetViewSet & ModelViewSet to support being copied (Shlomo Markowitz)
  • Support dynamic Wagtail guide links in the admin that are based on the running version of Wagtail (Tidiane Dia)
  • Fix: Update system check for overwriting storage backends to recognise the STORAGES setting introduced in Django 4.2 (phijma-leukeleu)
  • Fix: Prevent password change form from raising a validation error when browser autocomplete fills in the "Old password" field (Chiemezuo Akujobi)
  • Fix: Ensure that the legacy dropdown options, when closed, do not get accidentally clicked by other interactions on wide viewports (CheesyPhoenix, Christer Jensen)
  • Fix: Add a fallback background for the editing preview iframe for sites without a background (Ian Price)
  • Fix: Preserve whitespace in rendered comments (Elhussein Almasri)
  • Fix: Remove search logging from project template so that new projects without the search promotions module will not error (Matt Westcott)
  • Fix: Ensure text only email notifications for updated comments do not escape HTML characters (Rohit Sharma)
  • Fix: Use the latest draft when copying an unpublished page for translation (Andrey Nehaychik)
  • Fix: Make Workflow and Aging Pages reports only available to users with page-related permissions (Rohit Sharma)
  • Fix: Make searching on specific fields work correctly on Elasticsearch when boost is in use (Matt Westcott)
  • Fix: Use a visible border and background color to highlight active formatting in the rich text toolbar (Cassidy Pittman)
  • Fix: Ensure image focal point box can be removed (Gunnar Scherf)
  • Fix: Ensure that Snippets search results correctly use the index_results.html or index_results_template_name override on initial load (Stefan Hammer)
  • Fix: Avoid error when attempting to moderate a page drafted by a now deleted user (Dan Braghis)
  • Fix: Do not show multiple error messages when editing a Site to use existing hostname and port (Rohit Sharma)
  • Fix: Avoid error when exporting Aging Pages report where a page has an empty last_published_by_user (Chiemezuo Akujobi)
  • Fix: Ensure Page querysets support using alias and specific (Tomasz Knapik)
  • Fix: Ensure workflow dashboard panels work when the page/snippet is missing (Sage Abdullah)
  • Fix: Ensure ActionController explicitly checks for elements that allow select functionality (Nandini Arora)
  • Fix: Prevent a ValueError with FormSubmissionsPanel on Django 5.0 when creating a new form page (Matt Westcott)
  • Fix: Avoid duplicate entries in "Recent edits" panel when copying pages (Matt Westcott)
  • Fix: Prevent TitleFieldPanel from raising an error when the slug field is missing or read-only (Rohit Sharma)
  • Fix: Ensure that the close button on the new dialog designs is visible in the non-message variant (Nandini Arora)
  • Fix: Ensure the sidebar account toggle has no duplicate accessible labels (Nandini Arora)
  • Fix: Avoid text overflow issues in comment replies and scroll position issues for long comments (Rohit Sharma)
  • Fix: Ensure that page listing re-ordering messages and accessible labels can be translated (Aman Pandey, LB (Ben) Johnston)
  • Fix: Resolve multiple issues with page listing re-ordering using keyboard and screen readers (Aman Pandey)
  • Fix: Remove 'Page' from page types filter on aging pages report (Matt Westcott)
  • Fix: Prevent page types filter from showing other non-Page models that match by name (Matt Westcott)
  • Fix: Ensure MultipleChooserPanel modal works correctly when USE_THOUSAND_SEPARATOR is True for pages with ids over 1,000 (Sankalp, Rohit Sharma)
  • Fix: When using an empty table header (th) for visual spacing, ensure this is ignored by accessibility tooling (V Rohitansh)
  • Fix: Ensure the panel anchor button sizes meet accessibility guidelines for minimum dimensions (Nandini Arora)
  • Fix: Raise a 404 for bulk actions for models which don't exist instead of throwing a 500 error (Alex Tomkins)
  • Fix: Raise a SiteSetting.DoesNotExist error when retrieving settings for an unrecognised site (Nick Smith)
  • Fix: Ensure that defaulted or unique values declared in exclude_fields_in_copy are correctly excluded in new copies, resolving to the default value (Elhussein Almasri)
  • Fix: Ensure that default_ordering set on IndexView is preserved if ModelViewSet does not specify an explicit ordering (Cynthia Kiser)
  • Fix: Ensure that TableBlock cells are accessible when using keyboard control only (Elhussein Almasri)
  • Fix: Resolve issue where clicking Publish for a Page that was in workflow in Safari would block publishing and not trigger the workflow confirmation modal (Alex Morega)
  • Fix: Fix pagination links on model history and usage views (Matt Westcott)
  • Fix: Fix crash when accessing workflow reports with a deleted snippet (Sage Abdullah)
  • Docs: New developer tutorial (Damilola Oladele, Meagen Voss, Thibaud Colas)
  • Docs: Document, for contributors, the use of translate string literals passed as arguments to tags and filters using _() within templates (Chiemezuo Akujobi)
  • Docs: Document all features for the Documents app in one location (Neeraj Yetheendran)
  • Docs: Add section to testing docs about creating pages and working with page content (Mariana Bedran Lesche)
  • Docs: Add more nuance to the database recommendations in performance page (Jadesola Kareem)
  • Docs: Add clarity that MultipleChooserPanel may require a chooser viewset and how the functionality is expected to work (Andy Chosak)
  • Docs: Clarify where documentation build commands should be run (Nikhil S Kalburgi)
  • Doc...
Read more

6.0rc1

24 Jan 14:54
Compare
Choose a tag to compare
6.0rc1 Pre-release
Pre-release
  • Added support for Django 5.0
  • Implemented universal listings – a unified listing and filtering interface for Pages, Snippets, Forms (Ben Enright, Matt Westcott, Thibaud Colas, Sage Abdullah)
  • Add the accessibility checker within the page and snippets editor (Thibaud Colas)
  • Added search_index option to StreamField blocks to control whether the block is indexed for searching (Vedant Pandey)
  • Remember previous location on returning from page add/edit actions (Robert Rollins)
  • Update settings file in project settings to address Django 4.2 deprecations (Sage Abdullah)
  • Improve layout and accessibility of the image URL generator page, reduce reliance on JavaScript (Temidayo Azeez)
  • Allow UniqueConstraint in place of unique_together for TranslatableMixin's system check (Temidayo Azeez, Sage Abdullah)
  • Make use of IndexView.get_add_url() in snippets index view template (Christer Jensen, Sage Abdullah)
  • Allow Page.permissions_for_user() to be overridden by specific page types (Sébastien Corbin)
  • Improve visual alignment of explore icon in Page listings for longer content (Krzysztof Jeziorny)
  • Add extra_actions blocks to Snippets and generic index templates (Bhuvnesh Sharma)
  • Added page types usage report (Jhonatan Lopes)
  • Add support for defining panels / edit_handler on ModelViewSet (Sage Abdullah)
  • Use a single instance of PagePermissionPolicy in wagtail.permissions module (Sage Abdullah)
  • Add max tag length validation for multiple uploads (documents/images) (Temidayo Azeez)
  • Ensure expanded side panel does not overlap form content for most viewports (Chiemezuo Akujobi)
  • Add ability to modify the default ordering for the page explorer view (Shlomo Markowitz)
  • Remove overly verbose image captions in image listings for screen readers (Sage Abdullah)
  • Ensure screen readers and dictation tools can more easily navigate bulk actions in images, documents and page listings by streamlining labels and descriptions (Sage Abdullah)
  • Remove support for Safari 14 (Thibaud Colas)
  • Add ability to click to copy the URL in the image URL generator page (Sai Srikar Dumpeti)
  • Add ability to filter by page type and date updated in the page listing view (Matt Westcott)
  • Add ability to filter by owner and site in the page listing view (Matt Westcott)
  • Improve right-to-left support by using flow-relative float styles (Thibaud Colas)
  • Improve right-to-left support by mirroring Wagtail icons as needed (Sage Abdullah)
  • Add support for mirroring third-party icons added in Wagtail (Sage Abdullah)
  • Show edit as a main action in generic history and usage views (Sage Abdullah)
  • Make styles for header buttons consistent (Sage Abdullah)
  • Improve styles of slim header's search and filters (Sage Abdullah)
  • Change page listing's add button to icon-only (Sage Abdullah)
  • Add sublabel to breadcrumbs, including history, usage, and inspect views (Sage Abdullah)
  • Standardise search form placeholder to 'Search…' (Sage Abdullah)
  • Use SlugInput on all SlugFields by default (LB (Ben) Johnston)
  • Show character counts on RichTextBlock with max_length (Elhussein Almasri)
  • Move locale selector in generic IndexView to a filter (Sage Abdullah)
  • Add ability to customise a page's copy form (Neeraj Yetheendran)
  • Add optional caption field to TypedTableBlock (Tommaso Amici, Cynthia Kiser)
  • Switch the TableBlock header controls to a field that requires user input (Bhuvnesh Sharma, Aman Pandey, Cynthia Kiser)
  • Add WAGTAILADMIN_LOGIN_URL setting to allow customising the login URL (Neeraj Yetheendran)
  • Replace legacy dropdown component with new Tippy dropdown-button (Thibaud Colas)
  • Add ability to filter by existence of child pages in the page listing view (Matt Westcott)
  • Polish dark theme styles and update color tokens (Thibaud Colas, Rohit Sharma)
  • Keep database state of pages and snippets updated while in draft state (Stefan Hammer)
  • Add DrilldownController and w-drilldown component to support drilldown menus (Thibaud Colas)
  • Add support for caption on admin UI Table component (Aman Pandey)
  • Add API support for a redirects (contrib) endpoint (Rohit Sharma, Jaap Roes, Andreas Donig)
  • Add the default ability for all SnippetViewSet & ModelViewSet to support being copied (Shlomo Markowitz)
  • Support dynamic Wagtail guide links in the admin that are based on the running version of Wagtail (Tidiane Dia)
  • Fix: Update system check for overwriting storage backends to recognise the STORAGES setting introduced in Django 4.2 (phijma-leukeleu)
  • Fix: Prevent password change form from raising a validation error when browser autocomplete fills in the "Old password" field (Chiemezuo Akujobi)
  • Fix: Ensure that the legacy dropdown options, when closed, do not get accidentally clicked by other interactions wide viewports (CheesyPhoenix, Christer Jensen)
  • Fix: Add a fallback background for the editing preview iframe for sites without a background (Ian Price)
  • Fix: Preserve whitespace in rendered comments (Elhussein Almasri)
  • Fix: Remove search logging from project template so that new projects without the search promotions module will not error (Matt Westcott)
  • Fix: Ensure text only email notifications for updated comments do not escape HTML characters (Rohit Sharma)
  • Fix: Use the latest draft when copying an unpublished page for translation (Andrey Nehaychik)
  • Fix: Make Workflow and Aging Pages reports only available to users with page-related permissions (Rohit Sharma)
  • Fix: Make searching on specific fields work correctly on Elasticsearch when boost is in use (Matt Westcott)
  • Fix: Use a visible border and background color to highlight active formatting in the rich text toolbar (Cassidy Pittman)
  • Fix: Ensure image focal point box can be removed (Gunnar Scherf)
  • Fix: Ensure that Snippets search results correctly use the index_results.html or index_results_template_name override on initial load (Stefan Hammer)
  • Fix: Avoid error when attempting to moderate a page drafted by a now deleted user (Dan Braghis)
  • Fix: Do not show multiple error messages when editing a Site to use existing hostname and port (Rohit Sharma)
  • Fix: Avoid error when exporting Aging Pages report where a page has an empty last_published_by_user (Chiemezuo Akujobi)
  • Fix: Ensure Page querysets support using alias and specific (Tomasz Knapik)
  • Fix: Ensure workflow dashboard panels work when the page/snippet is missing (Sage Abdullah)
  • Fix: Ensure ActionController explicitly checks for elements that allow select functionality (Nandini Arora)
  • Fix: Prevent a ValueError with FormSubmissionsPanel on Django 5.0 when creating a new form page (Matt Westcott)
  • Fix: Avoid duplicate entries in "Recent edits" panel when copying pages (Matt Westcott)
  • Fix: Prevent TitleFieldPanel from raising an error when the slug field is missing or read-only (Rohit Sharma)
  • Fix: Ensure that the close button on the new dialog designs is visible in the non-message variant (Nandini Arora)
  • Fix: Ensure the sidebar account toggle has no duplicate accessible labels (Nandini Arora)
  • Fix: Avoid text overflow issues in comment replies and scroll position issues for long comments (Rohit Sharma)
  • Fix: Ensure that page listing re-ordering messages and accessible labels can be translated (Aman Pandey, LB (Ben) Johnston)
  • Fix: Resolve multiple issues with page listing re-ordering using keyboard and screen readers (Aman Pandey)
  • Fix: Remove 'Page' from page types filter on aging pages report (Matt Westcott)
  • Fix: Prevent page types filter from showing other non-Page models that match by name (Matt Westcott)
  • Fix: Ensure MultipleChooserPanel modal works correctly when USE_THOUSAND_SEPARATOR is True for pages with ids over 1,000 (Sankalp, Rohit Sharma)
  • Fix: When using an empty table header (th) for visual spacing, ensure this is ignored by accessibility tooling (V Rohitansh)
  • Fix: Ensure the panel anchor button sizes meet accessibility guidelines for minimum dimensions (Nandini Arora)
  • Fix: Raise a 404 for bulk actions for models which don't exist instead of throwing a 500 error (Alex Tomkins)
  • Fix: Raise a SiteSetting.DoesNotExist error when retrieving settings for an unrecognised site (Nick Smith)
  • Fix: Ensure that defaulted or unique values declared in exclude_fields_in_copy are correctly excluded in new copies, resolving to the default value (Elhussein Almasri)
  • Fix: Ensure that default_ordering set on IndexView is preserved if ModelViewSet does not specify an explicit ordering (Cynthia Kiser)
  • Fix: Ensure that TableBlock cells are accessible when using keyboard control only (Elhussein Almasri)
  • Fix: Resolve issue where clicking Publish for a Page that was in workflow in Safari would block publishing and not trigger the workflow confirmation modal (Alex Morega)
  • Docs: New developer tutorial (Damilola Oladele, Meagen Voss, Thibaud Colas)
  • Docs: Document, for contributors, the use of translate string literals passed as arguments to tags and filters using _() within templates (Chiemezuo Akujobi)
  • Docs: Document all features for the Documents app in one location (Neeraj Yetheendran)
  • Docs: Add section to testing docs about creating pages and working with page content (Mariana Bedran Lesche)
  • Docs: Add more nuance to the database recommendations in performance page (Jadesola Kareem)
  • Docs: Add clarity that MultipleChooserPanel may require a chooser viewset and how the functionality is expected to work (Andy Chosak)
  • Docs: Clarify where documentation build commands should be run (Nikhil S Kalburgi)
  • Docs: Add missing import to tutorial BlogPage example (Salvo Polizzi)
  • Docs: Update contributing guide documentation and GitHub templates to better support new contributors (Thibaud Colas)
  • Docs: Add more CSS auth...
Read more

5.2.3

23 Jan 15:44
Compare
Choose a tag to compare
  • Fix: Prevent a ValueError with FormSubmissionsPanel on Django 5.0 when creating a new form page (Matt Westcott)
  • Fix: Specify telepath 0.3.1 as the minimum supported version, for Django 5.0 compatibility (Matt Westcott)

5.2.2

06 Dec 17:18
a44e442
Compare
Choose a tag to compare
  • Added support for Django 5.0
  • Fix: Use a visible border and background color to highlight active formatting in the rich text toolbar (Cassidy Pittman)
  • Fix: Ensure image focal point box can be removed (Gunnar Scherf)
  • Fix: Ensure that Snippets search results correctly use the index_results.html or index_results_template_name override on initial load (Stefan Hammer)
  • Fix: Avoid error when attempting to moderate a page drafted by a now deleted user (Dan Braghis)
  • Fix: Ensure workflow dashboard panels work when the page/snippet is missing (Sage Abdullah)
  • Fix: Prevent custom controls from stacking on top of the comment button in Draftail toolbar (Ben Morse)
  • Fix: Avoid error when exporting Aging Pages report where a page has an empty last_published_by_user (Chiemezuo Akujobi)

5.2.1

16 Nov 14:51
Compare
Choose a tag to compare
  • Fix: Add a fallback background for the editing preview iframe for sites without a background (Ian Price)
  • Fix: Remove search logging from project template so that new projects without the search promotions module will not error (Matt Westcott)
  • Fix: Ensure text only email notifications for updated comments do not escape HTML characters (Rohit Sharma)
  • Fix: Use logical OR operator to combine search fields for Django ORM in generic IndexView (Varun Kumar)
  • Fix: Ensure that explorer_results views fill in the correct next_url parameter on action URLs (Matt Westcott)
  • Fix: Fix crash when accessing the history view for a translatable snippet (Sage Abdullah)
  • Fix: Prevent upload of SVG images from failing when image feature detection is enabled (Joshua Munn)
  • Fix: Fix crash when using the locale switcher on the snippets create view (Sage Abdullah)
  • Fix: Fix performance regression on reports from calling decorate_paginated_queryset before pagination / filtering (Alex Tomkins)
  • Fix: Make searching on specific fields work correctly on Elasticsearch when boost is in use (Matt Westcott)
  • Fix: Prevent snippet permission post-migrate hook from failing on multiple database configurations (Joe Tsoi)
  • Fix: Reinstate ability to filter on page type when searching on an empty query (Sage Abdullah)
  • Fix: Prevent error on locked pages report when a user has locked multiple pages (Matt Westcott)
  • Docs: Fix code example for {% picture ... as ... %} template tag (Rezyapkin)

5.2 (LTS)

01 Nov 12:34
Compare
Choose a tag to compare
  • Redesigned page listing view (Ben Enright, Matt Westcott, Thibaud Colas, Sage Abdullah)
  • Support OpenSearch as an alternative to Elasticsearch (Matt Westcott)
  • Add support for Python 3.12 (Matt Westcott)
  • Add preview-aware and page-aware fragment caching template tags, wagtailcache & wagtailpagecache (Jake Howard)
  • Always set help text element ID for form fields with help text in field.html template (Sage Abdullah)
  • Move SnippetViewSet menu registration mechanism to base ViewSet class (Sage Abdullah)
  • Enable reference index tracking for models registered with ModelViewSet (Sage Abdullah)
  • When copying a page or creating an alias, copy its view restrictions to the destination (Sandeep Choudhary, Suyash Singh)
  • Support pickling of StreamField values (pySilver)
  • Move SnippetViewSet template override mechanism to ModelViewSet (Sage Abdullah)
  • Move SnippetViewSet.list_display to ModelViewSet (Sage Abdullah)
  • Remove wagtail.publish log action on aliases when they are created from live source pages or the source page is published (Dan Braghis)
  • Remove wagtail.unpublish log action on aliases when source page is unpublished (Dan Braghis)
  • Add compare buttons to workflow dashboard panel (Matt Westcott)
  • Add the ability to use filters and to export listings in generic IndexView (Sage Abdullah)
  • Move list_filter, filterset_class, search_fields, search_backend_name, list_export, export_filename, list_per_page, and ordering from SnippetViewSet to ModelViewSet (Sage Abdullah, Cynthia Kiser)
  • Add default header titles to generic IndexView and CreateView (Sage Abdullah)
  • Allow overriding IndexView.export_headings via ModelViewSet (Christer Jensen, Sage Abdullah)
  • Support specifying a get_object_list method on ChooserViewSet (Matt Westcott)
  • Add linked_fields mechanism on chooser widgets to allow choices to be limited by fields on the calling page (Matt Westcott)
  • Add support for merging cells within TableBlock with the mergedCells option (Gareth Palmer)
  • When adding a panel within InlinePanel, focus will now shift to that content similar to StreamField (Faishal Manzar)
  • Show the full first published at date within a tooltip on the Page status sidebar on the relative date (Rohit Sharma)
  • Extract generic breadcrumbs functionality from page breadcrumbs (Sage Abdullah)
  • Add support for placement in the human_readable_date tooltip template tag (Rohit Sharma)
  • Add breadcrumbs support to custom ModelViewSet views (Sage Abdullah)
  • Support passing extra context variables via the {% component %} tag (Matt Westcott)
  • Allow subclasses of PagesAPIViewSet override default Page model via the model attribute (Neeraj Yetheendran, Herbert Poul)
  • Allow ModelViewSet to be used with models that have non-integer primary keys (Sage Abdullah)
  • Add the ability to set an external link/text for promoted search result entries (TopDevPros, Brad Busenius)
  • Add support for subject and body in the Email link chooser form (TopDevPros, Alexandre Joly)
  • Extract generic HistoryView from snippets and add it to ModelViewSet (Sage Abdullah)
  • Add generic UsageView to ModelViewSet (Sage Abdullah)
  • Add the ability to define listing buttons on generic IndexView (Sage Abdullah)
  • Add a visual progress bar to the output of the wagtail_update_image_renditions management command (Faishal Manzar)
  • Increase the read buffer size to improve efficiency and performance when generating file hashes for document or image uploads, use hashlib.file_digest if available (Python 3.11+) (Jake Howard)
  • API ordering now supports multiple fields (Rohit Sharma, Jake Howard)
  • Pass block value to Block.get_template to allow varying template based on value (Florian Delizy)
  • Add InlinePanel DOM events for when ready and when items added or removed (Faishal Manzar)
  • Add a new picture template tag for Django Templates and Jinja (Thibaud Colas)
  • Add a new srcset_image template tag for Django Templates and Jinja (Thibaud Colas)
  • Support Filter instances as input for AbstractImage.get_renditions() (Thibaud Colas)
  • Improve error messages for image template tags (Thibaud Colas)
  • Do not render minimap if there are no panel anchors (Sage Abdullah)
  • Use dropdown buttons on listings in dashboard panels (Sage Abdullah)
  • Implement breadcrumbs design refinements (Thibaud Colas)
  • Support extending Wagtail client-side with Stimulus (LB (Ben) Johnston)
  • Update all FieldPanel('title') examples to use the recommended TitleFieldPanel('title') panel (Chinedu Ihedioha)
  • The purge_revisions management command now respects revisions that have a on_delete=PROTECT foreign key relation and won't delete them (Neeraj P Yetheendran, Meghana Reddy, Sage Abdullah, Storm Heg)
  • Add support for Shift + Click behaviour in form submissions and simple translations submissions (LB (Ben) Johnston)
  • Improve filtering of audit logging based on the user's permissions (Stefan Hammer)
  • Fix: Ensure that StreamField's FieldBlocks correctly set the required and aria-describedby attributes (Storm Heg)
  • Fix: Avoid an error when the moderation panel (admin dashboard) contains both snippets and private pages (Matt Westcott)
  • Fix: When deleting collections, ensure the collection name is correctly shown in the success message (LB (Ben) Johnston)
  • Fix: Filter out comments on Page editing counts that do not correspond to a valid field / block path on the page such as when a field has been removed (Matt Westcott)
  • Fix: Allow PublishMenuItem to more easily support overriding its label via construct_page_action_menu (Sébastien Corbin)
  • Fix: Allow locale selection when creating a page at the root level (Sage Abdullah)
  • Fix: Ensure the admin login template correctly displays all non_fields_errors for any custom form validation (Sébastien Corbin)
  • Fix: Ensure 'mark as active' label in workflow bulk action set active form can be translated (Rohit Sharma)
  • Fix: Ensure the panel title for a user's settings correctly reflects the WAGTAIL_EMAIL_MANAGEMENT_ENABLED setting by not showing 'email' if disabled (Omkar Jadhav)
  • Fix: Update Spotify oEmbed provider URL parsing to resolve correctly (Dhrűv)
  • Fix: Update link colours within help blocks to meet accessible contrast requirements (Rohit Sharma)
  • Fix: Ensure the search promotions popular search terms picker correctly refers to the correct model (LB (Ben) Johnston)
  • Fix: Correctly quote non-numeric primary keys on snippet inspect view (Sage Abdullah)
  • Fix: Prevent crash on snippet inspect view when displaying a null foreign key to an image (Sage Abdullah)
  • Fix: Ensure that pages in moderation show as "Live + In Moderation" in the page explorer rather than "Live + Draft" (Sage Abdullah)
  • Fix: Prevent error when updating reference index for objects with a lazy ParentalKey-related object (Chris Shaw)
  • Fix: Ignore conflicts when inserting reference index entries to prevent race conditions causing uniqueness errors (Chris Shaw)
  • Fix: Populate the correct return value when creating a new snippet within the snippet chooser (claudobahn)
  • Fix: Reinstate missing filter by page type on page search (Matt Westcott)
  • Fix: Ensure very long words can wrap when viewing saved comments (Chiemezuo Akujobi)
  • Fix: Avoid forgotten password link text conflicting with the supplied aria-label (Thibaud Colas)
  • Fix: Fix log message to record the correct restriction type when removing a page view restriction (Rohit Sharma, Hazh. M. Adam)
  • Fix: Avoid potential race condition with new Page subscriptions on the edit view (Alex Tomkins)
  • Fix: Use the correct action log when creating a redirect (Thibaud Colas)
  • Fix: Ensure that all password fields consistently allow leading & trailing whitespace (Neeraj P Yetheendran)
  • Docs: Expand documentation on using ViewSet and ModelViewSet (Sage Abdullah)
  • Docs: Document WAGTAILADMIN_BASE_URL on "Integrating Wagtail into a Django project" page (Shreshth Srivastava)
  • Docs: Replace incorrect screenshot for authors listing on tutorial (Shreshth Srivastava)
  • Docs: Add documentation for building non-model-based choosers using the queryish library (Matt Westcott)
  • Docs: Fix incorrect tag library import on focal points example (Hatim Makki Hoho)
  • Docs: Add reminder about including your custom Draftail feature in any overridden WAGTAILADMIN_RICH_TEXT_EDITORS setting (Charlie Sue)
  • Docs: Mention the need to install python3-venv on Ubuntu (Brian Mugo)
  • Docs: Document the use of the Google developer documentation style guide in documentation (Damilola Oladele)
  • Docs: Fix Inconsistent URL Format in Getting Started tutorial (Olumide Micheal)
  • Maintenance: Fix snippet search test to work on non-fallback database backends (Matt Westcott)
  • Maintenance: Update Eslint, Prettier, Jest, a11y-dialog, axe-core and js-cookie npm packages (LB (Ben) Johnston)
  • Maintenance: Add npm scripts for TypeScript checks and formatting SCSS files (LB (Ben) Johnston)
  • Maintenance: Run tests in parallel in some of the CI setup (Sage Abdullah)
  • Maintenance: Remove unused WorkflowStatus view, urlpattern, and workflow-status.js (Storm Heg)
  • Maintenance: Add support for options/attrs in Telepath widgets so that attrs render on the created DOM (Storm Heg)
  • Maintenance: Update pre-commit hooks to be in sync with latest changes to Eslint & Prettier for client-side changes (Storm Heg)
  • Maintenance: Add WagtailTestUtils.get_soup() method for testing HTML content (Storm Heg, Sage Abdullah)
  • Maintenance: Allow ViewSet subclasses to customise url_prefix and url_namespace logic (Matt Westcott)
  • Maintenance: Simplify SnippetViewSet registration code (Sage Abdullah)
  • Maintenance: Rename groups `IndexView.results_template_na...
Read more