Editor chat summary: Wednesday, 16 March 2022

This post summarizes the weekly editor chat meeting on Wednesday, 16 March 2022, 14:00 UTC held in Slack.

WordPress 5.9.2

@jorgefilipecosta said WordPress 5.9.2 was an important security and maintenance release and asked everyone to update all their sites. There were updates until WordPress 3.7, everyone even if not on the last WordPress major version should be able to update.

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/ 12.8

Gutenberg 12.8 was released around the chat time by @priethor. Details about the release can be backed on the release page.

Key projects updates

Patterns

@jorgefilipecosta shared the following update related to patterns:

The current experience when creating a new page and starting with a blank canvas is not ideal. It would be better if we had something premade ready. On #39147 we are interacting on this experience. Patterns will be able to specify they are full page patterns, and uses will be able to create pages in an easy way. We also merged recently changes to how one inserts and replaces the content of a template part and now are changing the flows for the query 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. #38997.

Styles

@jorgefilipecosta said that we have some improvements to how duotone styles are handled in #38681, and we also fixed the centered image alignment styles at #39422.

Comments loopLoop The Loop is PHP code used by WordPress to display posts. Using The Loop, WordPress processes each post to be displayed on the current page, and formats it according to how it matches specified criteria within The Loop tags. Any HTML or PHP code in the Loop will be processed on each post. https://codex.wordpress.org/The_Loop. block

@bernhard-reiter shared the following update:

Quite a bit of progress there, thanks to the team: There’s a fix for the broken pagination that’s now ready to merge. The Generic AvatarAvatar An avatar is an image or illustration that specifically refers to a character that represents an online user. It’s usually a square box that appears next to the user’s name. block PR has also been approved. Finally, there’s a bugfix for two rather annoying bugs with inner block selection and duplicated settings in the inspector controls of the Comments Query Loop block.

Native mobile application

@carlosgprim said the team is focused on the following on Drag and Drop project and addressing content uploading issues.

Task coordination

@jorgefilipecosta

I will start for the next week I want to update #38997 and improve the modal UIUI User interface to contain a grid and carousel view. I also plan on working on the base editor experience be it by helping the effort to get partial multi block text selection, helping the nested blocks on quotes and lists and other related tasks. Let’s see how much we can improve the basics.

@paaljoachim

  • I have made multiple videos. Among these one is about going from a classic theme to an FSE theme.
  • Added notes into the fse-outreach-experiment channel.
  • Added feedback to a few Navigation block exploration issues.
  • Made a few new issues: #39490, #39380, #39307.

@mamaduka

  • I’m continuing my work on Block Locking UI and APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.. Here’s my latest proposal on implementing “Locked by System” in the editor.
  • Finished an error handling audit for media blocks. They should correctly display upload errors now 🙂
  • Created PR to make error messages returned via uploadMedia utility more consistent. This is a breaking change, so I’m looking for some feedback.

Open floor

Template part resizing

@paaljoachim said: “With exploring the transition og going from a classic theme and over to Twenty Twenty Two I noticed that I was not able to adjust the headerHeader The header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes. template height.I also made an issue for it here: #39490“.

@jorgefilipecosta anwsred “To me template part is just a block to reference an area. It should not deal with the content its styles its size etc. I guess to control the height of an area like an header one can put a group block or cover block inside that header”.

The conversation continued and @paaljoachim said a group was already present, both participants in the discussion agreed there maybe be space for improvements and the conversation will continue on the issue. If you have some thoughts on this please share them.

wordpress/frontend-dx Gutenberg subteam

@bernhard-reiter shared the following:

I’d like to create a 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/ team (under the WordPress org, as a sub-team of the Gutenberg team) for those of us that are currently working on Fronted Developer Experience (tentatively named “Frontend DX”, which means we’d use the handle @wordpress/frontend-dx). There’s currently a rather well-defined group of folks focusing on this, so it’d be quite handy for us to be able to @mention the entire team.

The participants showed support for this idea and @bernhard-reiter is going to create the subteam.

PR’s and Issues awareness

@mauriac raised the attention of the team to PR #39426 that is ready for review and to issue #39395 that is a regressionregression A software bug that breaks or degrades something that previously worked. Regressions are often treated as critical bugs or blockers. Recent regressions may be given higher priorities. A "3.6 regression" would be a bug in 3.6 that worked as intended in 3.5. that happened on 5.9. @jorgefilipecosta said #39395 probably is something that we should fix in WordPress 5.9.3 release.

#block-editor, #chats, #core-editor, #core-editor-summary, #gutenberg

Devchat summary, March 16, 2022

@marybaum and @webcommsat led the meeting on this agenda.

1. Announcements

