Dev Chat agenda, November 2, 2022

The meetings take place on Wednesdays at 20:00 UTC in the #core channel on Slack, and usually last an hour. All are welcome to attend or catch up via the summary.

About Dev Chat.

The publication of the Dev Chat agenda was held for the release party of WordPress 6.1to include the updates related to it.

1. Welcome

Introduction from coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. team repTeam Rep A Team Rep is a person who represents the Make WordPress team to the rest of the project, make sure issues are raised and addressed as needed, and coordinates cross-team efforts. @marybaum

Dev Chat summary, October 27, 2022 – thanks to @webcommsat for writing it and for checking items for today’s agenda.

2. Announcements

WordPress 6.1 “Misha” was released, November 1, 2022
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/ 14.5 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). expected November 2, 2022

During the last week:
6.1 Release Candidate 6 – October 31, 2022

6.1 Release Candidate 5 – October 28, 2022

Gutenberg 14.4 was released –“What’s new in Gutenberg 14.4” release post, October 27, 2022.

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

A Week in Core – October 31, 2022

Performance chat summary, November 1, 2022 – has some ticketticket Created for both bug reports and feature development on the bug tracker. updates including WebP, AVIF images, Object Cache. Also some calls for reviews.

Core editor improvement: enhancing the writing experience, October 28, 2022. Find more about other improvements to the core editor.

4. Forthcoming releases

Updates from the relevant teams relating to releases.

a) Latest major releasemajor release A release, identified by the first two numbers (3.6), which is the focus of a full release cycle and feature development. WordPress uses decimaling count for major release versions, so 2.8, 2.9, 3.0, and 3.1 are sequential and comparable in scope.: 6.1

Dev Notesdev note Each important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. for 6.1 find them at the dev-notes-6-1 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.). The Field Guide for 6.1.

b) 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.: 6.1.1

c) Next major: 6.2

Is there an update on the discussion on earlies?

If you have an update from release leads or any teams collaborating on related items, please add a comment.

5. Component maintainers updates / tickets / requests for help

Please add your request for tickets you would like to raise as a comment.

6. Open Floor

Please add your Open Floor item as a comment.

Thanks to @marybaum for reviewing the agenda.

#6-1#agenda#dev-chat

#6-2, #6-1, #6-1-1, #agenda, #dev-chat

Performance Chat Summary: 1 November 2022

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

Announcements

Focus area updates

Images

@adamsilverstein @mikeschroder

