Version 5.9.1

On February 22, 2022, WordPress 5.9.1 was released to the public.

Installation/Update Information

To get this version, update automatically from the Dashboard > Updates menu in your site’s admin area or visit https://wordpress.org/download/release-archive/.

For step-by-step instructions on installing and updating WordPress:

If you are new to WordPress, we recommend that you begin with the following:

Top ↑

Summary

Top ↑

Maintenance updates

WordPress 5.9.1 features 33 bug fixes on Core, as well as 52 bug fixes for the Block Editor.

The WordPress 5.9.1 release was led by Jean-Baptiste Audras and George Mamadashvili.

The following core tickets from Trac were fixed:

  • #54250 – Twenty Twenty One: Editor Buttons margins incompatible with gap
  • #54782 – Default presets in use by default themes need to be updated
  • #54844 – Unnecessary database queries when a block theme isn’t in use
  • #54849 – Site transients cause DB errors when installing
  • #54862 – FSE Navigation Block Styling Submenu
  • #54886 – “Show hidden updates” button is invisible
  • #54889 – Cannot access ‘Manage menus’ in Navigation block toolbar when running a classic theme
  • #54896 – TT2: Blank screen displayed for custom post type
  • #54900 – PHP warning in `WP_REST_Global_Styles_Controller` if no `styles` exist in theme.json
  • #54902 – Media Library Overlay Drag-and-Drop To Reorder Images Does Not Work In WP 5.9
  • #54904 – Bounce hoverIntent.js version in script-loader to 10.1.2
  • #54906 – Check _get_cron_array type in upgrade_590 routine
  • #54908 – Standard post type UI is exposed for templates and template parts
  • #54911 – Twenty Twenty-Two: Theme Check Plugin issue for the image size
  • #54922 – Normalizing CSS also catches CSS IDs instead of only URLs
  • #54928 – Twenty Twenty-Two: 404 search label should be translated
  • #54929 – Twenty Twenty-Two: Pricing Table pattern header levels should be consistent
  • #54944 – By applying a background color to a group block, it aligns to the left in the editor
  • #54955 – Custom fields issue
  • #54960 – Media Library Dragging Option Isn’t Reflected
  • #54977 – Dashboard welcome banner: fix bug when displayed in certain contexts
  • #55018 – Twenty Twenty-Two – Update theme URI link
  • #55072 – Widgets editor: Widget Group is missing .wp-widget-group__inner-blocks container
  • #55103 – Twenty Twenty-Two: Restore padding for Group blocks with a background color
  • #55109 – Plugins no longer download to tmp folder
  • #55148 – In block themes, styles should load in the head
  • #55151 – View scripts of blocks are loaded in editor
  • #55161 – Full Site Editing: PHP Warning with incomplete presets
  • #55177 – Normalizing relative CSS links should skip data URIs
  • #55178 – Allow fully extending WP_Theme_JSON and WP_Theme_JSON_Resolver classes
  • #55179 – Backport bugfixes from Gutenberg into Core for WP 5.9.1
  • #55188 – Block styles should load after global styles in the editor
  • #55190 – Global styles duotone not rendering in post editor