A security release, WordPress 5.9.2, landed on Thursday.

ICYMI: @annezazu is co-release leadRelease Lead The community member ultimately responsible for the Release. for 6.0.

There is a bug-scrub schedule for 6.0!

As the group was getting settled, Gutenberg 12.8 landed.

2. Blogblog (versus network, site) posts of note

A Week in Core from @audrasjb

The 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. Pattern Directory is testing the submissions process.

The next Gutenberg Developer Hours will happen March 22.

3. Upcoming Releases

(Note: The agenda skipped item 3 and called Upcoming Releases item 4. I correct that here.)

3a) The next major is WordPress 6.0.

Core Tech Lead @peterwilsoncc gave the group this update: A new 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, #6-0-site-editor-merge, will be the home of discussions about merging the editor into CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. Also, feel free to check out the #6-0-release-leads channel, to stay up to date on progress.

Peter also noted that he’s been going through the enhancements milestoned for 6.0 and reviewing the code in patches and pull requests. He could use some help, he said, pointing out that these enhancements are due to commit before 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. 1. (Ed. note: Remember that Beta 1 freezes features and enhancements for the release.)

3b) The next minor is 5.9.3.

@mamaduka and @audrasjb will publish a schedule on Make/Core (that’s this very site) by the end of this week.

JB will also run a 5.9.3 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. scrub today, Thursday, March 17, and another on Monday, March 21. Both will be at 20:00 UTC.

4. Open Floor

Open floor started with @jeffpaul asking about the future of the Debug Bar 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. @nalininonstopnewsuk brought up several tickets from the Help/About and Bulk/Quick Edit component bug scrub of Monday. At the top of the hour, @bobbingwide was in lively discussion of another ticketticket Created for both bug reports and feature development on the bug tracker., #13459, with @davidb and @jeffpaul.

#core, #dev-chat, #summary

Bug Scrub for Two-Factor plugin

The Two-Factor plugin is nearing a 0.8.0 release and as part of that @georgestephanis and myself have scheduled a 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. scrub for Wednesday, March 23rd at 13:00 UTC in the #core-passwords 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.

The primary focus of the scrub will be reviewing PRs in the milestone to see which are ready (or close enough) to be wrapped up and merged versus punted to a future release. We will also review issues in the milestone that don’t have a linked PR to see if they’re urgent enough to work on a PR versus punted to a future release. The most pressing issue is two-factor#423 given its already impacting, so particular focus on that and its associated PR#427 will likely be where we begin the conversation.

The most helpful thing would for folks present during the scrub, or also helping asynchronously, will be testing those PRs in the milestone to ensure that they (1) resolve the root issue and (2) have no merge conflicts. Leaving a comment with your results on PRs will help dramatically.

There’s no immediate timeline for the 0.8.0 release though once we get through the bug scrub George and I will have a better sense of what work remains in getting 0.8.0 released. The sooner we can get a release out that includes a resolution for two-factor#423 the better, so thanks to all for helping!

#2fa, #two-factor

What’s new in Gutenberg 12.8? (16 March)