GitHub project

  • @adamsilverstein: On the AVIF front, it looks like Apple is building support right into WebKit, which means AVIFs will work on older iOSiOS The operating system used on iPhones and iPads./MacOS as long as users upgrade Safari (currently support depends on the underlying OS). See https://github.com/WebKit/WebKit/pull/5669. The coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. ticketticket Created for both bug reports and feature development on the bug tracker. is https://core.trac.wordpress.org/ticket/51228; the only outlier for AVIF support is now Microsoft Edge. In addition to 50%+ improvement over JPEG compression, AVIF images add support for HDR on the web; a contributor linked some sample images from the TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. ticket that are quite impressive.
  • @adamsilverstein: When working on the PR for setting fetchpriority=high on the non-lazy-loaded LCP image, noticed the first image on 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. themes isn’t having the lazy-loading attribute omitted as expected. Opened #56930 and PR #3538 to resolve; reviews appreciated. Also related: #56927, #55996.
  • @mehulkaklotar: Working on some improvements to Performance Lab:
    • Issue #560 – PR #565 – WebP upload configuration checkbox not showing in Settings > Media for multisitemultisite Used to describe a WordPress installation with a network of multiple blogs, grouped by sites. This installation type has shared users tables, and creates separate database tables for each blog (wp_posts becomes wp_0_posts). See also network, blog, site -> Merged
    • Issue #563 – PR #571 – Change default WebP quality to 82
  • @masteradhoc: Any updates on WebP?
    • @adamsilverstein: There has been some communication with Matt, repeating what he said on his post about concerns about WebP not being ready to be default mostly because it is hard to use outside of the web context. Hopefully in the future we’ll be able to get this kind of feedback earlier in a feature’s lifecycle. To move WebP further, we would need to address the underlying issue, either by improving ecosystem compatibility (which is happening naturally over time) or by improving browser capabilities (e.g. save as JPEG).
    • @spacedmonkey: In multisite, we used to proxy all attachments through PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher. Could we do that here? Proxy to see if there is WebP support, and if not, return JPEG. Has its downsides but thinking out loud.
      • @adamsilverstein: Didn’t know about that; could potentially only handle “missing” images that way using htaccess
      • @spacedmonkey: It’s still part of core: https://github.com/WordPress/wordpress-develop/blob/trunk/src/wp-includes/ms-files.php
    • @masteradhoc: Could we open a ticket in the Chromium GH for save as JPEG to see if they could add? Would help the biggest part of the web.
    • @flixos90: We can’t really solve the problem in a clean way in WP though, since the right-click Save As behavior can’t be modified via PHP or JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors.. Wish browsers supported some way of achieving a JPEG download of a WebP image on the web, e.g. if you use a <picture> element it could be default download as JPEG even when WebP is served in the browser. Or there could be some kind of download-src attribute.
      • @rmccue: Have run into this while serving images dynamically, no great way to handle
      • @flixos90: Looking to see if there’s anyone we can work with on this internally at Google

Feedback requested

Object Cache

@tillkruess @spacedmonkey

GitHub project

  • @spacedmonkey: Tickets:
    • https://core.trac.wordpress.org/ticket/56923
    • https://github.com/WordPress/gutenberg/issues/45309
    • https://github.com/WordPress/wordpress-develop/pull/3528
    • https://github.com/WordPress/wordpress-develop/pull/3544
    • https://github.com/WordPress/wordpress-develop/pull/3534
  • @spacedmonkey: Reviewed performance in 6.1-RC3 and updated results here; looking good. FSE themes are still slower than classic themes. Created some tickets related to issues found; have been working on https://github.com/WordPress/wordpress-develop/pull/3540.
  • @flixos90: Also did an analysis on RC3 last week; major improvement over RC1 and RC2. Still a few areas that were slightly worse than 6.0, but some of that is due to added functionality. Still a few quirks where 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. is noticeably worse, namely in the wp_head action. Have tracked down the particular change that makes wp_head slower even in classic themes; PR with a potential fix here: https://github.com/WordPress/wordpress-develop/pull/3536.
  • @spacedmonkey: Biggest issue is that class is static methods and variables, which makes it hard to review and test.

Feedback requested

Measurement

N/A

GitHub project

  • @adamsilverstein: Digging back into the testing environment work that started awhile ago to see what we can pick up and use and what an MVPMinimum Viable Product "A minimum viable product (MVP) is a product with just enough features to satisfy early customers, and to provide feedback for future product development." - WikiPedia could look like. Still researching/documenting, but more to come.

Feedback requested

JS & CSSCSS Cascading Style Sheets.

@aristath @sergiomdgomes

GitHub project

  • No updates

Feedback requested

Database

@olliejones

GitHub project

  • @mxbclang: @aristath is continuing to work on the SQLite integration module in https://github.com/WordPress/performance/pull/547; feedback welcome
  • @spacedmonkey: Thoughts on running core unit tests against SQLite, similar to how tests are run against memcache? Could allow the tests to fail for now, but would highlight where we need to fix issues.
    • @adamsilverstein: Great idea, curious about performance as well
    • @spacedmonkey: Is this Trac or MetaMeta Meta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress.?
    • @adamsilverstein: Neither, Performance Lab only right now; proposal here
    • @spacedmonkey: Yes, but add official support for testing against SQLite, so in the test run, install the drop-in for SQLite and run tests
    • @adamsilverstein: I see, I think that is still core since it’s all in the main develop repo
    • @spacedmonkey: Will create a ticket for this

