What’s new in Gutenberg? (25th January)

This release iterates further on some design and writing flow details — lighter up/down movers, engaging the UI-less focus mode more often, etc. It also brings many extensibility API improvements, exposing internal editor state through selectors, enhancements to the meta-box handling, and implements the "Copy All" button as if it was a plugin as an example of how to leverage native hooks.

2.1 🦔

  • Iterate on the design of up/down arrows and how focus is managed. This seeks to further reduce the visual and cognitive weight of the up/down movers.
  • Show immediate visual feedback when dragging and dropping images into the editor. (Expands on the previous release work.)
  • Expose state through data module using selectors. This is an important piece of the extensibility puzzle.
  • New button outline and focus styles.
  • Show original block icon after converting to reusable block. Also hides the generic reusable block from inserters. This moves data logic out of the inserter.
  • Introduce a migration function for block versioning.
  • Add HTML handler to dropzone. Allows drag and dropping images from other web pages directly.
  • Trigger typing mode when ENTER or BACKSPACE are pressed. This improves the writing flow but engaging the UI-less mode more frequently.

Other changes:

What's next?

As we approach the final stages of features, we are looking at finalizing the nested blocks interface (with its own Columns component), some remaining important extensibility hooks for plugins, and adding drag-drop functionality for moving and inserting blocks. ⛰

#core-editor, #editor, #gutenberg

Dev Chat Summary: January 17th (4.9.3 week 1)

This post summarizes the dev chat meeting from January 17th (agenda, Slack archive).

4.9.2 release

  • 4.9.2 was released yesterday.
  • This is a security and maintenance release for all versions since WordPress 3.7. We strongly encourage you to update your sites immediately.

4.9.3 planning

  • Updated timeline is 4.9.3-beta1 on Tuesday, January 23rd; RC on Monday, January 29th; and still aim for Tuesday, January 30th for release.
  • Currently no major bugs, so planning for a regular maintenance release.
  • Bug scrub times will be announced on Make/Core.
  • 4.9.3 beta will get a Make/Core post to help get people's attention on it.

Updates from focus leads and component maintainers

  • The Editor team recently released Gutenberg v2.0 and will begin regular Gutenberg bug scrubs at 17:00 UTC on Thursdays separately from their weekly meeting. Please ping @jbpaul17 (@jeffpaul on Slack) if you have interest in assisting with bug scrubs.
  • The REST API team wants to get dev opinions on a register_meta change proposal that will becoming to a Make/Core post soon.

General announcements

  • @jorbin: Reminder that breaking changes (even if they are only breaking code that was publicly released for a few months) should always have a Dev Note published on Make/Core.
    • 4.8 and 4.9 had shorter beta/RC windows. It would be interesting to analyze and see how that affected bugs reported during those windows and in the near term after release. It would also be interesting to see how that affected the number of reverts. That data might show longer beta/RC windows are necessary, but we should not rush a decision without numbers backing up the analysis.
    • Note that @jbpaul17 added a step to check for dev notes to the Releasing Minor Versions handbook page.

Next meeting

The next meeting will take place on January 24, 2018 at 21:00 UTC / January 24, 2018 at 21:00 UTC in the #core Slack channel. Please feel free to drop in with any updates or questions. If you have items to discuss but cannot make the meeting, please leave a comment on this post so that we can take them into account.

#4-9-2, #4-9-3, #core, #core-editor, #core-restapi, #dev-chat, #gutenberg, #summary

What’s new in Gutenberg? (12th January)

Hope everyone has had some good time! We are resuming the releases of Gutenberg for this new year. The first one — 2.0 — is rather big, with updates across the board. The highlights cover several pasting improvements, a more polished publish flow, block API tweaks and extensibility additions, various accessibility improvements, block library updates (like new querying by category in latest posts), etc.

2.0 🦕

Design and editing experience

Components

Accessibility

Mobile

  • Render toolbar always by the block on mobile.
  • Improve performance of responsive calculations using matchMedia.
  • Avoid shifts around toolbar and scrolling issues on mobile.
  • Improve how the fixed-to-block toolbar looks on mobile. Change how the fixed position toolbars behave, making them sticky.
  • Prevent Mobile Safari from zooming the entire page when you open the inserter.

Block API and Misc.

Bug Fixes

#core-editor, #editor, #gutenberg

Dev Chat Summary: December 20th (4.9.2 week 3)

This post summarizes the dev chat meeting from December 20th (agenda, Slack archive).

4.9.2 planning

  • @sergey to be release lead, @williampatton to be deputy release lead
  • @desrosj able to help with bug scrubs
  • Tentative release timing of 1/16 for beta, 1/23 for RC, and 1/30 for release