“What’s new in 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/…” posts (labeled with the #gutenberg-new 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.)) are posted following every Gutenberg release on a biweekly basis, discovering new features included in each release. As a reminder, here’s an overview of different ways to keep up with Gutenberg and the Full Site Editing project.


Depending on which hemisphere of the Earth you are at right now, either Spring or Autumn are coming soon. In either case, and regardless of your location, Gutenberg 12.8 is already here for everybody! This release comes with new APIs, iterative UXUX User experience enhancements, and, as always, many bugfixes to increase the editor’s stability.

Table of Contents


New Webfonts APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.

Since 2007, WordPress has provided a framework to help theme and 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 developers load scripts and styles in a standardized, integrated way. Now, for the first time, web fonts have the same types of tooling.

This API is the first step in helping people load fonts in a performance-friendly, privacy-friendly, and future-proof manner – something which has been tremendously difficult to do without such a framework.

That it’s taken so long to reach this point is a testament to how complex web fonts can be and evidence of how much work has gone into ‘getting this right.’ Now that this framework exists, more tools and optimizations can be built on top of it to ensure that WordPress delivers the best possible experience (and privacy) to end-users.

With a few weeks left until the next WordPress Beta release and because of the complexity to achieve this milestone, testing the API is encouraged, and as always, feedback is welcome!

Swift inline insertion of internal links

Gutenberg seeks to provide the best editing experience to all kinds of users, and power users will enjoy seeing inline links can now be inserted with a direct keyboard shortcut. If you thought using the slash inserter was fast, try the new [[ keyboard trigger to add an inline link without going through the inserter.

As with other enhancements aiming to improve the user experience, this new feature is gathering feedback; don’t hesitate to share your thoughts on the keyboard trigger and the overall experience.

Steps towards full visual theme creation

The Gutenberg team keeps making progress towards the goal of full visual theme building within the editor. When using the export tool available in the Site Editor, the theme.json file including the Styles settings is included in the zip, too, together with the index.php and styles.css files as well!

Iterating on placeholder and loading states

In continuation of work done in previous releases, Gutenberg 12.8 keeps iterating on placeholder and loading states. The Navigation block now provides a clear loading state for initial setup and subsequent loading of existing blocks, and thanks to the improved UIUI User interface feedback, creating a new menu is snappier.

The Media & Text 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. also comes with improved loading states. Starting in this version, the media being uploaded is also displayed behind the spinner.

Props to new contributors

Kudos to the first-time contributors that joined during the last release cycle!

  • @ahsanshaheen199: fix: Code example in flyout component. (39156)
  • @alshakerM: Render SVG props that have dashes correctly. (38936)
  • @awps: Missing ,toggleFormat from last code block. (39146)
  • @francisei: Docs: Emphasized requirement to enclose in quotation marks wp-env run…. (39101)
  • @ironprogrammer: Raise z-index of content div relative to sidebars. (38893)
  • @joshuafredrickson: Add a resolvable JavaScriptJavaScript JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser. https://www.javascript.com/. entry point to base-styles. (39240)
  • @jostnes: Remove rename rn UI tests. (39042)
  • @mashikag: Fix Blocks list ordering in Global Styles. (39093)
  • @tomasztunik: Fix Global styles overriding block’s element styles. (39012)
  • @Tumas2: Spelling error in JustifyContentControl example. (39234)

If you are interested in contributing but do not know where to start, join the CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Editor weekly meetings on Wednesdays at 14:00 UTC in #core-editor focused on all things Gutenberg.

12.8.0 Changelog

Enhancements

Block Library

  • Group: Show group option in Group blocks. (39094)
  • Navigation: Improve loading and placeholder states. (38907)
  • Navigation: Improve create new UI feedback in Nav block. (39219)
  • Media & Text: Display media while uploading. (39275)
  • Tag Cloud: Use flex for the Outline style. (38995)

Components

  • ConfirmDialog: add custom button text. (38994)
  • InputControl: Allow onBlur for empty values to commit the change, move reset behaviour to ESCAPE key. (39109)

Block Editor

  • Add a link completer for inline links to posts. (29172)

Site Editor

  • Add theme.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. to export file. (39048)
  • Resolve homepage template on server-side. (38817)
  • Theme Export: Add index.php and style.css. (39173)

Icons

  • Update drag handle footprint. (39342)
  • Update Pin icon, add new Post icon. (39139)

General Interface

  • Raise z-index of content div relative to sidebars. (38893)

Media

  • MediaReplaceFlow: Add ‘onError’ prop to handle error notifications. (39197)

AccessibilityAccessibility Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility)

  • Block settings dropdown: Use block display title in remove label. (39110)
  • Try allowing tab into block placeholder. (39085)

New APIs

  • Webfonts API. (37140)
  • Add new @wordpress/preferences package. (38873)
  • Add reusable preferences modal to interface package. (39153)
    • Add interface preferences modal to edit post. (39176)
    • Migrate hidden block types (block manager data) to new preferences packages. (39132)
    • Migrate post editor feature preferences to use new preferences package. (39115)
    • Migrate customize widgets editor to use new preferences package. (39112)
    • Migrate standalone widgets editor to use new preferences package. (39084)
    • Migrate site editor to use new preferences package. (39158)
    • Deprecate interface package’s preference APIs. (39418)
  • Create Block: Add support for more plugin headerHeader The header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes. fields. (39096)

Bug Fixes

Block Library

  • Buttons: Added aria label to the button block with icon. (38966)
  • Buttons: Fixes Button highlight popover overflow conflictconflict A conflict occurs when a patch changes code that was modified after the patch was created. These patches are considered stale, and will require a refresh of the changes before it can be applied, or the conflicts will need to be resolved. with link popover. (38771)
  • Buttons: Don’t set a placeholder text color. (39034)
  • Code: Restructure code block styling. (38712)
  • Comments Pagination Number_ Fix Comments Pagination Number with no pagination settings. (39204)
  • Cover: Fix keep selected unit on deleting minHeight value. (39145)
  • Cover: Fixes #38761 by removing obsolete ::Before pseudo element. (38762)
  • File: Check if ‘fileId’ exists before setting the attribute. (39088)
  • File: Don’t display loading animation on upload error. (39213)
  • File: Fix file block validation error by not outputting aria-describedby if there’s no description. (39083)
  • File: Fix the undo trap. (39215)
  • Hide border panel when all border features have been disabled. (36791)
  • Hide current menu from dropdown list in Nav block. (38916)
  • Image: Fix image responsive rules. (39045)
  • Image: Display errors after failed upload. (39178)
  • Media & Text: Display errors after failed upload. (39245)
  • Navigation: Fix navigation menuNavigation Menu A theme feature introduced with Version 3.0. WordPress includes an easy to use mechanism for giving various control options to get users to click from one place to another on a site. error when menus are not yet fetched. (39151)
  • Post Comments Form: Show correctwarning relative to post/page context. (38011)
  • Post Expert: Fix missing class in post excerptExcerpt An excerpt is the description of the blog post or page that will by default show on the blog archive page, in search results (SERPs), and on social media. With an SEO plugin, the excerpt may also be in that plugin’s metabox.. (38747)
  • Post Terms: Unescape HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. entities in term names. (39216)
  • 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. Group: Make save() markup the same as render_callback markup. (38510)

Styles

  • Fix Blocks list ordering in Global Styles. (39093)
  • Fix default duotone preset SVG and style generation. (38681)
  • Fix header panel height. (39119)
  • Fix Global styles overriding block’s element styles. (39012)

Components

  • Update drag gesture of InputControl-based controls with axial constraint. (38968)
  • UnitControl: Fix controlled unit behavior. (39148)
  • Normalize font-family. (38969)

Block Editor

  • Fixes block highlight after block move. (38915)
  • Improve in_footer handling in gutenberg_override_script(). (39497)

Post Editor

  • Avoid error when ‘styles’ settings are removed. (39091)
  • URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org: Fix code drift in the Editor package by removing duplicate cleanForSlug function. (39033)

Site Editor

  • Expose plugin area to site editor’s List page. (39078)

Other Packages

  • apiFetch: Handle urlencoded and rest_route query params. (38914)
  • Base Styles: Add a resolvable JavaScript entry point to base-styles. (39240)
  • Compose: Avoid memory leak in use-drop-zone. (39038)
  • Render SVG props that have dashes correctly. (38936)
  • Url: Improvement to prototype handling. (39365)

Developer experience

  • Change copying PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher files to dist directory to opt-in via a CLICLI Command Line Interface. Terminal (Bash) in Mac, Command Prompt in Windows, or WP-CLI for WordPress. flag. (39171)
  • Create Block: Add confirm prompt before showing the plugin options. (39105)
  • Create Block: Improve custom project template configuration. (39049)
  • Handle resolution errors in wordpress/data. (38669)

Documentation

  • Add import useBlockProps. (39072)
  • Components: Update changelog follow up for #38985. (39013)
  • Emphasized requirement to enclose in quotation marks wp-env run…. (39101)
  • Element: Add changelog notes for serialize attribute casing. (39141)
  • Gutenberg Data Tutorial Part 3: Building an edit form. (38581)
  • Fix code example in flyout component. (39156)
  • Missing ,toggleFormat from last code block. (39146)
  • Move recent CHANGELOG entry to Unreleased section. (39169)
  • Spelling error in JustifyContentControl example. (39234)
  • Storybook: Support proper extraction of TypeScript prop types. (38842)
  • Storybook: Add webpack loader for easier story descriptions. (39165)

Code Quality

  • Componentes, UnitControl: Tidy up utils and types. (38987)
  • Components, FontSizePicker: Refactor stories to use Controls. (38727)
  • Components, ToggleGroupControlOption: Calculate width from button content and remove LabelPlaceholderView. (39345)
  • Core Data: Rename types directory to entity-types. (39225)
  • Core data: Fix some typing issues. (39212)
  • Core data: Fix some typing issues. (39214)
  • Fix @wordpress/comment-case ESlint errors but without adding the disable-rule pragma. (37006)
  • Delete widget editor redundant css for more menu. (39113)
  • Layout: Remove duplicate var declaration. (39111)
  • Move editor settings code to compat folder. (39030)
  • Refactor useSelect usages to useEntityRecords. (38827)
  • Refactor classic menu conversion process. (38858)
  • Post author name: Add “post” prefix to CSSCSS Cascading Style Sheets. class. (38320)
  • TreeGrid: Update callback unit tests to use TreeGridRow and TreeGridCell sub components. (39002)
  • Update framer motion to 6.2.8. (38999)
  • useBlockEditorSettings: Remove unused unstableBase fetch. (39221)

Tools

Project Management

  • Code owners: Remove users without write access and fix typos. (39238)
  • Simplify Pull Request template. (39229)

Testing

  • Add end-to-end testing for experimental nav menu deletion. (38955)
  • Add Home/End keyboard end-to-end test for List View. (39265)
  • Add some tests for TreeGrid. Update README to reflect latest functionality. (39302)
  • Add test case for post locking feature saving. (39022)
  • Add tests for media replace flow. (39005)
  • Block Test Fixtures: Add additional error message for serialized test fixtures that reserialize identically. (39039)
  • ESLint Plugin: Make Prettier integration optional. (39244)
  • Fix performance tests by adding backwards compatibility to welcome guide utility. (39300)
  • Improve switch to draft button end-to-end test robustness. (38971)
  • Remove rename rn UI tests. (39042)
  • Social Icons: Begin Automating Existing Manual Test Cases. (39027)
  • Update ‘clickMenuItem’ test util to use full label matching. (39274)
  • Update preview test to wait for publish panel to appear before closing it. (39100)

Build Tooling

  • Fix spelling of contributors in changelog script. (39029)
  • Resolve peer dependency warnings. (39043)

npm Packages

  • Fix npm run docs:Build crashing when a block.json lacks supports key. (39241)
  • Packages: Automate npm publishing as part of Gutenberg release workflow. (39259)
  • Packages: Automatically acceppt all Lerna commands when run with CI flag. (39199)
  • Packages: Update CLI publishing tool to run in CI mode. (38993)

Plugin

  • Account for upcoming changes in styles metadata in WordPress 5.9. (36327)
  • Don’t filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. ‘theme_templates’ when running WP 5.9. (39017)

Performance Benchmark

The following benchmark compares performance for a particularly sizeable post over the last releases. Such a large post isn’t representative of the average editing experience but is adequate for spotting variations in performance.

Post Editor

VersionTime to first blockKeyPress Event
Gutenberg 12.85.01s38.86ms
Gutenberg 12.75.07s40.42ms
WordPress 5.95.22s38.11ms

Site Editor

VersionTime to first blockKeyPress Event
Gutenberg 12.84.99s33.12ms
Gutenberg 12.75.01s37.61ms
WordPress 5.94.74s32.03ms

Kudos to all 54 contributors that participated in the release! 👏

Thanks to @jameskoster for the release post assets, @jonoaldersonwp for crafting the Webfonts API summary,  and to @cbringmann and @hellofromtonya for proofreading.

#gutenberg-new #gutenberg #core-editor

Devchat agenda, March 16, 2022

Here’s last week’s summary.

1. Announcements

A security release, WordPress 5.9.2, landed on Thursday.

ICYMI: @annezazu is co-release leadRelease Lead The community member ultimately responsible for the Release. for 6.0.

There is a bug-scrub schedule for 6.0!

2. Blogblog (versus network, site) posts of note

A Week in Core from @audrasjb

4. Upcoming releases

The next major is 6.0.

The next minor is 5.9.3.

5. Open Floor

Three tickets emerged from the Bulk Edit and Help/About 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. scrub of yesterday. They are all several years old, so it would be nice to close them or commit them this cycle.

#42474 has a patchpatch A special text file that describes changes to code, by identifying the files and lines which are added, removed, and altered. It may also be referred to as a diff. A patch can be applied to a codebase for testing. from @sabernhardt that looks as if it mostly needs testing.

#41833 is apparently still a thorn in the sides of several users, notably our own @webcommsat and @meher. Time to find a way forward?

And on #41494, people in the scrub would like advice from @audrasjb and @costdev, but also the group at large, on how to proceed.

Add your items to the comments!

And see you tomorrow at 20:00 UTC in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. 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/..

#agenda, #core, #dev-chat

Performance team meeting summary 15 March 2022

Meeting agenda here and the full chat log is available beginning here on Slack.

Focus group updates

Announcements

@shetheliving

  • Meeting time change
    • Traditionally coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. meetings shift to accommodate for DST
    • We will adjust our meeting to its original time of 16:00 UTC after DST goes into effect worldwide on Sunday, March 25
  • Support representatives for Performance Lab plugin forum
    • @shetheliving (Google 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 support lead), @jamesosborne (who works on support for Google plugins), and @mitogh (one of the technical leads on the project for 10up) will be monitoring the support forumSupport Forum WordPress Support Forums is a place to go for help and conversations around using WordPress. Also the place to go to report issues that are caused by errors with the WordPress code and implementations. and replying to topics
    • We’re always looking for help, so if you’re interested in being designated as a plugin support representative, please reach out to Bethany

Images

@adamsilverstein @mikeschroder

GitHub project

Feedback requested

Object Cache

@tillkruess @spacedmonkey

GitHub project

Feedback requested

Site Health

N/A

GitHub project

  • We’re seeking 1-2 POCs for this group; if you’re interested, please comment here or 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.” in 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/.
  • @furi3r: Interesting conversation in https://github.com/WordPress/performance/issues/92#issuecomment-1067312175.
    • @flixos90: Would like some more thoughts here. Like the idea of pointing out a problem where relevant, but concerned that there’s a lack of actionable guidance here. Three options here:
      1. Merge it as is regardless of the concerns
      2. Merge it as experimental for now while addressing the concerns for a follow-up release
      3. Delay merging until the concerns have been addressed
    • @furi3r: Intention was that this would be used by hosting companies and all of them have guides on how to tackle the problem. By default, we’re pointing to https://wordpress.org/support/article/optimization/.
    • @flixos90: Fair point, but we should also have some sort of useful default
    • @spacedmonkey: With white screen of death protection, we added a filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. to enable hosting companies to link off to resources to help. I think this issue is the same. Handling messaging and resolving this, is for the hosting company, IMO.
    • @flixos90: We also included a default way for the user to fix the problem, though, which is missing more detail
    • @spacedmonkey: Agreed that once this goes into core, we need a solution. But for now, we don’t need one in the plugin, as everything in it is experimental.
    • @flixos90: “Experimental” has some nuance; some modules are days away from a feature proposal, others are more recent and earlier in exploration.
    • @tweetythierry: The definition of “experimental” has come up enough that we should document and define it.
    • Vote on a decision here by Friday, March 19 at 5pm UTC

Feedback requested

Measurement

@wp-source @josephscott

GitHub project

Feedback requested

JavaScriptJavaScript JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser. https://www.javascript.com/.

@aristath @sergiomdgomes

GitHub project

  • No updates

Feedback requested

Infrastructure

@flixos90

GitHub project

  • @flixos90: We now have plugin assets (banner and icon) in Performance Lab: Branding #144; just opened https://github.com/WordPress/performance/pull/231 to add to the repo and will deployDeploy Launching code from a local development environment to the production web server, so that it's available to visitors. to wordpress.orgWordPress.org The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/ in the next release. Merged a few PRs in the last few days, including a 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. fix. Ready to enable branchbranch A directory in Subversion. WordPress uses branches to store the latest development code for each major release (3.9, 4.0, etc.). Branches are then updated with code for any minor releases of that branch. Sometimes, a major version of WordPress and its minor versions are collectively referred to as a "branch", such as "the 4.0 branch". auto-deletion in #209 after chat. With all these enhancementenhancement Enhancements are simple improvements to WordPress, such as the addition of a hook, a new feature, or an improvement to an existing feature. and fixes, proposing (and confirmed with team) that we will ship our next 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. release next Monday, March 21, two weeks after the first release. We only have a few issues and PRs in the milestone, which we can probably merge this week. If you have concerns, please comment on Prepare 1.0.0-beta.2 release #213.

Feedback requested

Open Floor

  • @jeffpaul: Are there any core patches (e.g., new hook in media library) that would be helpful to get into WP 6.0 to benefit this feature pluginFeature Plugin A plugin that was created with the intention of eventually being proposed for inclusion in WordPress Core. See Features as Plugins. work ahead of whatever future feature merge (e.g., in WP 6.1)?  I want to make sure we get to those things before WP 6.0 Beta 1 on April 12th.
    • @flixos90: If you’ve been working on one of the enhancements or want to work on something where you’re limited e.g. by lack of core filters or actions, now it’s the time to flag those problems
    • @pbearne: Here’s one: https://core.trac.wordpress.org/ticket/55347
  • @craigfrancis: Can someone do a quick check on my very basic PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher perf test for #52506 at https://wpdb.eiv.dev/ (press the “001” button to see the PHP code for the first test)? I appreciate it does not account for TurboBoost, CPU temperature changes, or other processes on this VM or others, etc… I’m just wondering if this is “good enough” to check the patch isn’t likely to cause problems.
  • @pbearne: Got an offer from Tugboat for previews of core patches here; will bring up in dev chat and get more info

Help wanted

#core-js, #core-media, #performance, #performance-chat, #summary

Bug Scrub Schedule for 6.0

With 6.0 well underway, it’s time to schedule the 6.0 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. scrub sessions. These 6.0 specific ticketticket Created for both bug reports and feature development on the bug tracker. scrubs will happen each week until the final release.

Alpha Scrubs:

Hosted by @costdev

Hosted by @chaion07 (APAC-Friendly)

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. Bug Scrubs
Focus: issues reported from the previous beta.

Hosted by @costdev

Hosted by @chaion07 (APAC-friendly)

Release Candidaterelease candidate One of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). Bug Scrubs (if needed)
Focus: issues reported from the previous RCrelease candidate One of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta)..

