- Add support for multi-lingual content (Karl Hobley)
- Add support for aliased pages (Karl Hobley)
- Add support for hierarchical/nested Collections (Robert Rollins)
- Extend treebeard's
fix_tree
method with the ability to non-destructively fix path issues and add a --full option to apply path fixes (Matt Westcott) - Add
before_edit_snippet
,before_create_snippet
andbefore_delete_snippet
hooks and documentation (Karl Hobley. Sponsored by the Mozilla Foundation) - Add
register_snippet_listing_buttons
andconstruct_snippet_listing_buttons
hooks and documentation (Karl Hobley. Sponsored by the Mozilla Foundation) - Add
wagtail --version
to available Wagtail CLI commands (Kalob Taulien) - Add
hooks.register_temporarily
utility function for testing hooks (Karl Hobley. Sponsored by the Mozilla Foundation) - Remove
unidecode
and useanyascii
in for Unicode to ASCII conversion (Robbie Mackay) - Add
render
helper toRoutablePageMixin
to support serving template responses according to Wagtail conventions (Andy Babic) - Specify minimum Python version in setup.py (Vince Salvino)
- Show user's full name in report views (Matt Westcott)
- Improve Wagtail admin page load performance by caching SVG icons sprite in localStorage (Coen van der Kamp)
- Support SVG icons in ModelAdmin menu items (Scott Cranfill)
- Support SVG icons in admin breadcrumbs (Coen van der Kamp)
- Serve PDFs inline in the browser (Matt Westcott)
- Make document
content-type
andcontent-disposition
configurable viaWAGTAILDOCS_CONTENT_TYPES
andWAGTAILDOCS_INLINE_CONTENT_TYPES
(Matt Westcott) - Slug generation no longer removes stopwords (Andy Chosak, Scott Cranfill)
- Add check to disallow StreamField block names that do not match Python variable syntax (François Poulain)
- The
BASE_URL
setting is now converted to a string, if it isn't already, when constructing API URLs (thenewguy) - Preview from 'pages awaiting moderation' now opens in a new window (Cynthia Kiser)
- Add document extension validation if
WAGTAIL_DOCS_EXTENSIONS
is set (Meghana Bhange) - Use
django-admin
command in place ofdjango-admin.py
(minusf) - Add
register_snippet_action_menu_item
andconstruct_snippet_action_menu
hooks to modify the actions available when creating / editing a snippet (Karl Hobley) - Moved
generate_signature
andverify_signature
functions intowagtail.images.utils
(Noah H) - Implement
bulk_to_python
on all structural StreamField block types (Matt Westcott) - Add natural key support to
GroupCollectionPermission
(Jim Jazwiecki) - Implement
prepopulated_fields
forwagtail.contrib.modeladmin
(David Bramwell) - Change
classname
keyword argument on basic StreamField blocks toform_classname
(Meghana Bhange) - Replace page explorer pushPage/popPage with gotoPage for more flexible explorer navigation (Karl Hobley)
- Fix: Make page-level actions accessible to keyboard users in page listing tables (Jesse Menn)
- Fix:
WAGTAILFRONTENDCACHE_LANGUAGES
was being interpreted incorrectly. It now accepts a list of strings, as documented (Karl Hobley) - Fix: Update oEmbed endpoints to use https where available (Matt Westcott)
- Fix: Revise
edit_handler
bind order in ModelAdmin views and fix duplicate form instance creation (Jérôme Lebleu) - Fix: Properly distinguish child blocks when comparing revisions with nested StreamBlocks (Martin Mena)
- Fix: Correctly handle Turkish 'İ' characters in client-side slug generation (Matt Westcott)
- Fix: Page chooser widgets now reflect custom
get_admin_display_title
methods (Saptak Sengupta) - Fix:
Page.copy()
now raises an error if the page being copied is unsaved (Anton Zhyltsou) - Fix:
Page.copy()
now triggers apage_published
if the copied page is live (Anton Zhyltsou) - Fix: The Elasticsearch
URLS
setting can now take a string on its own instead of a list (Sævar Öfjörð Magnússon) - Fix: Avoid retranslating month / weekday names that Django already provides (Matt Westcott)
- Fix: Fixed padding around checkbox and radio inputs (Cole Maclean)
- Fix: Fix spacing around the privacy indicator panel (Sævar Öfjörð Magnússon, Dan Braghis)
- Fix: Consistently redirect to admin home on permission denied (Matt Westcott, Anton Zhyltsou)