Feedback requested

Infrastructure

@flixos90

GitHub project

  • @flixos90: Planning to review https://github.com/WordPress/performance/pull/566 today, which brings the focus areas up-to-date.
  • @mehulkaklotar: I have worked on issue #561 – PR #570 – Investigate unexpected input Warning message during release build process -> Needs review and testing both

Feedback requested

Our next chat will be held on Tuesday, November 8, 2022 at 10am EST in the #core-performance channel in Slack.

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

#meta

Editor Chat Agenda: 2 November 2022

Facilitator and notetaker: @get_dave

This is the agenda for the weekly editor chat scheduled for Wednesday, November 2 2022, 04:00 PM GMT+1. 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/..

WordPress 6.1 “Misha” was released 1st of November.
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/ 14.5 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). should be released 2nd of November.

Key project updates:

Task Coordination.

Open Floor – extended edition.

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

A Week in Core – October 31, 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 October 24 and October 31, 2022.

  • 39 commits
  • 69 contributors
  • 43 tickets created
  • 13 tickets reopened
  • 46 tickets closed

The Core team is currently working on the next major releasemajor release A release, identified by the first two numbers (3.6), which is the focus of a full release cycle and feature development. WordPress uses decimaling count for major release versions, so 2.8, 2.9, 3.0, and 3.1 are sequential and comparable in scope., WP 6.1 🛠

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

Administration

  • Improve the wording of “Site Address” field description – #50629

Build/Test Tools

  • Ensure PHPCSPHP Code Sniffer PHP Code Sniffer, a popular tool for analyzing code quality. The WordPress Coding Standards rely on PHPCS. related workflows are properly marked as failed – #55652
  • Hardcode the ref for the workflow dispatch on failure – #55652
  • Introduce a workflow for testing and building default themes – #56898
  • Correctly restore the wp_installing() status in Ajax tests – #56793
  • Move dbDelta() tests to the db directory – #56793, #56782
  • Move wp_handle_comment_submission() tests to the comment directory. – #56793
  • Move wp_mail() tests to the pluggable directory. – #56793
  • Move some @covers tags in the formatting group to the class DocBlockdocblock (phpdoc, xref, inline docs)#56793
  • Move the tests for WP class methods to the wp directory – #56793, #56782
  • Move the tests for pluggable function signatures to the pluggable directory – #56793, #56782
  • Prevent wp_update_themes() from running in wp_ajax_update_theme() tests – #56793
  • Remove skipWithMultisite() and skipWithoutMultisite() from get_user_count() tests – #56793
  • Remove skipWithMultisite() from an Ajax test for attachments – #56793
  • Remove unused $user_ids property in Tests_Ajax_Autosave class – #56793
  • Rename classes in phpunit/tests/ajax/ per the naming conventions – #56793
  • Rename classes in phpunit/tests/comment/ per the naming conventions – #56793
  • Split the tests from category.php into individual test classes – #56793
  • Split the tests from multisite.php into individual test classes – #56793
  • Temporarily skip WOFF file test on PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher 8.1 – #56817

Bundled Themes

  • Twenty Twenty-Three: Merge the latest changes from GitHubGitHub GitHub is a website that offers online implementation of git repositories that 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/#56383

Coding Standards

  • Correct alignment in Tests_Ajax_Autosave::wpSetUpBeforeClass()#56793

Database

Docs

  • Add a @since note for object-fit support in safecss_filter_attr()#56855
  • Update a link to the Custom Elements spec in unsupported_valid_tag_names() unit testunit test Code written to test a small piece of code or functionality within a larger application. Everything from themes to WordPress core have a series of unit tests. Also see regression. docblock – #56792

Editor

  • Allow arrays for deprecated asset types in 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. registration – #56707
  • Correctly apply Button block styles for classic themes – #56467
  • Ensure global styles are rendered for third-party blocks – #56915
  • Update packages for 6.1 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). 3 – #56467

