Editor Chat Summary: 17th June, 2020

This post summarizes the latest weekly Editor meeting (agenda, slack transcript). This meeting was held in the #core-editor SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. channel on 2020-06-17 14:00 UTC and was moderated by @annezazu.

GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ version 8.3

Gutenberg 8.3.0 was released last week. Update your sites and check out what’s new. We’re experimenting with new ways to organize the make post, so any feedback you may have is welcome!

Monthly Plan

There was limited discussion on the specifics of the current monthly priorities. As a reminder though, WordPress 5.5 betaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. is less than a month away! Last week @ellatrix created this board with must-haves and priorities for 5.5. If anyone has the capacity to help, please jump in there.

Task Coordination

Note: Anyone reading this summary outside of the meeting, please drop a comment in the post summary, if you can/want to help with something.  Remember: don’t just focus on code contributions!

@zebulan

  • Working on PRs to get the Buttons blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. polished and to resolve some confusing behavior including making the block’s editor DOM match the front-end more.
  • Need technical help to proceed with this Buttons Block PR. Help with this should also help land a PR from @nfmohit to add a vertical option for the Buttons block.
  • Continuing to make progress on the Heading block heading level validator PR. Currently stuck trying to figure out how to prevent the dropdown from automatically closing when one of the heading level options is clicked.

@nosolosw

  • The release took quite a bit of bandwidth over the last week!
  • Outside of the release, a major focus was preparing presets for line-height and padding (and adapting the UIUI User interface controls accordingly).
  • Next week, I’ll carry on that presets for line-height and padding work, and hope to help porting to coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. for 5.5. 

@mcsf

  • Reviewing a bunch of stuff!
  • Trying to weigh in/unblock a variety of discussions from FSE, design tools, block context, and more.
  • In close contact with @ellatrix to see how I/we can help her in her 5.5 editor lead role.

@youknowriad

  • Worked on improvements to Popover behavior.
  • Updated the colors used in Gutenberg components to rely on CSSCSS Cascading Style Sheets. variables.
  • Opened a PR to expand anchor support to all static blocks.
  • Working on the quick inserter.
  • On my mind to work more on stabilizing e2e tests.

@itsjonq

  • Focused mainly on Design Tools.
  • Looking over issues (feature requests) and researching external designs/experiences to see how we could improve these tools.
  • So far, most applications of design tools have centered around the Cover block. Under the hood, there’s been work to unlock/enable customizations to other blocks though. Approaching it more like APIs, rather than ad-hoc enhancements

@sageshilling

@itsjusteileen 

@mkaz

  • A follow up from last weeks discussion around Documentation, the tagtag A directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.) was switched back to master, so published Gutenberg docs are now top of tree. Exploring ways to create a version switcher. Thanks @coffee2code for the assist in ticket #5266.

@michael-arestad

  • Reviewing issues/PRs for 5.5. Please pingPing The act of sending a very small amount of data to an end point. Ping is used in computer science to illicit a response from a target server to test it’s connection. Ping is also a term used by Slack users to @ someone or send them a direct message (DM). Users might say something along the lines of “Ping me when the meeting starts.” me if there’s an issue/PR planned for 5.5 that needs design feedback/review/help.
  • Starting in again on designing flows for creating new templates. – might be good for a zoom jam (stay tuned).
  • Proposed an iteration on the reusable block (and template part) UI.
  • Updated the e2e prototype and got good feedback. The next iteration will be broken up into specific flows.

@ntsekoura

  • Worked on a merged PR about consolidating disparate “copy block” actions, when we copy from keyboard and when copy from Block Toolbar.

@ella

  • Focused on figuring out what things need to happen for WP 5.5 Beta, and helping out where I can. Looks like navigation and widgetWidget A WordPress Widget is a small block that performs a specific function. You can add these widgets in sidebars also known as widget-ready areas on your web page. WordPress widgets were originally created to provide a simple and easy-to-use way of giving design and structure control of the WordPress theme to the user. screens are unlikely to be included given the time that’s left. I’m optimistic about including the currently experimental image editor, but there’s still quite a few things to do.
  • Going forward, will make sure remaining issues are tracked and worked on. Note that any refinements also need to be included before 5.5 Beta as afterwards we only backportbackport A port is when code from one branch (or trunk) is merged into another branch or trunk. Some changes in WordPress point releases are the result of backporting code from trunk to the release branch. regressions.

