Releases: WordPress/gutenberg
Releases · WordPress/gutenberg
4.1.0
- Implement a block navigation system that allows selecting child or parent blocks within nested blocks (like folder path traversal) as well as functioning as a general fast navigation system when a root block is selected.
- Add a Media & Text block that can facilitate the creation of split column content and allows the split to be resizable.
- Show block style selector in the block inspector.
- Rename Cover Image to just Cover and add support for video backgrounds.
- Add a new accessible Date Picker. This was months in the works.
- Reimplement the Color Picker component to greatly improve keyboard navigation and screenreader operations.
- Add style variation for Table block with stripe design.
- Add “Options” modal to toggle on/off the different document panels.
- Allow toggling visibility of registered meta-boxes from the “Options” modal.
- Handle cases where a block is on the page but the block is not registered by showing a dialog with the available options.
- Ensure compatibility with WordPress 5.0.
- When pasting single lines of text, treat them as inline text.
- Add ability to insert images from URL directly in the Image block.
- Make Columns block responsive.
- Make responsive embeds a theme option.
- Add direction attribute / LTR button to the Paragraph block.
- Display accurate updated and publish notices based on post type.
- Update buttons in the editor header area to improve consistency (save, revert to draft, etc).
- Avoid horizontal writing flow navigation in native inputs.
- Move toggle buttons to the left of their control handle.
- Add explicit bottom margin to figure elements (like image and embed).
- Allow transforming a Pullquote to a Quote and viceversa.
- Allow block inserter to search for blocks by typing their category.
- Add a label to the URL field in the Publishing Flow panel.
- Use the stored date format in settings for the LatestPosts block.
- Remove the placeholder text and use visible label instead in TokenField.
- Add translator comment for “View” menu label.
- Make YouTube embed classes consistent between front-end and back-end.
- Take into account citation when transforming a Quote to a Paragraph.
- Restore ⌘A’s “select all blocks” behaviour.
- Allow themes to disable custom font size functionality.
- Make missing custom font sizes labels translatable.
- Ensure cite is string when merging quote.
- Defer fetching non-hierarchical terms in FlatTermSelector.
- Move the theme support data previously exposed at the REST API index into a read-only theme controller for the active theme.
- Detect oEmbed responses where the oEmbed provider is missing.
- Use “Save as Pending” when the Pending checkbox is active.
- Use the post type’s REST controller class as autosave parent controller.
- Use post type labels in PostFeaturedImage component.
- Enforce text color within inline boundaries to ensure contrast and legibility.
- Add self-closing tag support (like path element) when comparing HTML.
- Make sure autocomplete triggers are regex safe.
- Silence PHP errors on REST API responses.
- Show permalink label as bold text.
- Change the block renderer controller endpoint and namespace from /gutenberg/v1/block-renderer/ to /wp/v2/block-renderer/.
- Hide “edit image” toolbar buttons when no image is selected.
- Hide “Add to Reusable Blocks” action when ‘core/block’ is disabled.
- Handle blocks passing null as RichText value.
- Improve validation for attribute names in rich-text toHTMLString.
- Allow to globally overwrite defined colors in PanelColorSettings.
- Fix regressions with Button block preview display.
- Fix issue with color picker not appearing on mobile.
- Fix publish buttons with long text.
- Fix link to manifest file in contributing file.
- Fix demo content crash on malformed URL.
- Fix issue in docs manifest.
- Fix media caption processing with the new RichText structure.
- Fix problem with Gallery losing assigned columns when alignments are applied.
- Fix an issue where the Categories block would always use the center class alignment regardless of what was set.
- Fix scroll issue on small viewports.
- Fix formatting in getEditorSettings docs and update getTokenSettings docs.
- Fix padding in block validation modal.
- Fix extra instances of old rich text value source.
- Fix issue with adding links from the auto-completer.
- Fix outdated docs for RichText.
- Fix pre-publish panel overflow issue.
- Fix missing styles for medium and huge font size classes.
- Fix autocomplete keyboard navigation in link popover.
- Fix a text selection exception in Safari.
- Fix WordPress embed URL resolution and embeds as reusable blocks.
- Avoid triggering a redirect when creating a new Table block.
- Only use rich text value internally to the RichText component.
- Ensure multiline prop is either “p” or “li” in RichText.
- Do not use dangerouslySetInnerHTML with i18n string.
- Account for null value in redux-routine createRuntime.
- Extract link container from RichText.
- Allow default_title, default_content, and default_excerpt filters to function as expected.
- Replace gutenberg in classNames with block-editor.
- Restore the order of actions usually fired in edit-form-advanced.php.
- Update REST Search controller to use ‘wp/v2’ namespace.
- Improve keyboard shortcuts section in FAQ.
- Change all occurrences of ‘new window’ to ‘new tab’.
- Conditionally load PHP classes in preparation for inclusion in core.
- Update rich-text source mentions in docs.
- Deprecate PanelColor components.
- Use mock response for demo test if Vimeo is down.
- Adding a bit more verbosity to the install script instructions.
- Document isDefault option for block styles.
- Update docs for new REST API namespace.
- Update shortcut docs with new block navigation menu shortcut.
- Further improve Release docs.
- Updated custom icon documentation links.
- Add all available script handles to documentation.
- Add wp-polyfill to scripts.md.
- Add e2e tests for List and Quote transformations.
- Fail CI build if local changes exist.
- Attempt to always use the latest version of nvm.
- Add bare handling for lint-js script.
- Add support for Webpack bundle analyzer.
- Improve setup of Lerna.
- Update clipboard dependency to at least 2.0.1.
- Recreate the demo content post as an e2e test using keyboard commands.
- Add mobile SVG compatibility for SVG block icons.
- Fix className style in SVG primitive.
- Split Paragraph and Heading blocks on enter.KEY. Refactor block splitting code on paragraph and heading blocks.
- Add caption support for image block.
- Rename PHP functions to prevent conflict with core
- Fix some typos
- Improve the Toggle Control elements DOM order for better accessibility
- Set correct media type for video poster image and manage focus properly.
- Implement fetchAllMiddleware to handle per_page=-1 through pagination in wp.apiFetch
- Fix Slash autocomplete: Support non-Latin inputs
- Add WordPress logo animation for preview
4.1.0-rc.2
- Fix fullscreen mode toggle
- Rename PHP functions to prevent conflict with core
- Fix the date picker styles
- Fix some typos
- Improve the Toggle Control elements DOM order for better accessibility
- Set correct media type for video poster image and manage focus properly.
- Avoid PHP notices due to non-available meta boxes
- Implement fetchAllMiddleware to handle per_page=-1 through pagination in wp.apiFetch
4.1 UI Freeze ❄️ (Release Candidate)
Changelog
- Implement a block navigation system that allows selecting child or parent blocks within nested blocks (like folder path traversal) as well as functioning as a general fast navigation system when a root block is selected.
- Add a Media & Text block that can facilitate the creation of split column content and allows the split to be resizable.
- Show block style selector in the block inspector.
- Rename Cover Image to just Cover and add support for video backgrounds.
- Add a new accessible Date Picker. This was months in the works.
- Reimplement the Color Picker component to greatly improve keyboard navigation and screenreader operations.
- Add style variation for Table block with stripe design.
- Add “Options” modal to toggle on/off the different document panels.
- Allow toggling visibility of registered meta-boxes from the “Options” modal.
- Handle cases where a block is on the page but the block is not registered by showing a dialog with the available options.
- Ensure compatibility with WordPress 5.0.
- When pasting single lines of text, treat them as inline text.
- Add ability to insert images from URL directly in the Image block.
- Make Columns block responsive.
- Make responsive embeds a theme option.
- Add direction attribute / LTR button to the Paragraph block.
- Display accurate updated and publish notices based on post type.
- Update buttons in the editor header area to improve consistency (save, revert to draft, etc).
- Avoid horizontal writing flow navigation in native inputs.
- Move toggle buttons to the left of their control handle.
- Add explicit bottom margin to figure elements (like image and embed).
- Allow transforming a Pullquote to a Quote and viceversa.
- Allow block inserter to search for blocks by typing their category.
- Add a label to the URL field in the Publishing Flow panel.
- Use the stored date format in settings for the LatestPosts block.
- Remove the placeholder text and use visible label instead in TokenField.
- Add translator comment for “View” menu label.
- Make YouTube embed classes consistent between front-end and back-end.
- Take into account citation when transforming a Quote to a Paragraph.
- Restore ⌘A’s “select all blocks” behaviour.
- Allow themes to disable custom font size functionality.
- Make missing custom font sizes labels translatable.
- Ensure cite is string when merging quote.
- Defer fetching non-hierarchical terms in FlatTermSelector.
- Move the theme support data previously exposed at the REST API index into a read-only theme controller for the active theme.
- Detect oEmbed responses where the oEmbed provider is missing.
- Use “Save as Pending” when the Pending checkbox is active.
- Use the post type’s REST controller class as autosave parent controller.
- Use post type labels in PostFeaturedImage component.
- Enforce text color within inline boundaries to ensure contrast and legibility.
- Add self-closing tag support (like path element) when comparing HTML.
- Make sure autocomplete triggers are regex safe.
- Silence PHP errors on REST API responses.
- Show permalink label as bold text.
- Change the block renderer controller endpoint and namespace from /gutenberg/v1/block-renderer/ to /wp/v2/block-renderer/.
- Hide “edit image” toolbar buttons when no image is selected.
- Hide “Add to Reusable Blocks” action when ‘core/block’ is disabled.
- Handle blocks passing null as RichText value.
- Improve validation for attribute names in rich-text toHTMLString.
- Allow to globally overwrite defined colors in PanelColorSettings.
- Fix regressions with Button block preview display.
- Fix issue with color picker not appearing on mobile.
- Fix publish buttons with long text.
- Fix link to manifest file in contributing file.
- Fix demo content crash on malformed URL.
- Fix issue in docs manifest.
- Fix media caption processing with the new RichText structure.
- Fix problem with Gallery losing assigned columns when alignments are applied.
- Fix an issue where the Categories block would always use the center class alignment regardless of what was set.
- Fix scroll issue on small viewports.
- Fix formatting in getEditorSettings docs and update getTokenSettings docs.
- Fix padding in block validation modal.
- Fix extra instances of old rich text value source.
- Fix issue with adding links from the auto-completer.
- Fix outdated docs for RichText.
- Fix pre-publish panel overflow issue.
- Fix missing styles for medium and huge font size classes.
- Fix autocomplete keyboard navigation in link popover.
- Fix a text selection exception in Safari.
- Fix WordPress embed URL resolution and embeds as reusable blocks.
- Avoid triggering a redirect when creating a new Table block.
- Only use rich text value internally to the RichText component.
- Ensure multiline prop is either “p” or “li” in RichText.
- Do not use dangerouslySetInnerHTML with i18n string.
- Account for null value in redux-routine createRuntime.
- Extract link container from RichText.
- Allow default_title, default_content, and default_excerpt filters to function as expected.
- Replace gutenberg in classNames with block-editor.
- Restore the order of actions usually fired in edit-form-advanced.php.
- Update REST Search controller to use ‘wp/v2’ namespace.
- Improve keyboard shortcuts section in FAQ.
- Change all occurrences of ‘new window’ to ‘new tab’.
- Conditionally load PHP classes in preparation for inclusion in core.
- Update rich-text source mentions in docs.
- Deprecate PanelColor components.
- Use mock response for demo test if Vimeo is down.
- Adding a bit more verbosity to the install script instructions.
- Document isDefault option for block styles.
- Update docs for new REST API namespace.
- Update shortcut docs with new block navigation menu shortcut.
- Further improve Release docs.
- Updated custom icon documentation links.
- Add all available script handles to documentation.
- Add wp-polyfill to scripts.md.
- Add e2e tests for List and Quote transformations.
- Fail CI build if local changes exist.
- Attempt to always use the latest version of nvm.
- Add bare handling for lint-js script.
- Add support for Webpack bundle analyzer.
- Improve setup of Lerna.
- Update clipboard dependency to at least 2.0.1.
- Recreate the demo content post as an e2e test using keyboard commands.
- Add mobile SVG compatibility for SVG block icons.
- Fix className style in SVG primitive.
- Split Paragraph and Heading blocks on enter.KEY. Refactor block splitting code on paragraph and heading blocks.
- Add caption support for image block.
4.0 🍯
Changelog
New Features
- Add ability to change overlay color in Cover Image.
- Introduce new Font Size Picker with clear labels and size comparison.
- Introduce new RichText data structure to allow better manipulation of inline content.
- Add Pullquote style variation and color palette support.
- Add support for post locking when multiple authors interact with the editor.
- Add an alternative block appender when the container doesn’t support the default block (paragraph).
- Improve the UI and interactions around floats.
- Add option to skip PublishSidebar on publishing.
- Add support for shortcode embeds that enqueue scripts.
- Add a button to exit the Code Editor.
- Introduce a reusable ResizableBox component.
- Style nested
<ul>
s with circles instead of normal bullets. - Show hierarchical terms sorted by name and allow them to be filterable through search. Hide the filter box if there are fewer than 8 terms.
- Improve messaging around invalid block detection.
- Use text color for links when a paragraph has a color applied.
- Allow extended usage of the controls API in resolvers within data layer.
- Ensure that a default block is inserted (and selected) when all other blocks are removed.
- Enhance the block parser to support multiple type, in accordance with JSON schema.
- Add a larger target area for resize drag handles.
- Add media button to classic block.
- Add control to toggle responsive mechanism on embed blocks.
- Update sidebar design to have a lighter feeling.
- Update resolvers in data layer to rely on controls instead of async generators.
- Set template validity on block reset.
- Remove dirty detection from Meta Boxes to reduce false positives of “unsaved changes”.
- Show “Publish: Immediately” for new drafts by inferring floating date.
- Add a slight transition to Full Screen mode.
- Improve spacing setup in Gallery Block.
- Remove additional side padding from blocks.
- Improve the reusable blocks “Export as JSON” link.
- Enforce a default block icon size to allow flex alignment and fix unaligned labels.
- Consider single unmodified default block as empty content.
- Only display URL input field when “Link To” is set for Image Block.
- Make backspace behavior consistent among Quote, Verse and Preformatted.
- Expose refresh method from Dropdown component.
- Omit style tags when pasting.
- Use best fitting embed aspect ratio if exact match doesn’t exist.
- Avoid dispatching undefined results in promise middleware.
- Change keyboard shortcut for removing a block to access + z.
- Replace the Full Screen mode “x” icon with a back arrow.
- Make drag handle visible on hover while in nested contexts.
- Pass the tab title to the TabPanel component for situations where it may need to be highlighted.
- Allow setting no alignment when a default alignment exists.
- Improve title and appender margin fix.
- Avoid focusing on the close button on modal and try a modal appear animation.
- Change the URL Input label to match Classic.
- Adjust media upload source for RichText.
- Handle edge cases in with-constrained-tabbing and add tests.
- Set a consistent input field width in media placeholders.
- Add a hover state to sidebar panel headers.
- Change settings title from “Writing” to “View”.
- Convert the “tools” menu group into internal plugin.
- Normalize data types and fix default implementation in parser.
- Cleanup CSS specificity issues on Button component for portability.
- Display error when attempting to embed URLs that can’t be embedded and don’t generate a fallback.
- Update some edit and save button labels and styles for consistency.
- Make “Manage Reusable Blocks” a link instead of an icon button.
Bug Fixes
- Fix issue with Enter and the Read More block.
- Fix menu item hover colors.
- Fix issue with editor styles and fullscreen mode.
- Fix popover link repositioning.
- Fix Space Block layout issues on small screens.
- Fix custom classNames for dynamic blocks.
- Fix spacing of post-publish close button in other languages.
- Fix Async Generator resolvers resolution.
- Fix issue with Spacer Block not being resizable when using unified toolbar and spotlight mode.
- Fix grammar.md manifest entry and update data docs.
- Fix issue with region focus on the header area on IE11.
- Fix reusable block broken button dimensions on IE11.
- Fix issues with dropping blocks after dragging when calculating new block index.
- Fix InnerBlock templates sync conditions to avoid a forced locking.
- Fix typo in @wordpress/api-fetch README.md.
- Fix regression with Button Block placeholder text.
- Fix dropzone issue in Edge (event.dataTransfer.types not being an array).
- Fix documentation for registerBlockStyle arguments and clarify getSaveElement filter.
- Fix raw transforms not working in Edge when pasting content.
- Fix a regression where wide images would cause horizontal scrollbars.
- Fix issue with gallery margin while typing a caption.
- Fix Block alignment CSS rules affecting nested blocks.
- Fix CSS issue with nested paragraph placeholder.
- Fix links in docs and add documentation for isPublishSidebarEnabled.
- Fix shortcode package dependencies.
- Fix overscroll issues locking scroll up on long pages.
- Fix reference to SVG component in docs.
- Fix Table Block header and body column misalignment.
- Fix an issue where inserting like breaks would throw an error.
- Fix regressions with placeholder text color (Cover Image, captions).
- Fix Editor Styles regression.
- Fix faulty Jed state after setLocaleData.
- Fix small line-height issue in editor style.
- Fix Pullquote margin regressions.
- Fix issues with File Block and new RichText structures.
- Fix Writing Flow E2E test.
- Fix issues with “tips” popup margins.
- Fix issue with mentions after rich text value merge.
- Fix clipping issue with Instagram embed.
- Fix ESNext example code.
- Fix usage of tabs / spaces in parser code.
- Fix Classic Block toolbar regression.
- Fix issues with Table Block alignments.
- Fix inserter misalignment regression.
Other Changes
- Minor i18n fixes after deprecations were removed.
- Rename parameter from mapStateToProps to mapSelectToProps in withSelect.
- Rename AccessibleSVG to SVG and make it work with React Native.
- Change createObjectUrl to createBlobURL.
- Clean up Sass variables, comments, reduce complexity.
- Move Classic Block to packages.
- Move HTML Block into the blocks library package.
- Move embed scripts into the body in preview documents.
- Ensure that the return value of apiFetch is always a valid Promise object in Firefox.
- Allow negative numbers in order field for Page Attributes.
- Make sure the demo page loads without marking itself as having changes.
- Refactor MediaUpload, MediaPlaceholder, and mediaUpload to support arrays with multiple supported types.
- Add new icons to dashicons package.
- Add link to “add_theme_support” docs.
- Remove glob and just include necessary files.
- Remove unused isButton prop.
- Remove Vine embed.
- Replace length check with RichText.isEmpty in Image Block.
- Replace TinyMCE function to decode entities with existing Gutenberg package.
- Extract the edit-post module as a reusable package.
- Pass editor initial settings as direct argument.
- Pass feature image ID to media upload component.
- Pass all available properties in the media object.
- Replace element-closest with registered vendor script.
- Add new handbook introduction and docs about “blocks as the interface”.
- Add utils to the wp-data script dependencies.
- Disable alternate diff drivers in setup script.
- Clarify RichText.Content readme docs.
- Document
isDefault
option for block styles. - Update Panel component documentation.
- Update full post content test fixtures.
- Add ESLint rule about not allowing string literals in IDs.
- Add a test for the new Code → Preformatted transform and use snapshots.
- Add E2E test to visit demo page and verify errors.
- Add E2E tests for list creation.
- Update Redux to the latest version.
Mobile
- Add the React Native entry point to more packages.
- Need to define isRichTextValueEmpty for mobile.
- Have Travis run mobile tests that use the parent code.
- Wire onEnter to requestHTMLWithCursor command in RichText.
4.0 Release Candidate 🍯
Changelog
New Features
- Add ability to change overlay color in Cover Image.
- Introduce new Font Size Picker with clear labels and size comparison.
- Introduce new RichText data structure to allow better manipulation of inline content.
- Add Pullquote style variation and color palette support.
- Add support for post locking when multiple authors interact with the editor.
- Add an alternative block appender when the container doesn’t support the default block (paragraph).
- Improve the UI and interactions around floats.
- Add option to skip PublishSidebar on publishing.
- Add support for shortcode embeds that enqueue scripts.
- Add a button to exit the Code Editor.
- Introduce a reusable ResizableBox component.
- Style nested
<ul>
s with circles instead of normal bullets. - Show hierarchical terms sorted by name and allow them to be filterable through search. Hide the filter box if there are fewer than 8 terms.
- Improve messaging around invalid block detection.
- Use text color for links when a paragraph has a color applied.
- Allow extended usage of the controls API in resolvers within data layer.
- Ensure that a default block is inserted (and selected) when all other blocks are removed.
- Enhance the block parser to support multiple type, in accordance with JSON schema.
- Add a larger target area for resize drag handles.
- Add media button to classic block.
- Add control to toggle responsive mechanism on embed blocks.
- Update sidebar design to have a lighter feeling.
- Update resolvers in data layer to rely on controls instead of async generators.
- Set template validity on block reset.
- Remove dirty detection from Meta Boxes to reduce false positives of “unsaved changes”.
- Show “Publish: Immediately” for new drafts by inferring floating date.
- Add a slight transition to Full Screen mode.
- Improve spacing setup in Gallery Block.
- Remove additional side padding from blocks.
- Improve the reusable blocks “Export as JSON” link.
- Enforce a default block icon size to allow flex alignment and fix unaligned labels.
- Consider single unmodified default block as empty content.
- Only display URL input field when “Link To” is set for Image Block.
- Make backspace behavior consistent among Quote, Verse and Preformatted.
- Expose refresh method from Dropdown component.
- Omit style tags when pasting.
- Use best fitting embed aspect ratio if exact match doesn’t exist.
- Avoid dispatching undefined results in promise middleware.
- Change keyboard shortcut for removing a block to access + z.
- Replace the Full Screen mode “x” icon with a back arrow.
- Make drag handle visible on hover while in nested contexts.
- Pass the tab title to the TabPanel component for situations where it may need to be highlighted.
- Allow setting no alignment when a default alignment exists.
- Improve title and appender margin fix.
- Avoid focusing on the close button on modal and try a modal appear animation.
- Change the URL Input label to match Classic.
- Adjust media upload source for RichText.
- Handle edge cases in with-constrained-tabbing and add tests.
- Set a consistent input field width in media placeholders.
- Add a hover state to sidebar panel headers.
- Change settings title from “Writing” to “View”.
- Convert the “tools” menu group into internal plugin.
- Normalize data types and fix default implementation in parser.
- Cleanup CSS specificity issues on Button component for portability.
- Display error when attempting to embed URLs that can’t be embedded and don’t generate a fallback.
- Update some edit and save button labels and styles for consistency.
- Make “Manage Reusable Blocks” a link instead of an icon button.
Bug Fixes
- Fix issue with Enter and the Read More block.
- Fix menu item hover colors.
- Fix issue with editor styles and fullscreen mode.
- Fix popover link repositioning.
- Fix Space Block layout issues on small screens.
- Fix custom classNames for dynamic blocks.
- Fix spacing of post-publish close button in other languages.
- Fix Async Generator resolvers resolution.
- Fix issue with Spacer Block not being resizable when using unified toolbar and spotlight mode.
- Fix grammar.md manifest entry and update data docs.
- Fix issue with region focus on the header area on IE11.
- Fix reusable block broken button dimensions on IE11.
- Fix issues with dropping blocks after dragging when calculating new block index.
- Fix InnerBlock templates sync conditions to avoid a forced locking.
- Fix typo in @wordpress/api-fetch README.md.
- Fix regression with Button Block placeholder text.
- Fix dropzone issue in Edge (event.dataTransfer.types not being an array).
- Fix documentation for registerBlockStyle arguments and clarify getSaveElement filter.
- Fix raw transforms not working in Edge when pasting content.
- Fix a regression where wide images would cause horizontal scrollbars.
- Fix issue with gallery margin while typing a caption.
- Fix Block alignment CSS rules affecting nested blocks.
- Fix CSS issue with nested paragraph placeholder.
- Fix links in docs and add documentation for isPublishSidebarEnabled.
- Fix shortcode package dependencies.
- Fix overscroll issues locking scroll up on long pages.
- Fix reference to SVG component in docs.
- Fix Table Block header and body column misalignment.
- Fix an issue where inserting like breaks would throw an error.
- Fix regressions with placeholder text color (Cover Image, captions).
- Fix Editor Styles regression.
- Fix faulty Jed state after setLocaleData.
- Fix small line-height issue in editor style.
- Fix Pullquote margin regressions.
- Fix issues with File Block and new RichText structures.
- Fix Writing Flow E2E test.
- Fix issues with “tips” popup margins.
- Fix issue with mentions after rich text value merge.
- Fix clipping issue with Instagram embed.
- Fix ESNext example code.
- Fix usage of tabs / spaces in parser code.
- Fix Classic Block toolbar regression.
- Fix issues with Table Block alignments.
- Fix inserter misalignment regression.
Other Changes
- Minor i18n fixes after deprecations were removed.
- Rename parameter from mapStateToProps to mapSelectToProps in withSelect.
- Rename AccessibleSVG to SVG and make it work with React Native.
- Change createObjectUrl to createBlobURL.
- Clean up Sass variables, comments, reduce complexity.
- Move Classic Block to packages.
- Move HTML Block into the blocks library package.
- Move embed scripts into the body in preview documents.
- Ensure that the return value of apiFetch is always a valid Promise object in Firefox.
- Allow negative numbers in order field for Page Attributes.
- Make sure the demo page loads without marking itself as having changes.
- Refactor MediaUpload, MediaPlaceholder, and mediaUpload to support arrays with multiple supported types.
- Add new icons to dashicons package.
- Add link to “add_theme_support” docs.
- Remove glob and just include necessary files.
- Remove unused isButton prop.
- Remove Vine embed.
- Replace length check with RichText.isEmpty in Image Block.
- Replace TinyMCE function to decode entities with existing Gutenberg package.
- Extract the edit-post module as a reusable package.
- Pass editor initial settings as direct argument.
- Pass feature image ID to media upload component.
- Pass all available properties in the media object.
- Replace element-closest with registered vendor script.
- Add new handbook introduction and docs about “blocks as the interface”.
- Add utils to the wp-data script dependencies.
- Disable alternate diff drivers in setup script.
- Clarify RichText.Content readme docs.
- Document
isDefault
option for block styles. - Update Panel component documentation.
- Update full post content test fixtures.
- Add ESLint rule about not allowing string literals in IDs.
- Add a test for the new Code → Preformatted transform and use snapshots.
- Add E2E test to visit demo page and verify errors.
- Add E2E tests for list creation.
- Update Redux to the latest version.
Mobile
- Add the React Native entry point to more packages.
- Need to define isRichTextValueEmpty for mobile.
- Have Travis run mobile tests that use the parent code.
- Wire onEnter to requestHTMLWithCursor command in RichText.
3.9.0 🍒
Changelog
- 🏗 Add support for creating reusable blocks out of multi-selected groups of blocks not just individual blocks. This means the ability to easily save templates out of an existing set of blocks.
- 🚀 Add support for importing and exporting reusable blocks (using a JSON file transport). Note that locality of resources can be a problem if importing on a separate WordPress site.
- 🔍 Allow to visually show differences between conversion options when a block is detected as invalid.
- Add a clear drag handle next to the block arrow controls to drag and move a block. Also further polishes the drag and drop experience.
- Instrument collapsible groups for the block toolbar. It allows to display groups of options as a dropdown and reduce the length and imposition of the toolbar as a whole.
- Allow conversion from Cover Image to Image and back, using caption if it exists as the main text.
- Move the reusable block UI options to the top of the block or block group.
- Focus the title when loading the editor if it’s empty.
- Adjust margin rules for nested blocks.
- Preserve aspect ratio on embedded content at different alignments and widths.
- Unselect blocks and disable inserter when switching to Code Editor.
- Add new default block icon (used when no icon is defined).
- Avoid showing stacked icon group on parent blocks if all of its children are meant to be hidden from the inserter.
- Add dark editor style support.
- Add a figure wrapper to Pullquote block.
- Add needed attributes to kses allowed tags for the Gallery block.
- Improve visual display of Classic block toolbar.
- Adjust unified block toolbar padding at medium breakpoints.
- Better align the close, chevrons, and ellipsis icons in the sidebar panel.
- Improve cropping of galleries in IE11.
- Adjust gallery caption flex alignment.
- Include Caption Styles in Video Block.
- Update RichText usage to avoid inline elements.
- Add shortcut aria label for unreadable shortcuts.
- Avoid triggering invalid block mechanisms on empty HTML content.
- Rename the Speaker block to Speaker Deck.
- Disable inserter on Column block and avoid showing stacked icon on columns.
- Send post_id to the REST API in the ServerSideRender component within the editor. This ensures the global $post object is set properly.
- Use pseudo element to prevent inspector tab width from changing when selected.
- Apply consistent spacing on the post visibility menu.
- Fix notice styling regression.
- Fix ability to select small table cells.
- Fix issue with drag and drop in Chrome when the document has iframes.
- Fix HTML validation issues.
- Fix margin style regression with block appender.
- Fix link source for outreach/articles.
- Fix Archives block alignment and issue with custom classes.
- Fix error when a taxonomy has no attached post type.
- Fix invalid block scrim overflowing toolbar on mobile.
- Fix block settings menu appearance in non wp-admin contexts.
- Fix incorrect unlink shortcut.
- Fix placeholder text contrast.
- Fix issue with shortcut inserter on invalid paragraphs.
- Fix camelCase and cross-component class name.
- Fix qs dependency typo.
- Pluralize “kind” to fix typo.
- Remove isButton prop.
- Remove wrapper div from Categories block.
- Remove prop-type-like check in Popover component.
- Remove unnecessary duplicated class from Embed placeholder.
- Flatten BlockListLayout into base BlockList.
- Add isEmptyElement utility function under wp.Element.
- Use HTML Document for finding iframe in embed previews.
- Add wp-polyfill as central polyfill.
- Update docke-compose setup order to create MySQL container before WordPress container.
- Improve comments in transforms object of Quote block.
- Do not assume that singular form in _n() is used just for single item.
- Update examples for components to look according to guidelines.
- Update release docs to include process for RC.
- Add simplified block grammar spec to the handbook.
- Add lint rule for path on Lodash property functions.
- Add user for cli image in docker-compose.
- Show lint errors when there are lint problems.
- Minor updates and improvements to documents and code references.
- Improve docs build to consider memoized selectors.
- Add Heading toolbar for changing heading sizes.
- Save level to heading block attributes for parsing.
- Add onEnter callback and function placeholder to RichText implementation.
- Add Image block placeholder.
- Avoid propagating eventCount to components.
- Parser: Output freeform content before void blocks.
- Fix export block as JSON in IE11 and Firefox.
- Update demo content to avoid invalidations or automated post updates.
3.9.0 (Release Candidate) 🏗
- 🏗 Add support for creating reusable blocks out of multi-selected groups of blocks not just individual blocks. This means the ability to easily save templates out of an existing set of blocks.
- 🚀 Add support for importing and exporting reusable blocks (using a JSON file transport). Note that locality of resources can be a problem if importing on a separate WordPress site.
- 🔍 Allow to visually show differences between conversion options when a block is detected as invalid.
- Add a clear drag handle next to the block arrow controls to drag and move a block. Also further polishes the drag and drop experience.
- Instrument collapsible groups for the block toolbar. It allows to display groups of options as a dropdown and reduce the length and imposition of the toolbar as a whole.
- Allow conversion from Cover Image to Image and back, using caption if it exists as the main text.
- Move the reusable block UI options to the top of the block or block group.
- Focus the title when loading the editor if it’s empty.
- Adjust margin rules for nested blocks.
- Preserve aspect ratio on embedded content at different alignments and widths.
- Unselect blocks and disable inserter when switching to Code Editor.
- Add new default block icon (used when no icon is defined).
- Avoid showing stacked icon group on parent blocks if all of its children are meant to be hidden from the inserter.
- Add dark editor style support.
- Add a figure wrapper to Pullquote block.
- Add needed attributes to kses allowed tags for the Gallery block.
- Improve visual display of Classic block toolbar.
- Adjust unified block toolbar padding at medium breakpoints.
- Better align the close, chevrons, and ellipsis icons in the sidebar panel.
- Improve cropping of galleries in IE11.
- Adjust gallery caption flex alignment.
- Include Caption Styles in Video Block.
- Update RichText usage to avoid inline elements.
- Add shortcut aria label for unreadable shortcuts.
- Avoid triggering invalid block mechanisms on empty HTML content.
- Rename the Speaker block to Speaker Deck.
- Disable inserter on Column block and avoid showing stacked icon on columns.
- Send post_id to the REST API in the ServerSideRender component within the editor. This ensures the global $post object is set properly.
- Use pseudo element to prevent inspector tab width from changing when selected.
- Apply consistent spacing on the post visibility menu.
- Fix notice styling regression.
- Fix ability to select small table cells.
- Fix issue with drag and drop in Chrome when the document has iframes.
- Fix HTML validation issues.
- Fix margin style regression with block appender.
- Fix link source for outreach/articles.
- Fix Archives block alignment and issue with custom classes.
- Fix error when a taxonomy has no attached post type.
- Fix invalid block scrim overflowing toolbar on mobile.
- Fix block settings menu appearance in non wp-admin contexts.
- Fix incorrect unlink shortcut.
- Fix placeholder text contrast.
- Fix issue with shortcut inserter on invalid paragraphs.
- Fix camelCase and cross-component class name.
- Fix qs dependency typo.
- Pluralize “kind” to fix typo.
- Remove isButton prop.
- Remove wrapper div from Categories block.
- Remove prop-type-like check in Popover component.
- Remove unnecessary duplicated class from Embed placeholder.
- Flatten BlockListLayout into base BlockList.
- Add isEmptyElement utility function under wp.Element.
- Use HTML Document for finding iframe in embed previews.
- Add wp-polyfill as central polyfill.
- Update docke-compose setup order to create MySQL container before WordPress container.
- Improve comments in transforms object of Quote block.
- Do not assume that singular form in _n() is used just for single item.
- Update examples for components to look according to guidelines.
- Update release docs to include process for RC.
- Add simplified block grammar spec to the handbook.
- Add lint rule for path on Lodash property functions.
- Add user for cli image in docker-compose.
- Show lint errors when there are lint problems.
- Minor updates and improvements to documents and code references.
- Improve docs build to consider memoized selectors.
- Add Heading toolbar for changing heading sizes.
- Save level to heading block attributes for parsing.
- Add onEnter callback and function placeholder to RichText implementation.
- Add Image block placeholder.
- Avoid propagating eventCount to components.
- Parser: Output freeform content before void blocks.
- Fix export block as JSON in IE11 and Firefox.
3.8.0 📺
- Add Full Screen mode. 📺
- Add UI for bulk managing reusable blocks.
- Implement a more sophisticated Editor Styles mechanism. 🖍 It allows themes to register editor styles for blocks by targeting the blocks themselves without having to fight CSS specificity, and without having to know the internal DOM structure for the editor.
- Move the block settings menu to the block toolbar, further consolidating the UI elements.
- Switch to a new hand-coded default block parser implementation and expand documentation.
-
- Implemented in both PHP and JS.
-
- Brings great performance improvements in both time and memory.
-
- Makes server-side parsing in PHP viable for accessing blocks as a tree.
- Use flex-box to render the block inserter layout to address different issues with spacing.
- Show a warning when a disallowed filetype is dropped on a MediaUpload.
- Show "no archives to show" message on Archives Block.
- Add AccessibleSVG component and use consistently for block icons.
- Improve Classic editor and Cloudflare notification modals.
- Refactor Draggable component to decouple the drag handle from the DOM node being dragged.
- Move video caption styles to style.scss.
- Treat Verse lines consistently on the front-end.
- Make sure all available taxonomies are loaded in the editor.
- Improve empty elements filters in Slot implementation.
- Fix case with PostTextEditor where intended state value is not always reflected in the rendered textarea when empty.
- Fix background clashing with some themes in Separator alternative styles.
- Fix case where hasSelectedInnerBlock did not account for multi-selected innerBlocks. This caused an edge case in Spotlight mode where multiple blocks selected inside a column would appear unfocused.
- Fix regression with margins around image captions.
- Fix issue with author select overflowing on IE11.
- Fix the publish panel top position in FullScreen mode.
- Fix radio button alignment in post visibility menu.
- Fix issues with centering of images.
- Fix BlockIcon usage in embed placeholder when resource cannot be previewed.
- Fix font size regression in PostTitle.
- Fix codetabs block in extensibility documentation.
- Fix import source of RangeControl in Readme file.
- Fix broken link in documentation inside element/README.md.
- Deprecate usage of RichText provider component.
- Deprecate getI18n, dcnpgettext.
- Remove deprecated selectors from docs.
- Revert shortcut change in block-deletion e2e test.
- Pin fetch polyfill to 3.0 UMD distributable to resolve an issue where it was no longer usable in IE11.
- Ensure Gutenberg repository is clean after install.
- Include block serialization default parser in plugin.
- Change how required built-ins are polyfilled with Babel 7.
3.8.0 Release Candidate 📺
Changelog
- Add Full Screen mode. 📺
- Add UI for bulk managing reusable blocks.
- Implement a more sophisticated Editor Styles mechanism. 🖍 It allows themes to register editor styles for blocks by targeting the blocks themselves without having to fight CSS specificity, and without having to know the internal DOM structure for the editor.
- Move the block settings menu to the block toolbar, further consolidating the UI elements.
- Introduce new hand-coded implementation of spec parser and expand documentation.
- Use flexbox to render the block inserter layout to address different issues with spacing.
- Show a warning when a disallowed filetype is dropped on a MediaUpload.
- Show “no archives to show” message on Archives Block.
- Add AccessibleSVG component and use consistently for block icons.
- Improve Classic editor and Cloudflare notification modals.
- Refactor Draggable component to decouple the drag handle from the DOM node being dragged.
- Move video caption styles to style.scss.
- Treat Verse lines consistently on the front-end.
- Make sure all available taxonomies are loaded in the editor.
- Improve empty elements filters in Slot implementation.
- Fix case with PostTextEditor where intended state value is not always reflected in the rendered textarea when empty.
- Fix background clashing with some themes in Separator alternative styles.
- Fix case where hasSelectedInnerBlock did not account for multi-selected innerBlocks. This caused an edge case in Spotlight mode where multiple blocks selected inside a column would appear unfocused.
- Fix regression with margins around image captions.
- Fix issue with author select overflowing on IE11.
- Fix radio button alignment in post visibility menu.
- Fix issues with centering of images.
- Fix BlockIcon usage in embed placeholder when resource cannot be previewed.
- Fix font size regression in PostTitle.
- Fix codetabs block in extensibility documentation.
- Fix import source of RangeControl in Readme file.
- Fix broken link in documentation inside element/README.md.
- Deprecate usage of RichText provider component.
- Deprecate getI18n, dcnpgettext.
- Remove deprecated selectors from docs.
- Revert shortcut change in block-deletion e2e test.
- Ensure Gutenberg repository is clean after install.
- Change how required built-ins are polyfilled with Babel 7.
3.5 🥥
- Add an edit button to embed blocks to modify the source.
- Improve margin collapse within column blocks.
- De-emphasize inline tokens within the inserter for a better user experience.
- Polish focus and active styles around buttons and inputs.
- Polish styles for checkbox component, update usages of toggle to checkbox where appropriate. Update documentation.
- Improve pre-publish panel styling and textual copy.
- Prevent duplicate DotTips from appearing.
- Integrate "queries data" into the entities abstraction for data module.
- Hide block movers if there are no blocks before and after.
- Initial improvements for responsive image handling in galleries.
- Use correct color for primary button bottom border.
- Allow transitioning post status from scheduled to draft.
- Improvements for auto-completer keyboard interactions.
- Place strikethrough formatting button after link as it's less important.
- Resolve issue with preview sometimes opening redundant tabs.
- Align timepicker with calendar on pre-publish panel.
- Expand date filter select box width within media library.
- Constrain media blocks to content area width in front-end.
- Reapply box-sizing to slider thumbs.
- Avoid showing line separator in block settings menu when it's the last item.
- Introduce additional keyboard shortcuts to navigate through the
navigateRegions
component.shift+alt+n
to go to the next region.shift+alt+p
to go to the previous region.
- Replace all withAPIData usage and deprecate the higher-order component.
- Add persistence via data plugin interface.
- Introduce new redux-routine package for synchronous generator in data module.
- Move embed API call out of block and into data module.
- Remove no longer needed workaround targeted at resolving a TinyMCE error.
- Abort selection range set on unset range target. Resolves an issue when merging two empty paragraph blocks created while at the end of an inline boundary.
- Removing or merging RichText should only trigger if the selection is collapsed:
- Fix issue with backspace not working as expected when deleting text content from the first block.
- Fix case where paragraph content could move to previous paragraph when deleted.
- Remove provisional block behaviour to improve reliability of various interactions.
- Restore horizontal edge traversal implementation to address issue where pressing Backspace may not place the caret in the correct position if within or after a RichText field.
- Ensure Gutenberg is disabled when editing the assigned blog posts page.
- Initialize the Autosaves controller even if revisions are disabled. Fixes several bugs around saving with revisions turned off.
- Display warning when Cloudflare blocks REST API requests.
- Improve validation for attribute names in serializer.
- Add Slot to block menu settings for extensibility.
- Fix File Block center align behavior.
- Fix behaviours when deleting on an empty RichText field.
- Fix parent-dropdown missing for custom post-types.
- Fix import style statements in ColorIndicator.
- Fix height of used-once block warning.
- Fix link for innerBlocks docs.
- Fix link to server-side-render component.
- Fix race condition with DomReady.
- Fix awkward capitalisation in demo post content.
- Fix warning for unrecognised
forwardedRef
prop. - Fix regression with URL input focus box.
- Fix error in custom HTML preview when block is empty.
- Fix colspan bug in table block for tables with
thead
tags. - Fix issue with image inspector controls disappearing once an image block is set to wide/full alignment.
- Fix issue when image size remains blurry if manually set to a smaller size (i.e., medium) and then changed alignment to wide/full.
- Fix issue with meta boxes being absent when script enqueued in head depends on
wp-edit-post
. - Resolve an issue where removing all text from a Button block by backspace would cause subsequent text changes to not be accurately reflected. Broader issue with TinyMCE inline elements as containers.
- Avoid using remove() because it's unavailable in IE11.
- Address further feedback on duplicated DotTips implementation.
- Update re-resizable to version 4.7.1 — fix image & spacer blocks resizing on IE.
- Use a unique querystring package instead of three different ones.
- Introduce filters to allow developers the ability to customize the Taxonomy Selector UI for custom taxonomies.
- Introduce RichText component for mobile native and implement the Paragraph Block with it.
- Use standard label for Alt Text input.
- Consolidate similar i18n strings.
- Remove title attributes from the Classic Editor warning.
- Remove unused code in taxonomies panel.
- Remove oEmbed fixture files.
- Remove jQuery dependency from @wordpress/api-fetch.
- Remove filler spaces from empty constructs.
- Remove REST API shims for code introduced in WP 4.9.8.
- Remove unused terms, taxonomies, and categories code.
- Replace the apiRequest module with api-fetch module.
- Add inline comment that explains a stopPropagation() within tips implementation.
- Add
gutenberg_can_edit_post
filter. - Add watch support for stylesheets in packages.
- Add JSDoc comment to Popover's focus() method.
- Add readme docs for <a href="https://github.c...