Hosted by @costdev

Hosted by @chaion07 (APAC-Friendly)

Check this schedule often, as it will change to reflect the latest information.

What about recurring component scrubs and triagetriage The act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors. sessions?

For your reference, here are some of the recurring sessions:

  • AccessibilityAccessibility Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility) Scrub: Every Friday, 15:00 UTC, in the #accessibility channel.
  • Help/About & Quick / Bulk Edit Scrub: Every Monday, 19:00 UTC, in the #core channel with maintainers @webcommsat, @marybaum, and @nalininonstopnewsuk
  • Testing Scrub: Every Friday, 13:15 UTC, in the #core-test channel.

Have a recurring component scrub or triage session?
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.” @costdev or @chaion07 on 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/. to have it added to this page.

Want to lead a bug scrub?

Did you know that anyone can lead a bug scrub at any time? Yes, you can!

How? Ping @costdev or @chaion07 on Slack with the day and time you’re considering as well as the report or tickets you want to scrub.

Planning one that’s 6.0-focused? Awesome! It can be added it to the schedule here. You’ll get well deserved props in Dev Chat, as well as in the #props Slack channel!

Where can you find tickets to scrub?

  • Report 5 provides a list of all open 6.0 tickets:
    • Use this list to focus on highest priority tickets first.
    • Use this list to focus on tickets that haven’t received love in a while.
  • Report 6 provides a list of open 6.0 tickets ordered by workflow.