@poena

  • Stuck on the former FSE post categories / now hierarchical taxonomy block because I don’t know how to get the custom taxonomies that a post (or custom post typeCustom Post Type WordPress can hold and display many different types of content. A single item of such a content is generally called a post, although post is also a specific post type. Custom Post Types gives your site the ability to have templated posts, to simplify the concept.) uses. This was flagged for dev help!

@gziolo

  • Worked on server side rendering for blocks – block.jsonJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. + REST APIREST API The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/. + register_block_type_from_metadata.
  • Worked on bugbug A bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. fixes and enhancements for npm packages with tooling – wordpress/scripts, wordpress/create-block and other, lots of reviews for work done by @ocean90.

@noisysocks:

  • Working on the Navigation screen, specifically picking up #22656 again which lets you add Search blocks alongside Link blocks.

@annezazu

  • Working on resources for the FSE outreach program (will be dropping drafts for the group to review this week in #fse-outreach-experiment), doing triagetriage The act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors. focused on needs-testing, and trying to do my own testing with the Gutenberg experiments (found this fun bug).

Open Floor

Is there any interface for a theme to supply a list of classes that could be used as a datalist for the Block sidebarSidebar A sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme. Advanced class input? Raised by @joyously.

For greater context, @joyously is looking for a user to be able to put theme-supplied classes into the Advanced class input box. @youknowriad jumped in to provide context. The closest solution offered was “style variations”. However, you can’t apply multiple styles at the same time or use custom classNames instead of style-*. Both of these suggestions have related issues right now.

Next Step: @joyously can chime in on related GitHubGitHub GitHub is a website that offers online implementation of git repositories that can can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ discussions around style variations. There’s this main issue here for allowing custom style classNames and a general list of style variation themed issues.

Introduction for the media for block editor proposal. Raised by @sageshilling.

This will be about a year and a half project. If you’re curious to see what’s being proposed, you can see the initial proposal here in #core-media. While there were some questions and concerns raised including making sure this is built step by step within the Gutenberg Repo, this was meant purely as an initial introduction with more information to come in future meetings.

Next step: @sageshilling will share more information in the #core-media meeting tomorrow and in the comments of this post as necessary.

A reminder to not ignore intermittent test failures with e2e tests and to make tests even more robust when possible. Raised by @youknowriad.

I just wanted to share that end 2 end tests has not been very stable lately. And very often when we have an instability we have a tendency to think: oh it’s not related to my PR, so we just restart the test until it passes and forget about it. I have been guilty of doing so myself and I’d like to encourage the regular contributors to “stop” ignoring these intermittent test failures and when possible take time to debug and make the tests more robust even if not directly originating from our own PRs.

Why was the decision made to not have width and height attributes specified at all times for images? Raised by @flixos90.

Recently, @flixos90 opened a trac ticket around specifying missing width and height attributes for images in WordPress. Right now, not having these attributes defined causes an increased amount of layout shifting as images are being loaded. Historically, the classic editor has always provided these attributes, so the user experience has somewhat regressed with Gutenberg in that sense. Gutenberg only provides these attributes in the core/image block when the image is resized.

While there was some discussion here, we agreed this issue seems to have a lot of history and no one in the meeting could answer with certainty.

Next Step: @flixos90 is going to open up a GitHub issue to open up the conversation to see if greater historical information can be found and a way forward can be worked on.

How to resolve issues with Gutenberg.run? Raised by @itsjusteileen.

Right now, there are some issues with getting gutenberg.run, a PR testing tool, to run (pun intended).

Next Step: @itsjusteileen is going to open an issue in the Gutenberg.run repository.

What do people think of the idea of an ESLint pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party to discourage the use of some (but not all) Lodash functions when there’s a close vanilla JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. equivalent? Raised by @zebulan.

There were varying opinions and ideas thrown out including the thought that perhaps this isn’t worth optimizing for. There are a few ESLint plugins of this sort already that could be explored. Generally though, this topic was out of scope for this meeting.

Next Step: @zebulan added this to the agenda for #core-js meeting next week as this is a better spot to discuss this question.

#meeting-notes, #core-editor, #editor, #gutenberg, #core-editor-summary