The following block editor issues from GitHub were fixed:

  • PR38857 – Fix for late static binding in the resolver
  • PR38780 – Block Editor: Add settings to enable/disable auto anchor generation
  • PR38750 – Load block support styles in the head for block themes
  • PR38745 – Fix global styles loading logic
  • PR38695 – Site Editor: Limit template part slugs to Latin chars
  • PR38671 – Allow extending the WP_Theme_JSON_Gutenberg class
  • PR38656 – Edit Site: Add template check to ‘setPage’ action
  • PR38655 – Add site editor initial redirect error handling
  • PR38649 – Fix search block html handling for label and button text 
  • PR38642 – Gallery block: copy all attributes when transforming to Image blocks
  • PR38625 – Allow child classes to use the private methods and constants
  • PR38561 – Only apply the social links block migration if there’s a need for a migration
  • PR38516 – Block preview: fix resize listener
  • PR38442 – Duotone: Allow users to specify custom filters
  • PR38432 – Remove the aria-label from the site title block
  • PR38399 – Images: Try moving responsive rule to common.scss. 
  • PR38362 – Cover block: Add back missing styles
  • PR38310 – Gallery block: fix bug with link destination default option not being set
  • PR38189 – Gallery: Ensure the last image takes up all available space
  • PR38070 – Post Editor: Fix template queries
  • PR37983 – Tree Grid: Fix keyboard navigation for expand/collapse table rows in Firefox
  • PR37954 – Fix duotone render in non-fse themes
  • PR37941 – Unset inherited backgrounds on Posts Lists
  • PR37895 – Site Editor: Fix broken ‘Redo’ by removing faulty logic for discarding unsaved Logo changes
  • PR37885 – Load the global styles before the theme styles in the editor
  • PR37853 – Block.json schema: update fontSize and lineHeight props
  • PR37840 – [History]: Fix redo after update/publish with transient edits
  • PR37778 – Update core/archive block schema to reflect no block-level settings support
  • PR37774 – Spacer: Fix unit settings filter
  • PR37762 – Schema: Fix appearanceTools in theme.json schema
  • PR37650 – Site Editor: Add keyboard shortcut help modal
  • PR37647 – Site Editor: Add the “Help” link to the tools menu
  • PR37644 – Fix: Coloring panel is unusable in RTL
  • PR37569 – Docs: Add automated theme.json reference documentation
  • PR37493 – Update: make color style labels simpler
  • PR37486 – Show UI warning if Pages cannot be retrieved in Page List block
  • PR37474 – Fix empty gray circle when site has no logo on template list page
  • PR37430 – Update: Allow color gradient popover to be above the color toggle
  • PR37425 – Border panel: Collapse color controls
  • PR37248 – Site editor – try redirecting to homepage before the react render 
  • PR37165 – Remove versioning in theme schema descriptions
  • PR37067 – Update: PanelColorGradientSettings to use dropdowns
  • PR37034 – Block Editor: Handle the absence of href attrib in links
  • PR36917 – Update theme.json version
  • PR36746 – Update theme.json schema to allow for per-block management of settings
  • PR36540 – Post Featured Image: Move width and height controls into the Dimensions panel via SlotFill
  • PR36411 – Schemas: Allow custom blocks in theme.json styles
  • PR36343 – Add pattern to name key in block.json Schema
  • PR36295 – Schema: Allow block.json attribute type to be an array
  • PR36236 – Fix duotone theme cache
  • PR36186 – Spacer: add custom units for height and width
  • PR30873 – Focus save button when entities save states panel is opened

Top ↑

Credits

The 5.9.1 release was led by Jb Audras and George Mamadashvili.

Special props to @sergeybiryukov for running mission control.

Thank you to everyone who helped make WordPress 5.9.1 happen:

Albert Juhé Lluveras, Alex Lende, alexstine, André, Anton Vlasenko, Ari Stathopoulos, ArteMa, Ben Dwyer, BlogAid, Carolina Nymark, Channing Ritter, Chris Van Patten, Colin Stewart, Daniel Richards, David Biňovec, David Smith, Dion Hulse, Dominik Schilling, Eddy, Ella van Durpe, Erik, Fabian Kägy, Flinim Asso, gadhiyaravi, George Hotelling, George Mamadashvili, glendaviesnz, Greg Ziółkowski, ianatkins, Ian Belanger, ironprogrammer, itsamoreh, Jb Audras, Jeff Ong, Jeremy Herve, Joe Dolson, Joen A., John Blackbourn, Jonathan Desrosiers, Jorge Costa, Juliette Reinders Folmer, KafleG, Kapil Paul, Kjell Reigstad, linux4me2, Lukman Nakib, manfcarlo, Marius L. J., mgol, nidhidhandhukiya, Nik Tsekouras, Omar Alshaker, Paolo L. Scala, Pascal Birchler, Paul Bearne, Pavlo, Petar Ratković, Peter Wilson, Petter Walbø Johnsgård, Phil Johnston, Piotrek Boniu, ravipatel, Riad Benguella, Robert Anderson, Rolf Siebers, Sergey Biryukov, stacimc, Stephen Bernhardt, Sven Wagener, Team Staatic, Tim Nolte, Tonya Mork, webcommsat AbhaNonStopNewsUK, WebMan Design | Oliver Juhas, wpcharged, wpsoul, Yunus Ertuğrul, and Rafi Ahmed.

Thanks to @estelaris, @pbiron, @ironprogrammer, @bph, @abhanonstopnewsuk and @threadi for their help to test the release package.

Top ↑

List of updated packages

@wordpress/block-directory@3.0.27
@wordpress/block-editor@8.0.17
@wordpress/block-library@6.0.26
@wordpress/components@19.2.3
@wordpress/core-data@4.0.10
@wordpress/customize-widgets@2.0.27
@wordpress/e2e-tests@2.5.18
@wordpress/edit-post@5.0.27
@wordpress/edit-site@3.0.27
@wordpress/edit-widgets@3.1.22
@wordpress/editor@12.0.21
@wordpress/format-library@3.0.23
@wordpress/interface@4.1.18
@wordpress/list-reusable-blocks@3.0.20
@wordpress/nux@5.0.20
@wordpress/reusable-blocks@3.0.23
@wordpress/server-side-render@3.0.20
@wordpress/widgets@2.0.23

Top ↑

List of Files Revised