Confirm definition of "minor release"

  • Confirmed definition: Bugfixes and enhancements that do not add new deployed files and are at the discretion of the release lead with suggestions/input from component maintainers and committers.
  • @jbpaul17 added that definition to the handbook for future reference (see here, here, and here)

Updates from focus leads and component maintainers

  • Team Editor (Gutenberg): They have no more meetings until January 3rd in #core-editor. The channel is of course open all the time, but meetings will resume then. They also have a request for assistance on video processing of the usability videos from WCUS. Please check the post if you’re available / have interest.
  • Teams Customize and REST API are both on hiatus through the holidays and have no updates this week.
  • Multisite published a post about their roadmap

Meeting hiatus over holidays

  • There will be a two week hiatus for devchat, final meeting for 2017 is today (December 20th). First meeting for 2018 will be January 10th.

General announcements

  • @presskopp looking for advice on getting patches reviewed. Advice given is to ping component maintainers, mention it during devchat's General announcements section, or mention it during a bug scrub.
  • @schlessera looking for advice on getting something on the devchat agenda for January 10th. Advice given is to ping @jbpaul17, mention it during devchat's General announcements section, or add it as a comment to the agenda post. Also noted that Make/Core posts can be a good idea for things that need some discussion and can happen at any time.
  • @schlessera to work on a Make/Core post around the topic of "Servehappy project – current status and how to proceed to have the effort blessed"

#4-9-2, #core, #core-multisite, #dev-chat, #gutenberg, #summary

What’s new in Gutenberg? (11th December)

Gutenberg is back to a regular schedule after a great WCUS in Nashville which included many conversations and exchanges of ideas. If you missed it, checkout Matt’s State of the Word presentation for an overview of how the year has gone and what lies ahead for Gutenberg. (It also includes a demo of the plugin in action.) It was great to have new people helping at contributor day and submitting pull requests. Thanks!


This release introduces global reusable blocks as the main highlight, but there are also improvements to templates (ability to lock them down), versioning block attributes so markup can be migrated, and many extensibility additions as well as bug fixes.

1.9 🐆

  • Introducing reusable global blocks. (Stored in a wp_blocks post type.)
  • Add ability to lock down the editor when using templates so edits can happen but blocks can't be removed, moved, nor added.
  • Handle and upgrade deprecated blocks. This allows to migrate attributes without invalidating blocks and an important part of the block API.
  • Drag and drop upload support to gallery block.
  • Extensibility:
    • Expose packages/hooks public API under wp.hooks.
    • Introduces withFilters higher-order component to make component filtering easier.
    • Introduces getWrapperDisplayName helper function to make debugging React tree easier.
    • Introduces compose function to unify composing higher-order components.
    • Exposes hook for Block component.

Other changes

From 1.8.1

  • Add ability to switch published post back to draft.
  • Fix issue when changing column count in "text columns" block.
  • Prioritize common items in the autocomplete inserter.
  • Avoid changing publish/update button label when saving draft.
  • Add bottom padding to the editor container to improve experience of writing long posts.
  • Adjust the Classic block toolbar so it doesn't jump.
  • Colorize the little arrow on the left of the admin menu to white to match body content.
  • Update autocomplete suggestions colors to have a sufficient color contrast ratio.
  • Abort focus update when editor is not yet initialized.

#core-editor, #editor, #gutenberg

Dev Chat Summary: November 29th (4.9.1 week 2)

This post summarizes the dev chat meeting from November 29th (agenda, Slack archive).

4.9 feedback + 4.9.1 timing

WordPress 4.9.1 was released last week. It's a security and maintenance release for all versions since WordPress 3.7, users are strongly encouraged to update their sites immediately.

Notable bug fixes include:

  • Issues relating to the caching of theme template files.
  • A MediaElement JavaScript error preventing users of certain languages from being able to upload media files.
  • The inability to edit theme and plugin files on Windows based servers.

This post has more information about all of the issues fixed in 4.9.1 if you'd like to learn more.

Gutenberg usability testing + contributions

There are new usability tests for Gutenberg.

There was also a usability testing table for Gutenberg at WordCamp US this weekend, as well as a dedicated Gutenberg section at the Contributor day.

General announcements

@davefx: Looking for feedback on #42669.

#4-9-1, #core, #dev-chat, #gutenberg, #summary

What’s new in Gutenberg? (28th November)

1.8 🐝