Help/About

  • Add link to the 6.1 release video – #56357
  • Update About section images – #56357

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.

  • Change how WP_Textdomain_Registry stores the default languages path – #39210

KSES

  • Display a notice if any of the required globals are not set – #47357

Media

  • Add object-fit to the allowed list of CSSCSS Cascading Style Sheets. properties – #56855
  • Reverts get_attached_file() changes for normalized Windows paths – #56924

Query

  • Move cache key generation to its own method – #56802

Role/Capability

  • Revert the newly added update_role function for 6.1

Themes

  • Ensure custom global styles are imported properly – #56901

Upgrade/Install

  • Update $_old_files for 6.1 – #56934

Props

Thanks to the 69 people who contributed to WordPress Core on Trac last week: @SergeyBiryukov (9), @audrasjb (7), @peterwilsoncc (5), @desrosj (5), @spacedmonkey (4), @davidbaumwald (4), @bernhard-reiter (4), @hellofromTonya (3), @mukesh27 (3), @cbravobernal (3), @pbearne (3), @oandregal (2), @scruffian (2), @aristath (2), @flixos90 (2), @poena (2), @sergeybiryukov (2), @ndiego (2), @hellofromtonya (2), @ocean90 (2), @kebbet (2), @sabernhardt (2), @ironprogrammer (2), @andraganescu (2), @andrewserong (2), @mikeschroder (2), @jorbin (2), @costdev (2), @annezazu (2), @bosconiandynamics (1), @joedolson (1), @nendeb55 (1), @jrf (1), @TJNowell (1), @TobiasBg (1), @raduiason (1), @ckanderson22 (1), @KnowingArt_com (1), @pento (1), @pbiron (1), @doctorlai (1), @manfcarlo (1), @xknown (1), @seriouslysenpai (1), @ivanjeronimo (1), @adamsilverstein (1), @ramonopoly (1), @azaozz (1), @EidolonNight (1), @admwgn (1), @critterverse (1), @joen (1), @jpantani (1), @laurlittle (1), @cbringmann (1), @kellychoffman (1), @pablohoney (1), @mreishus (1), @tobifjellner (1), @anariel-design (1), @wildworks (1), @ajlende (1), @gigitux (1), @czapla (1), @richtabor (1), @digical (1), @kafleg (1), @mikachan (1), and @gziolo (1).

Congrats and welcome to our 3 new contributors of the week: @admwgn, @gigitux, @digical ♥️

Core committers: @sergeybiryukov (21), @davidbaumwald (5), @desrosj (4), @bernhard-reiter (3), @ryelle (2), @hellofromtonya (1), @antpb (1), @peterwilsoncc (1), and @swissspidy (1).

#6-1, #core, #week-in-core

WordPress 6.1 Release Candidate 6 (RC6) Now Available for Testing

WordPress 6.1 is scheduled for release tomorrow, November 1, 2022! This RC6 release is the last milestone for testing ahead of the official release.

The following issues have been addressed since RC5:

  • Unexpected quotes around search text in custom LIKE queries (see #56933)

This has resulted in a decision to postpone escaping table and field names with wpdb::prepare() to 6.2.

Thank you to all of the contributors who tested the 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./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). releases and provided feedback. Testing is a critical part of making each release strong and a great way to contribute to WordPress.

Installing RC6

This version of the WordPress software is under development. Please do not install, run, or test this version of WordPress on production or mission-critical websites. Instead, it is recommended that you install RC5 on a test server and site. 

You can test WordPress 6.1 RC6 in three ways:

Option 1: Install and activate the WordPress Beta Tester 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 (select the “Bleeding edgebleeding edge The latest revision of the software, generally in development and often unstable. Also known as trunk.” channel and “Beta/RC Only” stream).

Option 2: Direct download the release candidate version (zip).

