Releases: WordPress/gutenberg
Releases · WordPress/gutenberg
5.0.0
Features
- Add a new RSS block and follow-up improvements: 1, 2.
- Add a new Amazon Kindle embed block.
- Add a new FocalPointPicker component and use it to define the focal point of the Cover block background.
Enhancements
- Optimize the re-rendering performance when inserting/removing blocks.
- Improve the Reusable Blocks UX for contributor users.
- Disable embed previews for the smugmug provider.
- Make the fullscreen mode a desktop-only feature.
- Accessibility: Add speak messages when using the FeatureToggle component.
- Accessibility: Change the inserter search result message from assertive to polite.
- Accessibility: Remove duplicate aria label from menu items.
- Remove the "Show Download Button" toggle help text in the File block.
- Render the block switcher as disabled if not available in a multi-selection.
- Use a back arrow icon to clarify the Fullscreen mode exit button.
- Limit the Gallery block columns count to the images count.
- Automatically set a default block style if missing.
- Hide empty categories from the Categories block in the editor.
- Increase the padding of the gallery captions.
- Add left/right alignments to the latest posts block.
- Improve the columns margins.
- Add a help text for the hide teaser toggle in the More block.
- Improve the wording of the embed block messages.
Bug Fixes
- Accessibility: Fix the tab order of the date picker component.
- Support non hierarchical taxonomies in the category selector component.
- Fix blocks marked invalid incorrectly due to special HTML characters.
- Fix the Notice component styling.
- Fix the :root selector in the editor styles.
- Fix duplicate block toolbars.
- Fix warning message when using the DateTimePicker component.
- Fix the File block and Categories block style when applying custom classnames.
- Fix the Gallery block styling in Microsoft Edge.
- Fix the Button block styling when links are visited.
- Fix Block Style preview not dismissed after selection.
- Fix TabPanel buttons incorrectly submitting forms.
- Fix hierarchical dropdown in the Categories block.
- Fix wording for the color picker saturation.
- Fix the save keyboard shortcut while in the code editor mode.
- Fix the Google Docs table pasting.
- Fix jumps when indenting/outdenting list items.
- Fix FontSizePicker max width on mobile.
- Fix PHP 5.2.2 Parser issue.
- Fix plural messages POT generation.
Various
- Add ESnext build setup and commands to the @wordpress/scripts package.
- Add "focus on mount" config to the DropDown component.
- Improve the error handling in the data module resulting in clearer messages displayed in the console.
- Support marking days as invalid in the DatePicker component.
- Support block transforms with inner blocks.
- Improve the styles of the editor notices with actions.
- Replace Polldaddy embed block with Crowdsignal.
- Avoid setting the generic Edit Post Title on load.
- Deprecate window._wpLoadGutenbergEditor.
- Avoid an empty classname when deleting custom classnames.
- Add className prop support to the ServerSideRender component.
Documentation
- Improve the components README files DropdownMenu & RangeControl.
- Add code example of the MediaPlaceholder component.
- Add a accessibility dedicated page.
- Add a Git workflow documentation page.
- Reorganize the contributors guide.
- Mention the dark theme support in the design docs.
- Enhance the compose package documentation.
- Expand the block templates code examples.
- Fix unregisterBlockType code examples.
- Clarify the block styles isDefault property.
- Move the npm packages management documentation to a dedicated page.
- Add a section explaining the links usage in the documentation.
- Add a note about the wp-editor dependency when using RichText.
- Update the isShallowEqual package documentation and tests.
- Refresh the repository management doc.
- Typos: 1, 2, 3, 4, 5, 6, 7.
Chore
- Remove PHP Code maintained in Core and bump minimum WordPress version:
- Block registration.
- REST API Endpoints.
- Markdown support fix.
- Gutenberg body classname and responsive classname.
- Preloading API calls.
- Block detection utilities.
- List screen integration.
- Block content version.
- Block categories hook.
- TinyMCE scripts registration.
- Reusable blocks post type labels and listing page.
- Block Types Initialization.
- PHP Unit tests.
- Compatibility script.
- Meta boxes support.
- Polyfills.
- oEmbed Proxy Endpoint filter.
- Visual Editing Disabling.
- Update [browserlist dependency](https://github.com/WordPre...
5.0.0 Release Candidate
Features
- Add a new RSS block and follow-up improvements: 1, 2.
- Add a new Amazon Kindle embed block.
- Add a new FocalPointPicker component and use it to define the focal point of the Cover block background.
Enhancements
- Optimize the re-rendering performance when inserting/removing blocks.
- Improve the Reusable Blocks UX for contributor users.
- Disable embed previews for the smugmug provider.
- Make the fullscreen mode a desktop-only feature.
- Accessibility: Add speak messages when using the FeatureToggle component.
- Accessibility: Change the inserter search result message from assertive to polite.
- Accessibility: Remove duplicate aria label from menu items.
- Remove the "Show Download Button" toggle help text in the File block.
- Render the block switcher as disabled if not available in a multi-selection.
- Use a back arrow icon to clarify the Fullscreen mode exit button.
- Limit the Gallery block columns count to the images count.
- Automatically set a default block style if missing.
- Hide empty categories from the Categories block in the editor.
- Increase the padding of the gallery captions.
- Add left/right alignments to the latest posts block.
- Improve the columns margins.
- Add a help text for the hide teaser toggle in the More block.
- Improve the wording of the embed block messages.
Bug Fixes
- Accessibility: Fix the tab order of the date picker component.
- Support non hierarchical taxonomies in the category selector component.
- Fix blocks marked invalid incorrectly due to special HTML characters.
- Fix the Notice component styling.
- Fix the :root selector in the editor styles.
- Fix duplicate block toolbars.
- Fix warning message when using the DateTimePicker component.
- Fix the File block and Categories block style when applying custom classnames.
- Fix the Gallery block styling in Microsoft Edge.
- Fix the Button block styling when links are visited.
- Fix Block Style preview not dismissed after selection.
- Fix TabPanel buttons incorrectly submitting forms.
- Fix hierarchical dropdown in the Categories block.
- Fix wording for the color picker saturation.
- Fix the save keyboard shortcut while in the code editor mode.
- Fix the Google Docs table pasting.
- Fix jumps when indenting/outdenting list items.
- Fix FontSizePicker max width on mobile.
- Fix PHP 5.2.2 Parser issue.
- Fix plural messages POT generation.
Various
- Add ESnext build setup and commands to the @wordpress/scripts package.
- Add "focus on mount" config to the DropDown component.
- Improve the error handling in the data module resulting in clearer messages displayed in the console.
- Support marking days as invalid in the DatePicker component.
- Support block transforms with inner blocks.
- Improve the styles of the editor notices with actions.
- Replace Polldaddy embed block with Crowdsignal.
- Avoid setting the generic Edit Post Title on load.
- Deprecate window._wpLoadGutenbergEditor.
- Avoid an empty classname when deleting custom classnames.
- Add className prop support to the ServerSideRender component.
Documentation
- Improve the components README files
- DropdownMenu.
- RangeControl.
- Add code example of the MediaPlaceholder component.
- Add a accessibility dedicated page.
- Add a Git workflow documentation page.
- Reorganize the contributors guide.
- Mention the dark theme support in the design docs.
- Enhance the compose package documentation.
- Expand the block templates code examples.
- Fix unregisterBlockType code examples.
- Clarify the block styles isDefault property.
- Move the npm packages management documentation to a dedicated page.
- Add a section explaining the links usage in the documentation.
- Add a note about the wp-editor dependency when using RichText.
- Update the isShallowEqual package documentation and tests.
- Refresh the repository management doc.
- Typos: 1, 2, 3, 4, 5, 6, 7.
Chore
- Remove PHP Code maintained in Core and bump minimum WordPress version:
- Block registration.
- REST API Endpoints.
- Markdown support fix.
- Gutenberg body classname and responsive classname.
- Preloading API calls.
- Block detection utilities.
- List screen integration.
- Block content version.
- Block categories hook.
- TinyMCE scripts registration.
- Reusable blocks post type labels and listing page.
- Block Types Initialization.
- PHP Unit tests.
- Compatibility script.
- Meta boxes support.
...
4.9.0
Changelog
Performance
- Implement an async rendering mode for the data module updates.
- Avoid rerendering the block components when selecting a block.
- Improve the performance of isEditorEmptyPost selector (13% typing performance improvement).
- Data Module: Avoid persisting unchanged values.
- Update withSelect to use type-optimized isShallowEqual.
- Move data selection to event handlers (called only when necessary).
- Improve the initial rendering time by optimizing the withFilters Higher-order component.
Bug Fixes
- Fix RichText toolbar when using multiline=”li”.
- Correct the margin of the block icons in the inserter.
- Fix ampersand in post tags causing editor crash.
- Remove alignundefined class from gallery block edit markup.
- Disable the button to open the publish sidebar if locked.
- Correct the default margin for buttons with icons.
- Keep the date floating when for posts with "pending" status.
- Fix using the EXIF title when uploading images.
- Fix font size picker on mobile.
- Fix z-index of the Reusable Block Inserter button.
- Fix autop behavior when a text is followed by a div.
- Fix warning when returning null from a data module generator.
- Announce the screen reader messages in the correct order in Safari.
- Check Post Type support in the options modal.
Enhancements
- Support customizing the table background colors.
- Support underlining text using the keyboard shortcut ctrl+U.
- Apply the editor styles to the HTML Block Preview.
- Improve the color swatch selection indicator.
- Improve scrolling behavior in Fullscreen Mode in Edge.
- Remove deprecated embed providers.
- Refactor the alignements support in the Cover Block and the Categories Block.
- Code quality improvement to getBlockContentSchema
- Internationalize the excerpt documentation link.
- Improve pasting of quotes with citations.
- A11y
- Add a tooltip to the block list appender.
- Improve the color contrast of the inserter shortcuts.
- Remove the label from the Warning component’s menu.
- Add an option to overwrite the block in the Warning component.
Extensibility
- Support custom fetch handlers for wp.apiFetch.
- Support additional data passed to the mediaUpload utility.
- Add filter for the preview interstitial markup.
- Avoid appending empty query string in wp.url.addQueryArgs.
- Dispatch heartbeat events as hook actions to avoid the jQuery dependency.
- Support adding classnames to the plugins sidebar panels.
- Add a className to the parent page selector.
Documentation
- Add tutorials for
- Creating sidebar plugins.
- Using the Format API.
- Creating meta blocks.
- Reorganize the tutorials page.
- Improve the UI component documentation:
- The ButtonGroup component.
- The IconButton component.
- The SelectControl component.
- The TextareaControl component.
- The TabPanel component.
- The Toolbar component.
- The FormToggle component.
- Update the Gutenberg Release and the Repository Management docs.
- Add new section on scoping JS code.
- Use Block Editor instead of Gutenberg in the docs.
- Mention the Advanced Controls Panel in the design guidelines.
- Clarify the unregisterBlockStyle documentation.
- Clarify the difference between the button block and the button component.
- Scope JavaScript ES5 code example.
- Fix incorrect code example.
- Clarify the deprecated APIs.
- Fix typos 1 2 3 4 5 6 7.
Chore
- Improve CI build times.
- Extract error messages from console logging in E2E tests.
- Reorganization of the E2E tests setup and expose it as npm packages.
- Add aXe accessibility E2E tests support.
- Add E2E tests for the excerpt meta box plugin.
Mobile
- Fix the Image Size implementation.
- Fix scrolling long text content.
4.9.0 Release Candidate
Performance
- Implement an async rendering mode for the data module updates.
- Avoid rerendering the block components when selecting a block.
- Improve the performance of isEditorEmptyPost selector (13% typing performance improvement).
- Data Module: Avoid persisting unchanged values.
- Update withSelect to use type-optimized isShallowEqual.
- Move data selection to event handlers (called only when necessary).
- Improve the initial rendering time by optimizing the withFilters Higher-order component.
Bug Fixes
- Fix RichText toolbar when using multiline=”li”.
- Correct the margin of the block icons in the inserter.
- Fix ampersand in post tags causing editor crash.
- Remove alignundefined class from gallery block edit markup.
- Disable the button to open the publish sidebar if locked.
- Correct the default margin for buttons with icons.
- Keep the date floating when for posts with "pending" status.
- Fix using the EXIF title when uploading images.
- Fix font size picker on mobile.
- Fix z-index of the Reusable Block Inserter button.
- Fix autop behavior when a text is followed by a div.
- Fix warning when returning null from a data module generator.
- Announce the screen reader messages in the correct order in Safari.
- Check Post Type support in the options modal.
Enhancements
- Support customizing the table background colors.
- Support underlining text using the keyboard shortcut ctrl+U.
- Apply the editor styles to the HTML Block Preview.
- Improve the color swatch selection indicator.
- Improve scrolling behavior in Fullscreen Mode in Edge.
- Remove deprecated embed providers.
- Refactor the alignements support in the Cover Block and the Categories Block.
- Code quality improvement to getBlockContentSchema
- Internationalize the excerpt documentation link.
- Improve pasting of quotes with citations.
- A11y
- Add a tooltip to the block list appender.
- Improve the color contrast of the inserter shortcuts.
- Remove the label from the Warning component’s menu.
- Add an option to overwrite the block in the Warning component.
Extensibility
- Support custom fetch handlers for wp.apiFetch.
- Support additional data passed to the mediaUpload utility.
- Add filter for the preview interstitial markup.
- Avoid appending empty query string in wp.url.addQueryArgs.
- Dispatch heartbeat events as hook actions to avoid the jQuery dependency.
- Support adding classnames to the plugins sidebar panels.
- Add a className to the parent page selector.
Documentation
- Add tutorials for
- Creating sidebar plugins.
- Using the Format API.
- Creating meta blocks.
- Reorganize the tutorials page.
- Improve the UI component documentation:
- The ButtonGroup component.
- The IconButton component.
- The SelectControl component.
- The TextareaControl component.
- The TabPanel component.
- The Toolbar component.
- The FormToggle component.
- Update the Gutenberg Release and the Repository Management docs.
- Add new section on scoping JS code.
- Use Block Editor instead of Gutenberg in the docs.
- Mention the Advanced Controls Panel in the design guidelines.
- Clarify the unregisterBlockStyle documentation.
- Clarify the difference between the button block and the button component.
- Scope JavaScript ES5 code example.
- Fix incorrect code example.
- Clarify the deprecated APIs.
- Fix typos 1 2 3 4 5 6 7.
Chore
- Improve CI build times.
- Extract error messages from console logging in E2E tests.
- Reorganization of the E2E tests setup and expose it as npm packages.
- Add aXe accessibility E2E tests support.
- Add E2E tests for the excerpt meta box plugin.
Mobile
- Fix the Image Size implementation.
- Fix scrolling long text content.
🚩4.8.0
Performance
- Improve page initialization time by optimizing the addHook function and the viewport state initialization.
- Improve typing performance by splitting the state tree.
- Optimize partial application of runSelector.
- Move selector calls to the event handles to avoid useless component rerenders.
- Render DropZone children only when dragging elements over it.
- Initialize variables only when needed.
Enhancements
- Add error messages to the image block on upload failures.
- Merge similar i18n strings.
- Disable clipboard button in file block during upload.
- Persist alignment when transforming a gallery to an image and vice-versa.
- Copy enhancement to the embed block help text.
- Improve the scrolling of the WordPress navigation menu.
Bug Fixes
- Fix RTL support for the DatePicker component.
- Change the header level in the BlockCompare component.
- Show all the taxonomies in the sidebar.
- Fix the latest posts date className.
- Fix the “align center” button in Latest Posts block in the backend.
- Fix block height when DropCap is used.
- Fix converting caption shortcode with link.
- Fix edge case in addQueryArgs function.
- Don’t return the permalink if the CPT is not publicly viewable.
- Fix error when saving non public CPTs.
- Properly disable the Publish button when saving is disabled.
Various
- Show a message in the browser’s console when in Quirks Mode.
- Improvements to the @wordpress/scripts package: A new a check-engines command, a lint-style command and an update to lint-js.
Documentation
- Add a getting started with JavaScript tutorial.
- Document the blocks’ setup states in the design guidelines.
- Add content to Contributors index page.
- Improve the components documentation:
- The MenuItem component.
- The RadioControl component.
- The ServerSideRender component.
- Organise the documentation assets in a dedicated folder.
- Clarify immutability of the block attributes.
- Fix the metabox back compat code example.
- Fix incorrect data module example.
- Improve the plugin release docs.
- Remove useless property from the colors code example.
- Improve the contributing documentation.
- Fix npm README links.
- Update the design resources link.
- Typo fixes.
Chore
- Run e2e tests with popular plugins enabled.
- Add new e2e tests:
- The permalink panel.
- The categories panel.
- Blocks with meta attributes.
- Update node-sass to fix Node 11 support.
- Move the dev dependencies to the root package.json.
- Improve the Pull Request Template.
- More logs to the CI jobs.
- Code style fixes and expand the phpcs coverage.
- Disable fragile e2e tests.
- Avoid PHP notices when running the e2e tests in debug mode.
Mobile
- Make a simple version of DefaultBlockAppender.
- Stop using classname-to-style autotransform in react native.
- Fix SVG styles.
- Implement Enter press to add a default block.
- Hide keyboard when non textual block is selected.
- Fix undo/redo on new blocks.
- Pass the blockType prop to RNAztecView.
- Expose unregisterBlockType.
4.8.0 Release Candidate
Performance
- Improve page initialization time by optimizing the addHook function and the viewport state initialization.
- Improve typing performance by splitting the state tree.
- Optimize partial application of runSelector.
- Move selector calls to the event handles to avoid useless component rerenders.
- Render DropZone children only when dragging elements over it.
- Initialize variables only when needed.
Enhancements
- Add error messages to the image block on upload failures.
- Merge similar i18n strings.
- Disable clipboard button in file block during upload.
- Persist alignment when transforming a gallery to an image and vice-versa.
- Copy enhancement to the embed block help text.
- Improve the scrolling of the WordPress navigation menu.
Bug Fixes
- Fix RTL support for the DatePicker component.
- Change the header level in the BlockCompare component.
- Show all the taxonomies in the sidebar.
- Fix the latest posts date className.
- Fix the “align center” button in Latest Posts block in the backend.
- Fix block height when DropCap is used.
- Fix converting caption shortcode with link.
- Fix edge case in addQueryArgs function.
- Don’t return the permalink if the CPT is not publicly viewable.
- Fix error when saving non public CPTs.
- Properly disable the Publish button when saving is disabled.
Various
- Show a message in the browser’s console when in Quirks Mode.
- Improvements to the @wordpress/scripts package: A new a check-engines command, a lint-style command and an update to lint-js.
Documentation
- Add a getting started with JavaScript tutorial.
- Document the blocks’ setup states in the design guidelines.
- Add content to Contributors index page.
- Improve the components documentation:
- The MenuItem component.
- The RadioControl component.
- The ServerSideRender component.
- Organise the documentation assets in a dedicated folder.
- Clarify immutability of the block attributes.
- Fix the metabox back compat code example.
- Fix incorrect data module example.
- Improve the plugin release docs.
- Remove useless property from the colors code example.
- Improve the contributing documentation.
- Fix npm README links.
- Update the design resources link.
- Typo fixes.
Chore
- Run e2e tests with popular plugins enabled.
- Add new e2e tests:
- The permalink panel.
- The categories panel.
- Blocks with meta attributes.
- Update node-sass to fix Node 11 support.
- Move the dev dependencies to the root package.json.
- Improve the Pull Request Template.
- More logs to the CI jobs.
- Code style fixes and expand the phpcs coverage.
- Disable fragile e2e tests.
- Avoid PHP notices when running the e2e tests in debug mode.
Mobile
- Make a simple version of DefaultBlockAppender.
- Stop using classname-to-style autotransform in react native.
- Fix SVG styles.
- Implement Enter press to add a default block.
- Hide keyboard when non textual block is selected.
- Fix undo/redo on new blocks.
- Pass the blockType prop to RNAztecView.
- Expose unregisterBlockType.
4.7.1
Changelog
- Fix
editor.BlockListBlock
filter regression caught using the ACF pro beta plugin
4.7.0
Changelog (Same as RC)
Performance improvements
- Optimize isViewportMatch
- Performance: BlockListAppender: 1.7x increase on key press
- Date: Optimize the usage of moment-timezone to save some kilobytes
- RichText: selectionChange: bind on focus, unbind on blur
- RichText: only replace range and nodes if different
- Cache createBlock call in isUnmodifiedDefaultBlock
- Edit Post: Select blocks only once multiple verified
- RichText: Do not run valueToEditableHTML on every render
- RichText: Reuse DOM document across calls to createEmpty
- Only initialise TinyMCE once per instance
- Optimize the insertion point component
- Avoid rerending the current block if the previous block change
- Avoid getBlock in block-list/block
- Pass the registry argument to withDispatch to allow selectors to be used
Bug fixes
- Annotations: Apply annotation className as string
- RichText: Ensure instance is selected before setting back selection
- Meta Boxes: Don’t hide disabled meta boxes by modifying DOM
- Fix: Problems on Media & Text block resizing; Load wp-block-library styles before wp-edit-blocks
- When a post is saved, check for tinymce and save any editors.
- Fix: Undoing Image Selection from Media Library in Image Block breaks it
- Add an end-to-end test for the HTML block
- Fix regression when copying or cutting content in the editor
- Fix issue where default appender has icons overlaying the text
- Set document title for preview loading interstitial
- Fix: Upload permissions error on end-to-end inline tokens test
- Ensure classic block caret is in correct position after blur
- Fix tab navigation sometimes skipping block UI
- Improve font size picker accessibility: Use a menuitemradio role and better labels
- Don’t show trashed reusable blocks in the editor or frontend
- Rename functions, removing gutenberg_ prefix
- Add block switcher end-to-end tests
- Allow links in plugin group in the editor more menu
- Introduce searching of block categories from slash inserter
- Convert HTML formatting whitespace to spaces
- Label link format with selected text, not full text
- Ensure permalink panel is only displayed when a permalink is allowed
- Allow the user to convert unembeddable URLs to links and try embedding again
- Improve the top bar tools interaction and consistency
- Fix overflowing content in the facebook embed preview screen
- Add an action to set a category icon and correct block categories documentation
- Fix: pasting a tag that is part of a transform and not matched ignores the content.
- Packages: Extract Eslint config package
- Add end-to-end test to catch revert of title during a preview after saving a draft
- Avoid react warnings when merging two adjacent paragraphs
- Avoid PHP notice in the recent comments block
4.7.0 Release Candidate 🏎
Changelog
Performance improvements
- Optimize isViewportMatch
- Performance: BlockListAppender: 1.7x increase on key press
- Date: Optimize the usage of moment-timezone to save some kilobytes
- RichText: selectionChange: bind on focus, unbind on blur
- RichText: only replace range and nodes if different
- Cache createBlock call in isUnmodifiedDefaultBlock
- Edit Post: Select blocks only once multiple verified
- RichText: Do not run valueToEditableHTML on every render
- RichText: Reuse DOM document across calls to createEmpty
- Only initialise TinyMCE once per instance
- Optimize the insertion point component
- Avoid rerending the current block if the previous block change
- Avoid getBlock in block-list/block
- Pass the registry argument to withDispatch to allow selectors to be used
Bug fixes
- Annotations: Apply annotation className as string
- RichText: Ensure instance is selected before setting back selection
- Meta Boxes: Don’t hide disabled meta boxes by modifying DOM
- Fix: Problems on Media & Text block resizing; Load wp-block-library styles before wp-edit-blocks
- When a post is saved, check for tinymce and save any editors.
- Fix: Undoing Image Selection from Media Library in Image Block breaks it
- Add an end-to-end test for the HTML block
- Fix regression when copying or cutting content in the editor
- Fix issue where default appender has icons overlaying the text
- Set document title for preview loading interstitial
- Fix: Upload permissions error on end-to-end inline tokens test
- Ensure classic block caret is in correct position after blur
- Fix tab navigation sometimes skipping block UI
- Improve font size picker accessibility: Use a menuitemradio role and better labels
- Don’t show trashed reusable blocks in the editor or frontend
- Rename functions, removing gutenberg_ prefix
- Add block switcher end-to-end tests
- Allow links in plugin group in the editor more menu
- Introduce searching of block categories from slash inserter
- Convert HTML formatting whitespace to spaces
- Label link format with selected text, not full text
- Ensure permalink panel is only displayed when a permalink is allowed
- Allow the user to convert unembeddable URLs to links and try embedding again
- Improve the top bar tools interaction and consistency
- Fix overflowing content in the facebook embed preview screen
- Add an action to set a category icon and correct block categories documentation
- Fix: pasting a tag that is part of a transform and not matched ignores the content.
- Packages: Extract Eslint config package
- Add end-to-end test to catch revert of title during a preview after saving a draft
4.6.1
Changelog
- Parser: Make attribute parsing possessive (Fix High CPU usage).