This release introduces several under the hood improvements to support more plugin opportunities — extending existing blocks, limiting blocks available, preventing a given meta-box from appearing in Gutenberg, etc — as well as allowing developers to specify templates, a list of predefined blocks. It also includes design iterations, mobile improvements, and initial work on a more rewarding publishing flow.

  • Introduce block-templates as a list of blocks specification. Allows a custom post type to define a pre-configured set of blocks to be render upon creation of a new item.
  • New tools menu design, preparing the way for more extensibility options.
  • Block API change: use simpler JS object notation for declaring attribute sources.
  • Add function to allow filtering allowed block types.
  • Show popovers full screen on mobile, improving several mobile interactions.
  • Began work on publishing flow improvements with an indication of publishing (or updating a published post) action by introducing a button state and label updates.
  • Made toolbar-by-block the default after different rounds of feedback and testing. Both options are still present.

Other changes


Example for how to provide a template in a CPT:

function register_book_type() {
	$args = array(
		'public' => true,
		'label'  => 'Books',
		'show_in_rest' => true,
		'template' => array(
			array( 'core/image' ),
			array( 'core/heading', array(
				'placeholder' => 'Author...',
			) ),
			array( 'core/paragraph', array(
				'placeholder' => 'Add book description...',
			) ),
		),
	);
	register_post_type( 'book', $args );
}
add_action( 'init', 'register_book_type' );

Coming to a WP-CLI near you

Soon you'll be able to quickly create a block using a command like wp scaffold block my-block --theme with WP-CLI. It'll setup a new block registration with the passed slug and theme (or plugin) as the namespace. This will all be added to the handbook.

#core-editor, #editor, #gutenberg

Dev Chat Summary: November 15th (4.9 week 16)

This post summarizes the dev chat meeting from November 15th (agenda, Slack archive).

4.9 schedule + release timing

  • 4.9 release was delayed from yesterday (Tuesday, November 14th) to today (Wednesday, November 15th)
  • An updated 4.9 build went out earlier today, we still have to rebuild tinymce.min.js, but otherwise please test!
  • @afercia disagrees with patching last minute serious bugs without proper, broad, testing but deferred to decision by release leads
  • 4.9 release scheduled for later today (Wednesday, November 15th) at 3pm PST / 23:00 UTC
  • [Editor note: 4.9 released successfully! 🚀]
  • We’ll discuss post-4.9 / pre-5.0 plans later once we’ve had a chance to gather broader feedback on 4.9.
  • There is currently no timeline or plan for 4.9.x, but there are tickets currently slotted as 4.9.1 in Trac.

Meeting time changes

Gutenberg update

#4-9, #core, #core-js, #core-restapi, #dev-chat, #gutenberg, #summary

What’s New in Gutenberg? (15th November)

This next release includes several features and improvements on many levels. We are adding a way to switch between the header toolbar and toolbars attached to the block by opening the toggle menu at the top right and choosing the behaviour. There has been convincing arguments for both approaches so we want to make it easier to test both easily. Other notable features include the ability to transform multiple blocks of the same type into other blocks (like many images into a gallery). There are improvements to meta-boxes (dropping iframes), foundational work for nested blocks and global blocks, many design updates, and initial integration with JS hooks.

1.7 🐴

Other Changes

#core-editor, #editor, #gutenberg

Dev Chat Summary: October 25th (4.9 week 13)

This post summarizes the dev chat meeting from October 25th (agendaSlack archive).

4.9 schedule

  • Beta 4 dropped late last night / early this morning, please do help test. RC is scheduled to go out on Monday, October 30th and that entails soft string freeze.
  • For all @committers, please let @melchoyce @westonruter know if you are able to help with commits during RC as we’ll need two committers to approve a patch before merging.
  • Bug Scrubs are scheduled on Monday’s and Thursday’s. If you have availability to help run a scrub, please let @jbpau17 know. Any help would be greatly appreciated, thanks!
  • Currently nine tickets that show as needs-dev-note
  • Three Dev Notes coming from @westonruter and one from @rafa8626 (#39686); all could use proofreading
  • If anyone can help draft the Field Guide, please let @jbpaul17 know especially for things around New Action Hooks, New Filter Hooks, Modified Filter Hooks, and External Library Updates.
  • If anyone can help populating the “Developer Happiness” section of the About page, please let @melchoyce know or add notes to #42087

Editor / Gutenberg update

  • Gutenberg v1.5 includes metabox support and likely has advanced cases where the plugin will benefit from feedback and iteration.
  • You can report via GitHub, the feedback form within the Gutenberg plugin, or in #core-editor.

General announcements

  • @johnbillion: The last PHP 7.2 issue, #41526, needs some eyes and can still make it into 4.9 if another patch comes along. The original patch causes some warnings.
  • @paaljoachim: looking for comments on #42324

#4-9, #core, #dev-chat, #gutenberg, #summary