Need a refresher on bug scrubs? Checkout Leading Bug Scrubs in the coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. handbook.

Questions?

Have a question, concern, or suggestion? Want to lead a bug scrub? Please leave a comment or reach out directly to @costdev or @chaion07 on Slack.

Props to: @davidbaumwald for proof-reading.

#6-0, #bug-scrub

A Week in Core – March 14, 2022

Welcome back to a new issue of Week in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. Let’s take a look at what changed on TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. between March 7 and March 14, 2022.

  • 32 commits
  • 69 contributors
  • 61 tickets created
  • 7 tickets reopened
  • 44 tickets closed

Last week, the WordPress Core Team released WordPress 5.9.2, which is a Security and Maintenance update.

The Core team is currently working on the next minor releaseMinor Release A set of releases or versions having the same minor version number may be collectively referred to as .x , for example version 5.2.x to refer to versions 5.2, 5.2.1, 5.2.3, and all other versions in the 5.2 (five dot two) branch of that software. Minor Releases often make improvements to existing features and functionality., WP 5.9.3, and on the next major, WP 6.0 🛠

Ticketticket Created for both bug reports and feature development on the bug tracker. numbers are based on the Trac timeline for the period above. The following is a summary of commits, organized by component and/or focus.

Code changes

Bundled Themes

  • Twenty Nineteen: Display Image 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. at the same size whether the image is linked or not – #48697
  • Twenty Nineteen: avoid columns set to full width to extend beyond editor bounds – #54169
  • Twenty Sixteen: Remove .entry-content selector from button styles – #55167
  • Twenty Thirteen: Add gradient background options using the theme color scheme – #49762
  • Twenty Twenty-One: Reverse logic for prefers-reduced-motion media query – #54174