wp-admin/css/dashboard-rtl.css
wp-admin/css/dashboard-rtl.min.css
wp-admin/css/dashboard.css
wp-admin/css/dashboard.min.css
wp-admin/edit-form-blocks.php
wp-admin/includes/file.php
wp-admin/includes/upgrade.php
wp-admin/update-core.php
wp-content/themes/twentytwentyone/assets/css/ie-editor.css
wp-content/themes/twentytwentyone/assets/css/style-editor.css
wp-content/themes/twentytwentyone/assets/sass/05-blocks/button/_editor.scss
wp-content/themes/twentytwentytwo/assets/images/ducks.jpg
wp-content/themes/twentytwentytwo/inc/patterns/general-pricing-table.php
wp-content/themes/twentytwentytwo/inc/patterns/hidden-404.php
wp-content/themes/twentytwentytwo/style.css
wp-includes/assets/script-loader-packages.php
wp-includes/block-editor.php
wp-includes/block-supports/duotone.php
wp-includes/block-supports/elements.php
wp-includes/block-supports/layout.php
wp-includes/block-template.php
wp-includes/blocks/cover/style-rtl.css
wp-includes/blocks/cover/style-rtl.min.css
wp-includes/blocks/cover/style.css
wp-includes/blocks/cover/style.min.css
wp-includes/blocks/gallery/style-rtl.css
wp-includes/blocks/gallery/style-rtl.min.css
wp-includes/blocks/gallery/style.css
wp-includes/blocks/gallery/style.min.css
wp-includes/blocks/image/style-rtl.css
wp-includes/blocks/image/style-rtl.min.css
wp-includes/blocks/image/style.css
wp-includes/blocks/image/style.min.css
wp-includes/blocks/index.php
wp-includes/blocks/page-list.php
wp-includes/blocks/page-list/editor-rtl.css
wp-includes/blocks/page-list/editor-rtl.min.css
wp-includes/blocks/page-list/editor.css
wp-includes/blocks/page-list/editor.min.css
wp-includes/blocks/post-featured-image/editor-rtl.css
wp-includes/blocks/post-featured-image/editor-rtl.min.css
wp-includes/blocks/post-featured-image/editor.css
wp-includes/blocks/post-featured-image/editor.min.css
wp-includes/blocks/post-template/style-rtl.css
wp-includes/blocks/post-template/style-rtl.min.css
wp-includes/blocks/post-template/style.css
wp-includes/blocks/post-template/style.min.css
wp-includes/blocks/search.php
wp-includes/blocks/site-logo.php
wp-includes/blocks/site-title.php
wp-includes/blocks/spacer/block.json
wp-includes/blocks/spacer/editor-rtl.css
wp-includes/blocks/spacer/editor-rtl.min.css
wp-includes/blocks/spacer/editor.css
wp-includes/blocks/spacer/editor.min.css
wp-includes/class-wp-theme-json-resolver.php
wp-includes/class-wp-theme-json.php
wp-includes/css/dist/block-editor/style-rtl.css
wp-includes/css/dist/block-editor/style-rtl.min.css
wp-includes/css/dist/block-editor/style.css
wp-includes/css/dist/block-editor/style.min.css
wp-includes/css/dist/block-library/common-rtl.css
wp-includes/css/dist/block-library/common-rtl.min.css
wp-includes/css/dist/block-library/common.css
wp-includes/css/dist/block-library/common.min.css
wp-includes/css/dist/block-library/editor-rtl.css
wp-includes/css/dist/block-library/editor-rtl.min.css
wp-includes/css/dist/block-library/editor.css
wp-includes/css/dist/block-library/editor.min.css
wp-includes/css/dist/block-library/style-rtl.css
wp-includes/css/dist/block-library/style-rtl.min.css
wp-includes/css/dist/block-library/style.css
wp-includes/css/dist/block-library/style.min.css
wp-includes/css/dist/components/style-rtl.css
wp-includes/css/dist/components/style-rtl.min.css
wp-includes/css/dist/components/style.css
wp-includes/css/dist/components/style.min.css
wp-includes/css/dist/edit-site/style-rtl.css
wp-includes/css/dist/edit-site/style-rtl.min.css
wp-includes/css/dist/edit-site/style.css
wp-includes/css/dist/edit-site/style.min.css
wp-includes/default-filters.php
wp-includes/deprecated.php
wp-includes/global-styles-and-settings.php
wp-includes/js/dist/block-editor.js
wp-includes/js/dist/block-editor.min.js
wp-includes/js/dist/block-library.js
wp-includes/js/dist/block-library.min.js
wp-includes/js/dist/components.js
wp-includes/js/dist/components.min.js
wp-includes/js/dist/core-data.js
wp-includes/js/dist/core-data.min.js
wp-includes/js/dist/edit-post.js
wp-includes/js/dist/edit-post.min.js
wp-includes/js/dist/edit-site.js
wp-includes/js/dist/edit-site.min.js
wp-includes/js/dist/editor.js
wp-includes/js/dist/editor.min.js
wp-includes/js/jquery/ui/accordion.js
wp-includes/js/jquery/ui/accordion.min.js
wp-includes/js/jquery/ui/autocomplete.js
wp-includes/js/jquery/ui/autocomplete.min.js
wp-includes/js/jquery/ui/button.js
wp-includes/js/jquery/ui/button.min.js
wp-includes/js/jquery/ui/checkboxradio.js
wp-includes/js/jquery/ui/checkboxradio.min.js
wp-includes/js/jquery/ui/controlgroup.js
wp-includes/js/jquery/ui/controlgroup.min.js
wp-includes/js/jquery/ui/core.js
wp-includes/js/jquery/ui/core.min.js
wp-includes/js/jquery/ui/datepicker.js
wp-includes/js/jquery/ui/datepicker.min.js
wp-includes/js/jquery/ui/dialog.js
wp-includes/js/jquery/ui/dialog.min.js
wp-includes/js/jquery/ui/draggable.js
wp-includes/js/jquery/ui/draggable.min.js
wp-includes/js/jquery/ui/droppable.js
wp-includes/js/jquery/ui/droppable.min.js
wp-includes/js/jquery/ui/effect-blind.js
wp-includes/js/jquery/ui/effect-blind.min.js
wp-includes/js/jquery/ui/effect-bounce.js
wp-includes/js/jquery/ui/effect-bounce.min.js
wp-includes/js/jquery/ui/effect-clip.js
wp-includes/js/jquery/ui/effect-clip.min.js
wp-includes/js/jquery/ui/effect-drop.js
wp-includes/js/jquery/ui/effect-drop.min.js
wp-includes/js/jquery/ui/effect-explode.js
wp-includes/js/jquery/ui/effect-explode.min.js
wp-includes/js/jquery/ui/effect-fade.js
wp-includes/js/jquery/ui/effect-fade.min.js
wp-includes/js/jquery/ui/effect-fold.js
wp-includes/js/jquery/ui/effect-fold.min.js
wp-includes/js/jquery/ui/effect-highlight.js
wp-includes/js/jquery/ui/effect-highlight.min.js
wp-includes/js/jquery/ui/effect-puff.js
wp-includes/js/jquery/ui/effect-puff.min.js
wp-includes/js/jquery/ui/effect-pulsate.js
wp-includes/js/jquery/ui/effect-pulsate.min.js
wp-includes/js/jquery/ui/effect-scale.js
wp-includes/js/jquery/ui/effect-scale.min.js
wp-includes/js/jquery/ui/effect-shake.js
wp-includes/js/jquery/ui/effect-shake.min.js
wp-includes/js/jquery/ui/effect-size.js
wp-includes/js/jquery/ui/effect-size.min.js
wp-includes/js/jquery/ui/effect-slide.js
wp-includes/js/jquery/ui/effect-slide.min.js
wp-includes/js/jquery/ui/effect-transfer.js
wp-includes/js/jquery/ui/effect-transfer.min.js
wp-includes/js/jquery/ui/effect.js
wp-includes/js/jquery/ui/effect.min.js
wp-includes/js/jquery/ui/menu.js
wp-includes/js/jquery/ui/menu.min.js
wp-includes/js/jquery/ui/mouse.js
wp-includes/js/jquery/ui/mouse.min.js
wp-includes/js/jquery/ui/progressbar.js
wp-includes/js/jquery/ui/progressbar.min.js
wp-includes/js/jquery/ui/resizable.js
wp-includes/js/jquery/ui/resizable.min.js
wp-includes/js/jquery/ui/selectable.js
wp-includes/js/jquery/ui/selectable.min.js
wp-includes/js/jquery/ui/selectmenu.js
wp-includes/js/jquery/ui/selectmenu.min.js
wp-includes/js/jquery/ui/slider.js
wp-includes/js/jquery/ui/slider.min.js
wp-includes/js/jquery/ui/sortable.js
wp-includes/js/jquery/ui/sortable.min.js
wp-includes/js/jquery/ui/spinner.js
wp-includes/js/jquery/ui/spinner.min.js
wp-includes/js/jquery/ui/tabs.js
wp-includes/js/jquery/ui/tabs.min.js
wp-includes/js/jquery/ui/tooltip.js
wp-includes/js/jquery/ui/tooltip.min.js
wp-includes/js/wp-ajax-response.js
wp-includes/js/wp-ajax-response.min.js
wp-includes/option.php
wp-includes/post.php
wp-includes/rest-api/endpoints/class-wp-rest-global-styles-controller.php
wp-includes/script-loader.php
wp-includes/version.php