Option 3: Run the following command to upgrade via WP-CLIWP-CLI WP-CLI is the Command Line Interface for WordPress, used to do administrative and development tasks in a programmatic way. The project page is http://wp-cli.org/ https://make.wordpress.org/cli/:
wp core update --version=6.1-RC6

Plugin and Theme Developers

All plugin and theme developers are encouraged to complete testing of their respective extensions against WordPress 6.1 RC6 and update the “Tested up to” version in their readme file to 6.1 this week. If you find compatibility problems, please post detailed information to the support forums, so these items can be investigated promptly.

Review the WordPress 6.1 Field Guide, for more details on this release.

You can find additional information on the entire 6.1 release cycle.

Check the Make WordPress Core blog for 6.1-related developer notes for further details on the 6.1 release.

How to Help Test WordPress

Testing for issues is critical for stabilizing a release throughout its development. Testing is also a great way to contribute to WordPress. If you are new to testing, check out this detailed guide that will walk you through how to get started.

If you think you have run into an issue, please report it to the Alpha/Beta area in the support forums. If you are comfortable writing a reproducible 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. report, you can file one on WordPress Trac. This is also where you can find a list of known bugs.

Can you speak and write in a language other than English? Help translate WordPress into more than 100 languages!


Haikus for RC6

Table and field name
%i must wait for 6.2 now
Too weird for RC5


Props @annezazu, @marybaum, and @hellofromtonya for peer review.

#6-1, #releases

Postponed to WP 6.2: Escaping Table and Field names with wpdb::prepare()

Support for %i to escape Table and Field names was postponed to 6.2, see:
https://make.wordpress.org/core/2022/10/08/escaping-table-and-field-names-with-wpdbprepare-in-wordpress-6-1/

A problem was found during RC5, where some extensions use field LIKE "%%%s%%", and expect the %s to remain unquoted.

This is undocumented behaviour. Officially the only time placeholders should not be quoted (for backwards compatibility reasons) is when using numbered or formatted string placeholders (this is unsafe, and should be avoided).

In this case, the first %% results in a literal "%", but this goes on to affect the %s.

For reference, developers should rely on wpdb::prepare() to quote all variables, so mistakes cannot be made. In this case it’s recommended to use something like the following:

$wpdb->prepare( 
     'field LIKE %s', 
     '%' . $wpdb->esc_like( $var ) . '%' );

Thanks to @AlanP57 for reporting, @hellofromtonya and @sergeybiryukov for reverting the 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., @azaozz and @bph for helping document this, and everyone else for generally helping out.

#6-1, #dev-notes, #dev-notes-6-1, #wpdb

Editor chat summary: Wednesday, October 26 2022

This post summarizes the weekly editor chat meeting on Wednesday, 26 October 2022, 04:00 PM GMT+2 held 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/.. You can view the full transcript here.

WordPress & 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/ releases

WordPress 6.1

At the time of the meeting the 3rd release candidate was published and available for testing. There since have been two more release candidates.

For anyone that is interested and hasn’t seen it yet here is the Field Guide for 6.1.

Gutenberg 14.4

Gutenberg 14.4 was released by @juanmaguitar. The “What’s new in Gutenberg 14.4” release post has since also been published.

Key project updates

Task Coordination

@colorful-tones is planning to work on some designs and help triagetriage The act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors. tickets related to the search 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.. You can follow the progress in the Tracking issue: Expand Search block customization.

@get_dave shared the priorities list for the Navigation Block in WordPress 6.2. Contributors have posted some revised designs for new editing experiences which we are proposing as a focus for the next release(s).

Open Floor

@alexstine shared the ticket to move document information and outline to list view panel. The ticketticket Created for both bug reports and feature development on the bug tracker. could use additional feedback.

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

Performance Chat Agenda: 1 November 2022

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


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

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

WordPress 6.1 Release Candidate 5 (RC5) Now Available for Testing