Build/Test Tools

  • Add trashTrash Trash in WordPress is like the Recycle Bin on your PC or Trash in your Macintosh computer. Users with the proper permission level (administrators and editors) have the ability to delete a post, page, and/or comments. When you delete the item, it is moved to the trash folder where it will remain for 30 days. and restore of a single post e2e tests – #54843

Canonical

  • Check if the URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org scheme exists in strip_fragment_from_url()#55333

Coding Standards

  • Fix minor alignment issue in wp_ajax_install_theme()#54728

Docs

  • Further clarify the description for install_dashboard()#54729
  • Miscellaneous fixes in wp-admin/includes/plugin-install.php and wp-admin/includes/plugin.php#54729
  • Use third-person singular verbs for function descriptions in wp-includes/class-wp-locale.php#54729

Editor

  • Site Editor: Improve Global Styles filtering order
  • Site Editor: Fix typo in the description of 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.) template – #55374
  • Site Editor: Rename the default attachment template from “Media” to “Attachment” – #55373

External libraries

  • Update jQuery.query to version 2.2.3

Formatting

  • Use safecss_filter_attr in wp_get_layout_style()#55356

HTTPHTTP HTTP is an acronym for Hyper Text Transfer Protocol. HTTP is the underlying protocol used by the World Wide Web and this protocol defines how messages are formatted and transmitted, and what actions Web servers and browsers should take in response to various commands. APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.

  • Fix typo in and improve readability of wp_parse_url() docblockdocblock (phpdoc, xref, inline docs)#55355

