0
0
mirror of https://github.com/wagtail/wagtail.git synced 2024-11-29 17:36:49 +01:00
wagtail/docs/releases/4.1.md
2022-09-29 11:55:28 +01:00

6.4 KiB

Wagtail 4.1 release notes - IN DEVELOPMENT

---
local:
depth: 1
---

Wagtail 4.1 is designated a Long Term Support (LTS) release. Long Term Support releases will continue to receive maintenance updates as necessary to address security and data-loss related issues, up until the next LTS release (typically a period of 12 months).

What's new

New UI for scheduled publishing

Scheduled publishing settings can now be found within the Status side panel of the page editing view. This change aims to improve clarity over who is able to set schedules, and when they take effect. This feature was developed by Sage Abdullah.

Customisable snippet admin views

The register_snippet function now accepts a SnippetViewSet class, allowing various aspects of the snippet's admin views to be customised. See . This feature was developed by Sage Abdullah.

Scheduled publishing for snippets

Snippet models that inherit from DraftStateMixin can now be assigned go-live and expiry dates. This feature was developed by Sage Abdullah.

Other features

  • Add basic keyboard control and screen reader support for page listing re-ordering (Paarth Agarwal, Thomas van der Hoeven)
  • Add PageQuerySet.private method as an alias of not_public (Mehrdad Moradizadeh)
  • Most images in the admin will now only load once they are visible on screen (Jake Howard)
  • Allow setting default attributes on image tags (Jake Howard)
  • Optimise the performance of the Wagtail userbar to remove duplicated queries, improving page loads when viewing live pages while signed in (Jake Howard)
  • Remove legacy styling classes for buttons and refactor button styles to be more maintainable (Paarth Agarwal, LB (Ben Johnston))
  • Add button variations to the pattern library (Paarth Agarwal)
  • Provide a more accessible page title where the unique information is shown first and the CMS name is shown last (Mehrdad Moradizadeh)
  • Pull out behaviour from AbstractFormField to FormMixin and AbstractEmailForm to EmailFormMixin to allow use with subclasses of Page (Mehrdad Moradizadeh, Kurt Wall)
  • Add a docs.wagtail.org/.well-known/security.txt so that the security policy is available as per the specification on https://securitytxt.org/ (Jake Howard)
  • Add unit tests for the classnames Wagtail admin template tag (Mehrdad Moradizadeh)
  • Show an inverse locked indicator when the page has been locked by the current user in reports and dashboard listings (Vaibhav Shukla, LB (Ben Johnston))
  • Add clarity to the development documentation that admonition should not be used and titles for note are not supported, including clean up of some existing incorrect usage (LB (Ben Johnston))
  • Unify the styling of delete/destructive button styles across the admin interface (Paarth Agarwal)
  • Adopt new designs and unify the styling styles for .button-secondary buttons across the admin interface (Paarth Agarwal)
  • Refine designs for disabled buttons throughout the admin interface (Paarth Agarwal)
  • Update expanding formset add buttons to use button not link for behaviour and remove support for disabled as a class (LB (Ben) Johnston)
  • Add robust unit testing for authentication scenarios across the user management admin pages (Mehrdad Moradizadeh)
  • Avoid assuming an integer PK named 'id' on multiple upload views (Matt Westcott)
  • Add a toggle to collapse/expand all page panels at once (Helen Chapman)
  • Improve the GitHub Workflows (CI) security (Alex (sashashura))
  • Use search type input in documentation search (LB (Ben) Johnston)
  • Render help_text when set on FieldPanel, MultiFieldPanel, FieldRowPanel, and other panel APIs where it previously worked without official support (Matt Westcott)

Bug fixes

  • Prevent PageQuerySet.not_public from returning all pages when no page restrictions exist (Mehrdad Moradizadeh)
  • Ensure that duplicate block ids are unique when duplicating stream blocks in the page editor (Joshua Munn)
  • Revise colour usage so that privacy & locked indicators can be seen in Windows High Contrast mode (LB (Ben Johnston))
  • Ensure that disabled buttons have a consistent presentation on hover to indicate no interaction is available (Paarth Agarwal)
  • Update the 'Locked pages' report menu title so that it is consistent with other pages reports and its own title on viewing (Nicholas Johnson)
  • Support formfield_callback handling on ModelForm.Meta for future Django 4.2 release (Matt Westcott)
  • Ensure that ModelAdmin correctly supports filters in combination with subsequent searches without clearing the applied filters (Stefan Hammer)
  • Add missing translated values to site settings' headers plus models presented in listings and audit report filtering labels (Stefan Hammer)
  • Remove capitalize() calls to avoid issues with other languages or incorrectly presented model names for reporting and parts of site settings (Stefan Hammer)
  • Add back rendering of help_text for InlinePanel (Matt Westcott)
  • Ensure for_user argument is passed to the form class when previewing pages (Matt Westcott)

Upgrade considerations

Button styling class changes

The button-secondary class is no longer compatible with either the .serious or .no classes, this partially worked previously but is no longer officially supported.

When adding custom buttons using the ModelAdmin ButtonHelper class, custom buttons will no longer include the button-secondary class by default in index listings.

If using the hook register_user_listing_buttons to register buttons along with the undocumented UserListingButton class, the button-secondary class will no longer be included by default.

Avoid using disabled as a class on button elements, instead use the disabled attribute as support for this as a class may be removed in a future version of Wagtail and is not accessible.

If using custom expanding-formset the add button will no longer support the disabled class but instead must require the disabled attribute to be set.

The following button classes have been removed, none of which were being used within the admin but may have been used by custom code or packages:

  • button-neutral
  • button-strokeonhover
  • hover-no
  • unbutton
  • yes