WordPress 6.1 is scheduled for release next week on November 1, 2022! This RC5 release is the last milestone for testing ahead of the official release.

The following issues have been addressed since RC4:

  • get_attached_file(): New call to path_join() can have poor performance on NFS file systems (see #56924)

Thank you to all of the contributors who tested the 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./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). releases and provided feedback. Testing is a critical part of making each release strong and a great way to contribute to WordPress.

Installing RC5

This version of the WordPress software is under development. Please do not install, run, and test this version of WordPress on production or mission-critical websites. Instead, it is recommended that you install RC5 on a test server and site. 

You can test WordPress 6.1 RC5 in three ways:

Option 1: Install and activate the WordPress Beta Tester 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 (select the “Bleeding edgebleeding edge The latest revision of the software, generally in development and often unstable. Also known as trunk.” channel and “Beta/RC Only” stream).

Option 2: Direct download the release candidate version (zip).

Option 3: Run the following command to upgrade via WP-CLIWP-CLI WP-CLI is the Command Line Interface for WordPress, used to do administrative and development tasks in a programmatic way. The project page is http://wp-cli.org/ https://make.wordpress.org/cli/:
wp core update --version=6.1-RC5

Plugin and Theme Developers

All plugin and theme developers are encouraged to complete testing of their respective extensions against WordPress 6.1 RC5 and update the “Tested up to” version in their readme file to 6.1 this week. If you find compatibility problems, please post detailed information to the support forums, so these items can be investigated promptly.

Review the WordPress 6.1 Field Guide, for more details on this release.

You can find additional information on the entire 6.1 release cycle.

Check the Make WordPress Core blog for 6.1-related developer notes for further details on the 6.1 release.

How to Help Test WordPress

Testing for issues is critical for stabilizing a release throughout its development. Testing is also a great way to contribute to WordPress. If you are new to testing, check out this detailed guide that will walk you through how to get started.

If you think you have run into an issue, please report it to the Alpha/Beta area in the support forums. If you are comfortable writing a reproducible 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. report, you can file one on WordPress Trac. This is also where you can find a list of known bugs.

Can you speak and write in a language other than English? Help translate WordPress into more than 100 languages!


Haikus for RC5

Here’s two haikus for this final RC.

How about one more?
Getting closer and closer
Have you tested yet?

Last minute 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.
Networked storage is tricky
Let’s make it faster


Props @davidbaumwald, @cbringmann, and @jpantani for post publish review, and @mikeschroder for the second haiku.

#6-1, #releases

Core Editor Improvement: Advancing the writing experience