I18Ni18n Internationalization, or the act of writing and preparing code to be fully translatable into other languages. Also see localization. Often written with a lowercase i so it is not confused with a lowercase L or the numeral 1. Often an acquired skill.

  • Move wp_get_list_item_separator() to a more appropriate place – #39733

Media

  • Add a “Copy URL to clipboard” function to the list table view – #54426
  • Allow wp_check_filetype() to support query strings in URLs – #30377
  • Note ClipboardJS as a global in /js/_enqueues/adminadmin (and super admin)/media.js – #54426
  • Relocate wp_filesize() function for use in frontend and backend. – #55367
  • Revert query string support for wp_check_filetype()#30377
  • Store attachment’s file size in metadata – #49412

Privacy

  • Fix “Retry” action after a personal data export failure – #53032

Quick/Bulk Edit

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/.

  • Correct the wording for show_in_nav_menus property description in post type visibility settings – #55340

Sitemaps

  • Pass term object to wp_sitemaps_taxonomies_entry filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output.#55239

Taxonomy

  • Improve code quality within _prime_term_caches()#55162
  • Only store term_ids and object_ids in WP_Term_Query query caches – #37189
  • Use get_terms instead of a database lookup in term_exists()#36949

i18n

  • Define List item separator as a WP_Locale property – #39733

Props

Thanks to the 69 people who contributed to WordPress Core on Trac last week: @SergeyBiryukov (8), @audrasjb (7), @sabernhardt (4), @dd32 (3), @Spacedmonkey (3), @swissspidy (3), @costdev (3), @johnbillion (2), @peterwilsoncc (2), @flixos90 (2), @boonebgorges (2), @scruffian (2), @adamsilverstein (1), @antpb (1), @joemcgill (1), @azaozz (1), @mehedi890 (1), @desrosj (1), @jeffpaul (1), @johnwatkins0 (1), @Cybr (1), @mukesh27 (1), @kevin940726 (1), @uday17035 (1), @talldanwp (1), @pbearne (1), @gregoiresailland (1), @ryokuhi (1), @pooja1210 (1), @RavanH (1), @pedromendonca (1), @david.binda (1), @azouamauriac (1), @voldemortensen (1), @layotte (1), @atomicjack (1), @supercleanse (1), @spencercameron (1), @justinahinon (1), @alexstine (1), @pavanpatil1 (1), @vortfu (1), @antonvlasenko (1), @rsiddharth (1), @ianbelanger (1), @tomjdevisser (1), @JarretC (1), @mikachan (1), @charleyparkerdesign (1), @smit08 (1), @sclayf1 (1), @grapplerulrich (1), @xknown (1), @sergey (1), @oandregal (1), @webcommsat (1), @get_dave (1), @hellofromTonya (1), @nomnom99 (1), @rafiahmedd (1), @hasanuzzamanshamim (1), @pbiron (1), @ravipatel (1), @spacedmonkey (1), @afercia (1), @jazbek (1), @figureone (1), @ovidiul (1), and @ianmjones (1).

Congrats and welcome to our 6 new contributors of the week: @mehedi890, @uday17035, @gregoiresailland, @tomjdevisser, @charleyparkerdesign, @sclayf1 ♥️

Core committers: @audrasjb (9), @sergeybiryukov (6), @davidbaumwald (6), @peterwilsoncc (4), @hellofromtonya (3), @spacedmonkey (3), and @jorgefilipecosta (1).

#5-9-3, #6-0, #core, #week-in-core

Editor Chat Agenda: 16th March 2022

Facilitator and notetaker: @jorgefilipecosta

This is the agenda for the weekly editor chat scheduled for Wednesday, 16 March 2022, 15:00 CET.

This meeting is held in the #core-editor channel in the Making WordPress 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/..

If you are not able to attend the meeting, you are encouraged to share anything relevant for the discussion:

  • If you have an update for the main site editing projects, please feel free to share as a comment or come prepared for the meeting itself.
  • If you have anything to share for the Task Coordination section, please leave it as a comment on this post.
  • If you have anything to propose for the agenda or other specific items related to those listed above, please leave a comment below.

#agenda, #core-editor, #core-editor-agenda, #meeting

Performance Chat Agenda: 15 March 2022

Here is the agenda for this week’s performance team meeting scheduled for March 15, 2022, at 16:00 UTC.

NOTE: Because the United States changed to Daylight Saving Time on Sunday, March 14, but UTC has not yet changed, this week and next week’s meeting are one hour later than usual if you are in the United States.


This meeting happens in the #performance channel. To join the meeting, you’ll need an account on the Making WordPress Slack.

#agenda, #meeting, #performance, #performance-chat