These “CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Editor Improvement…” posts (labeled with the #core-editor-improvement 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 a series dedicated to highlighting various new features, improvements, and more from Core Editor related projects. 

The experience of writing your latest post, whether as part of your weekly routine or out of excitement from a recent adventure, just got easier in many different ways. From a new mode that helps you focus on just writing to more keyboard shortcuts for quickly navigating content, there’s something for everyone, no matter how you approach writing your posts. 

For clarity, everything that will be included in the 6.1 release is explicitly noted below. Otherwise, it is available in the 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/ 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

Select exactly what you want (available in WordPress 6.1)

After the introduction of multi-select, where you can select text across multiple blocks without selecting the blocks as a whole, new enhancements were introduced to balance against situations where you might want to select across blocks. Specifically, partial selection remains the default option until you select a 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. that can’t be combined, like an Image block. Tied to this, the animation and appearance of the overall experience were also updated to be clearer and smoother. You can see this at play in the visual below, where partial selection is used until an image is selected and the overlay selection color switches to every block.  This should make both the feeling of selecting blocks and the accuracy of doing exactly what you want much more cohesive. 

GIF showing text being selected at first across individual paragraph blocks before, when selecting an image block, all blocks being selected.

Move faster with keyboard shortcuts (available in Gutenberg 14.3)

Gutenberg 14.3 included support for alt + arrow keyboard combinations to make navigating blocks of text quick and easy:

  • If your cursor is at the end of a long paragraph, you can press the alt + up arrow to move to the beginning of that paragraph. 
  • If you are already at the beginning of a text block, you can press the alt + up arrow to move to the start of the previous paragraph. 
  • If you press alt + down arrow, it will move you to the end of a block of text.

Improved document settings (available in WordPress 6.1)

A revamped document settings experience improves legibility and resulting usability with a cleaner, more organized display. It should help you more readily access all the important information about your post/page, including the template picker and scheduler. Specifically, the fields for post format, slug, template, and authors are aligned and have the same width. The template displays ‘default template’ instead of none, and the Permalink link opens a popover to edit the slug when clicked. The result is a cleaner, more organized display so you can see exactly what you need to before sharing your next post. 

Before and after images next to each of changes to document settings with the after image showing more consistency.

Do more with the Quote & List blocks (available in WordPress 6.1)

The Quote block now allows you to add nested blocks, meaning you could add the new List block inside the new Quote block. Similarly, the List block uses inner blocks, meaning your list items can be easily sorted and indented with a much-improved user experience.

Quote block with multiple inner blocks listed, including image and list.

Opt in to fewer distractions and more focus (available in Gutenberg 14.4)

For those looking for an even more focused experience, enter distraction-free mode available as soon as Gutenberg 14.4 is released. It’s a more drastically reduced experience with the following settings in place, allowing you to focus on the creation experience as much as possible: 

  • Hides the top toolbar until one intentionally hovers over where it typically sits.
  • Removes many top toolbar buttons.
  • Automatically closes any open sidebars, from block settings to list view. 
  • Hides the insertion point indicator, reducing visual clutter. 
  • Hides the block toolbar. 

More work remains to be done to fully form this new mode but the promise of what it provides is exciting for those looking for a more contained writing experience.

Use the autocompletion for links anywhere you want (available in WordPress 6.1)

While the [[ shortcut was introduced a while ago, it can now be used anywhere you want to add any internal link you’d like. Previously, it was isolated to just the blocks that explicitly opted in, and as you can see in the video below, you can now take advantage of this feature no matter what you’re editing:

Transform blocks with ease with improved organization (available in WordPress 6.1)

The transforms menu offers a shortcut to switch to different blocks, depending on your content. As the number of blocks has grown and the reliance on this menu has increased, the menu’s organization has evolved to emphasize content blocks. Specifically, blocks that support paragraph, heading, list, and quote transforms, are now weighted over other more structural blocks, like a Group or Column. This should help common pathways be easier to find as more common transformations. 

Heading block transform menu open showing prioritized content blocks.

Keep List View open by default (available in WordPress 6.1)

For any List View fans, Gutenberg 13.3 introduced the option to have List View open by default. This makes navigating complex content, like a long post sharing every detail of a big adventure, much easier. Rather than needing to open it every single time you enter the editor, it’ll be waiting for you with every new post you write:

Preferences modal open showing "always open list view" checked off.

Enjoy improvements to the various inserters (available in Gutenberg 14.2)

The inserters are a big part of the base experience of using the block editor. An update to the animation effect for the sibling and in-line inserters now offers a more natural and responsive feel. On the flip side, when you’re typing, the block inserter is now hidden to reduce visual noise and allow more of a focus on the writing experience itself: 

Taken together, these enhancements will allow you to engage with the inserters better only when you need them. 

Control image captions from the block toolbar (available in Gutenberg 14.4)

You can now add or remove a caption for an image directly from the block toolbar. If a caption has already been set, it will be included by default when the image is added to your content, saving you time and giving you options.

More to come

Ensuring the base editing experience is excellent is always a work in progress and a focus, especially as work is underway to bring the block editing experience to more parts of the site for more people. As you run into bugs, feature requests, or feedback, please remember to share in GitHub so the experience can continue to be refined. 

#core-editor-improvement, #gutenberg