Bug Scrub Schedule for WordPress 6.3

It’s time to schedule the 6.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 sessions!
These 6.3 specific ticketticket Created for both bug reports and feature development on the bug tracker. scrubs will happen each week until the final release.

Alpha Bug Scrubs

Beta Bug Scrubs
Focus: issues reported from the previous beta.

  • TBD

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

  • TBD

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:

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.” @audrasjb, @chaion07, @oglekler, or @mukesh27 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 @audrasjb, @chaion07, @oglekler, or @mukesh27 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.3-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.3 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.3 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.

Thanks to @chaion07, @oglekler, or @mukesh27 for helping to put together the agenda.

#6-3, #bug-scrub, #core

Dev Chat Summary, May 24, 2023

The WordPress Developers Chat meeting took place on May 24, 2023 at 20:00 UTC in the core channel of Make WordPress Slack.

Key Links

Announcements

  • WordPress 6.2.2 Security Release: This rapid-response security release addresses a shortcodes 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. from 6.2.1, and further improves security around this feature.
  • What’s new in Gutenberg 15.8: Get the latest scoop on what’s recently shipped 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/. Posted by @fabiankaegy 🎉
  • …which means that Gutenberg 15.8 is available for download.

Highlighted Posts

Here’s an overview of updates in TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. between May 8 and May 22, 2023 — yep, that’s “Two Weeks in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.”:

  • 48 commits
  • 87 contributors
  • 108 tickets created
  • 10 tickets reopened
  • 79 tickets closed
  • 🥁 and 5 new contributors in this period 🎉
  • WP Briefing: Episode 56: What to Know About WordPress Playground: Learn more about experiments surrounding the ever-growing WordPress Playground, and what coding and testing 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) opportunities this exciting project is making possible.
  • Core Editor Improvement: Smoother Site Editing: See some of the latest updates to the editor, including revisionsRevisions The WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision. history for styles, templates, and template parts.

Release Updates

  • WordPress 6.3 Planning Roundup: Please take a moment to review the latest plans for 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.. And give a round of applause to the new release squad! (You can find them and follow along over in #6-3-release-leads, too!)
  • @audrasjb indicated that the full 6.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 schedule was almost ready to publish. The schedule includes at least 2 scrubs per week, on Tuesdays and Thursdays, and alternatively at 05:00, 06:00, 14:00, and 17:00 UTC. Everyone is welcome to join the first scrub on 25 May at 14:00 UTC.
  • @karmatosed wished to bring awareness to a proposal to include #design triagetriage The act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors. as part of 6.3 #core and #core-editor triages, rather than as separate design-only meetings. The objective is to draw greater designer focus to these release-specific meetings, and encourage better collaboration and alignment between teams. It is planned to record some of these sessions as learning resources. Tammie asked for feedback on this idea and how the Design team can be helpful in the release, with the first meeting plan soon to be posted on make/design. She also called on other contributors to highlight tickets that needed Design team input, so that they could be amplified in #design.
  • @francina also gave a reminder that the #6-3-release-leads channel was a good place to follow along with release coordination efforts, in particular encouraging contributors with interest in helping on the 6.4 release to join the channel and ask questions.

Maintainers: Component Help Requests

@afragen called for additional help in testing the 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 Dependencies feature pluginFeature Plugin A plugin that was created with the intention of eventually being proposed for inclusion in WordPress Core. See Features as Plugins., and requested Design team feedback. @karmatosed proposed some options for helping move designer involvement forward.

@oglekler highlighted #11856: URL for 1st comments page is not canonical, indicating it would need a careful approach to resolution.

Open Floor

WP Adminadmin (and super admin) Help Panel

@studionashvegas shared #55342: If the contextual help panel is open and then I scroll, I have to click on help twice to close the panel, asking for review of 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., which addresses a visual bug in WP admin. @audrasjb assigned the ticketticket Created for both bug reports and feature development on the bug tracker. to the 6.3 milestone, and marked for needs-testing.

Special Focus Triage Sessions

@oglekler asked if there were plans for additional “old ticket” triage sessions, and @karmatosed suggested that holding even one session per release would be a good beginning.

@oglekler also wondered if all tickets marked as critical could be triaged, with the belief that many may be mis-classified. She suggested that the critical severityseverity The seriousness of the ticket in the eyes of the reporter. Generally, severity is a judgment of how bad a bug is, while priority is its relationship to other bugs. is most useful when applied correctly. @ironprogrammer asked if reviewing these tickets was part of release scrubs, and @audrasjb indicated that scheduling dedicated scrubs for these tickets would be best, but that it was ultimately up to release Triage co-leads to decide.

@ironprogrammer then asked for volunteers to help facilitate these scrubs, suggesting there could be other interested contributors, and included a link to the Core Handbook’s bug scrub tutorial. @davidbaumwald added a reminder that scrubs could happen any time by anyone. He also indicated agreement that existing critical tickets were mostly normal severity, and could be cleaned up quickly without requiring a meeting. Contributors can request “Bug Gardener” Trac access in the #core channel if they wish to conduct triage.

Next Meeting

The next meeting will be on May 31, 2023 at 20:00 UTC.

Are you interested in helping draft Dev Chat summaries? Volunteer at the start of the next meeting on the #core Slack channel.

Props @audrasjb and @pbiron for peer review of this summary.

#6-3, #6-2-2, #dev-chat, #meeting, #summary

A Week in Core – May 22, 2023

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 May 8 and May 22, 2023 (sorry for not being able to publish a post last week, this one will cover two weeks!).

  • 48 commits
  • 87 contributors
  • 108 tickets created
  • 10 tickets reopened
  • 79 tickets closed

Also, WordPress 6.2.1 and 6.2.2 maintenance and security releases went out!

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

  • Add missing escaping for CSSCSS Cascading Style Sheets. classes on the body 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.) in the adminadmin (and super admin)#58336

Build/Test Tools

  • Call wp_cache_flush_runtime in WP_UnitTestCase. – #31463
  • Move wp_cache_flush_runtime() next to wp_cache_flush()#57841
  • Partial revert of r55745 – #57841
  • Remove expectation of a deprecation notice from WP_Posts_List_Table tests – #58157
  • Split the tests from user/author.php into individual test classes – #57841
  • Use the function get_num_queries across all unit tests – #57841

Code Modernization

  • Correct fallback return value in get_the_author()#58157
  • Explicitly declare all properties in Text_Diff_Engine_native#58298

Coding Standards

  • Use esc_url() to escape link URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org value in wp-admin/edit-link-form.php#58282

Comments

  • Always lazily load comment 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.#57801

Docs

  • A host of corrections and improvements to inline documentation – #57840
  • Clarify @param types on get_sample_permalink_html 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.#58322
  • Correct default value for the $optimize option in Style Engine – #57840
  • Fix a few more typos in DocBlocks – #57840
  • Fix a few more typos in DocBlocks and inline comments – #57840
  • Fix a few more typos in inline comments – #58334, #57840
  • Fix typo in a comment in Bulk_Upgrader_Skin::header() and ::footer()#58334
  • Improve HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. 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. file and class headers per the documentation standards – #57840
  • Improve Style Engine DocBlocks per the documentation standards – #57840
  • Improve Style Engine file and class headers per the documentation standards – #57840
  • Improve a few DocBlocks in wp-includes/formatting.php#58316
  • Update code examples formatting in WP_HTML_Tag_Processor documentation – #58028
  • Various corrections and improvements to inline docsinline docs (phpdoc, docblock, xref) and docblocks – #57840
  • describe return type of _get_block_template_file()#57756

Editor

  • Disable lazy loading term meta in get_block_templates#58230
  • Ensure 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. comments are of a valid form
  • Remove shortcodeShortcode A shortcode is a placeholder used within a WordPress post, page, or widget to insert a form or function generated by a plugin in a specific location on your site. support from block templates
  • Restore shortcode support for block templates – #58333
  • Update block editor packages to the latest 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. releases – #58274

Embeds

  • Add protocol validation for WordPress Embed code

General

  • Remove a few is_object() checks followed by instanceof operator – #58309
  • Use static on closures whenever $this is not used to avoid memory leaks – #58323

Help/About

  • Remove unwanted space in a link located on about.php#58373

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.

  • Introduce sanitization function for localeLocale A locale is a combination of language and regional dialect. Usually locales correspond to countries, as is the case with Portuguese (Portugal) and Portuguese (Brazil). Other examples of locales include Canadian English and U.S. English.
  • Replace “Roll back” with “Restore” in user facing strings – #58282

Media

  • Conditionally skip lazy-loading on images before the 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. to improve LCP performance – #58211
  • Increase default for wp_omit_loading_attr_threshold to 3 – #58213
  • Introduce wp_get_attachment_image_context filter – #58212
  • Prevent CSRF setting attachment thumbnails
  • Prevent special images within post content to skew image counts and cause lazy-loading bugs – #58089

Networks and Sites

  • Lazy load site meta – #58185
  • Load WP_Metadata_Lazyloader class file if class does not exist – #58185
  • Load WP_Metadata_Lazyloader class file if class in meta.php – #58185

Plugins

  • Remove is_object() check in WP_Hook:build_preinitialized_hooks()#58290

Posts, Post Types

  • Add a new filter for query arguments in get_pages#12821

RevisionsRevisions The WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision.

  • Add edit link functionality for the wp_template and wp_template_part post types – #57709

TaxonomyTaxonomy A taxonomy is a way to group things together. In WordPress, some common taxonomies are category, link, tag, or post format. https://codex.wordpress.org/Taxonomies#Default_Taxonomies.

  • Do not prime term meta in wp_get_object_terms#57701

Props

Thanks to the 87 people who contributed to WordPress Core on Trac last week: @spacedmonkey (15), @peterwilsoncc (10), @costdev (10), @mukesh27 (9), @xknown (6), @flixos90 (6), @sergeybiryukov (5), @westonruter (5), @johnbillion (5), @thekt12 (4), @audrasjb (4), @youknowriad (4), @jrf (4), @davidbaumwald (3), @timothyblynjacobs (3), @isabel_brison (3), @dd32 (3), @antpb (3), @Presskopp (3), @talldanwp (2), @andraganescu (2), @ntsekouras (2), @ocean90 (2), @NekoJonez (2), @oandregal (2), @matveb (2), @rmccue (2), @desrosj (2), @aristath (1), @johnjamesjacoby (1), @antonvlasenko (1), @ramonopoly (1), @ironprogrammer (1), @annezazu (1), @wonderboymusic (1), @boonebgorges (1), @voldemortensen (1), @DrewAPicture (1), @tillkruess (1), @mamaduka (1), @wildworks (1), @mdxfr (1), @hellofromtonya (1), @kebbet (1), @mattwiebe (1), @bph (1), @ndiego (1), @joen (1), @ellatrix (1), @kevin940726 (1), @andrewserong (1), @welcher (1), @juanmaguitar (1), @coffee2code (1), @azaozz (1), @bor0 (1), @thomask (1), @dilipbheda (1), @marianne38 (1), @mikeschroder (1), @ehtis (1), @jorbin (1), @gziolo (1), @chriscct7 (1), @Otto42 (1), @ryelle (1), @joedolson (1), @Clorith (1), @kamplugins (1), @afragen (1), @apermo (1), @kenwins (1), @noisysocks (1), @zunaid321 (1), @martinkrcho (1), @paulkevan (1), @ahsannayem (1), @rutviksavsani (1), @Enchiridion (1), @sumitbagthariya16 (1), @Soean (1), @sabernhardt (1), @salvoaranzulla (1), @ebai4 (1), @sajjad67 (1), @tijmensmit (1), and @dmsnell (1).

Congrats and welcome to our 5 new contributors of the week: @marianne38, @ahsannayem, @rutviksavsani, @ebai4, @tijmensmit ♥️

Core committers: @sergeybiryukov (17), @audrasjb (10), @spacedmonkey (9), @flixos90 (4), @johnbillion (2), @desrosj (1), @westonruter (1), @oandregal (1), and @davidbaumwald (1).

#6-3, #core, #week-in-core

Editor Chat Agenda: 24 May 2023

Facilitator and notetaker: @paaljoachim

This is the agenda for the weekly editor chat scheduled for Wednesday, May 24 2023, 03: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/..

What’s new in Gutenberg 15.8? (May 17)
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/ 15.9 RC1 will be released Wednesday and available for testing.
WordPress 6.3 posts: Roadmap to 6.3 and WordPress 6.3 Planning Roundup.

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

Dev Chat Agenda, May 24, 2023

The next weekly WordPress developers chat will take place on  Wednesday May 24, 2023 at 20:00 UTC in the core channel of Make WordPress Slack. All are welcome.

1. Welcome and housekeeping

Dev Chat summary, May 17, 2023 – thanks to @ironprogrammer

2. Announcements

WordPress 6.2.2 Security Release

What’s new in Gutenberg 15.8 – posted by @fabiankaegy.

Gutenberg 15.8 is available to download

3. Highlighted posts

WP Briefing: Episode 56: What to Know About WordPress Playground

Core Editor Improvement: Smoother Site Editing

4. Release updates

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. is 6.3.

6.3 planning update

5. Help with components or tickets

If you have a ticketticket Created for both bug reports and feature development on the bug tracker. which needs some help, do add it in the comments below.

6. Open floor

If you have an item for this part of the agenda, you can add the topic below.

This post will be updated with any newer items published before the Dev Chat if they are available.

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

Performance Chat Summary: 23 May 2023

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

Announcements

  • The Performance Lab plugin reached 70k active installations this week
  • Decision on whether to hold the meeting June 6 ahead of travel around WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. Europe
    • Agreed to keep the June 6 meeting

Priority Projects

Server Response Time

Link to roadmap projects

Contributors: @joemcgill @spacedmonkey @aristath

Database Optimization

Link to roadmap projects

Contributors: @aristath @spacedmonkey @olliejones @rjasdfiii

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/. & CSSCSS Cascading Style Sheets.

Link to roadmap project

Contributors: @mukesh27 @10upsimon @adamsilverstein

  • @10upsimon Enhancing the Script 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. with a loading strategy:
    • Merged @westonruters PR which massively improves how we handle inline script loading
    • Hoping to merge @westonruters PR for removal of $args normalization and flattening of that data, hopefully today
    • Looking for review on adding @covers  in this PR@spacedmonkey if you have a min that would be great
    • Ongoing smaller iterations to the PR as we work through some comms around async handling
    • No further updates at this stage
  • @joemcgill That mostly covers it, I think. I’m seeing lots of progress on this effort over the last few weeks. We’ve got lots of great feedback and continue to discuss specifics about the proposal on the Trac ticketticket Created for both bug reports and feature development on the bug tracker.https://core.trac.wordpress.org/ticket/12009
    • As @10upsimon said, one of the last remaining issue that we’re trying resolve is making sure we’re all on the same page about how to best handle inline scripts, as there has been some disagreement about the best path forward there. Conversation about that topic is happening in this issue: https://github.com/10up/wordpress-develop/issues/63

Images

Link to roadmap projects

Contributors: @flixos90 @thekt12 @adamsilverstein @joemcgill

  • @joemcgill Nothing from me either, though I know I’ve seen some updates to improving lazy loading landing over last week.
  • @flixos90 I committed the 4th out of 5 lazy-loading fixes for 6.3 yesterday, and the last PR https://github.com/WordPress/wordpress-develop/pull/4439 looks like it’s close as well. @Jonny Harris You previously requested changes, could you give it another look please?
    • Also anybody else’s feedback would be much appreciated!

Measurement

Link to roadmap projects

Contributors: @adamsilverstein @olliejones @joemcgill @mukesh27

Ecosystem Tools

Link to roadmap projects

Contributors: @joegrainger

  • @joegrainger For the Plugin Checker, we are working on the final issue that came out of the Review/QA. Once done, we’ll be doing some testing to make sure everything is working as expected and start working towards an initial release. You can follow the progress on the GitHub repo here. Thanks!

Creating Standalone Plugins

Link to GitHub overview issue

Contributors: @flixos90 @mukesh27 @10upsimon

  • No updates this week

Open Floor

  • @spacedmonkey Going to re-share from last week – This discussion has been very active – https://github.com/WordPress/performance/issues/403
    • Worth looking into as team ^
    • @joemcgill Is this something that could be handled in a performance lab module (or other 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), or does this need to be a direct to coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. proposal?
    • @spacedmonkey I think this one would directly in core. If you want to do this, you can already do it in a plugin…
    • @joemcgill Got it. So, it seems we either need to decide if it’s worth us pursuing a “canonical” version of this plugin that is supported by this team. If not, I think it would be better for this conversation to move from the performance repo and directly to the related Trac ticket. (Also, this is just like, my opinion)
    • @spacedmonkey Personally I am not sure if we should do this in core.
    • This plugin will do the functionality they ask for https://github.com/stuttter/ludicrousdb It is a “canonical” plugin for a lot of advanced database functionality.
    • @johnbillion I can’t see any performance figures anywhere in that ticket, are there any? Lots of theoretical discussion but no numbers
    • @spacedmonkey good point
    • @joemcgill I don’t want to discourage the folks who want to work on this, but if it’s not something this team wants to commit to supporting, then we should politely close the proposal and redirect them to other channels, like Trac or a standalone plugin.
    • @spacedmonkey We need number to validate and an updated 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.. Without that, it will have to go to the backlog
  • @westonruter I know there is a problem of orphaned autoloaded options, where plugins add options but don’t clean up after themselves upon uninstall. I know we also have an Autoloaded options Site Health test.
    • Maybe this has already been discussed, but what if the test were extended to check for autoloaded options that aren’t being used anymore?
    • Granted, this wouldn’t need to be a Site Health test and could instead be a cron job.
    • Consider a job that runs once a week which hits the homepage and the most recently-published post, and when running pass a query arg to capture all calls to get_option()
    • @spacedmonkey I am currently writing a document, where I suggest this.
    • @spacedmonkey Have you read this – https://github.com/WordPress/performance/issues/526
    • TDLR, this hooksHooks In WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same. into get_option and tracks what is used on a page load. It when stores an array of used options and then can be used to reset options that are autoloaded but not used.
    • There is a possible of setting autoload no to options that are needed for other parts of WordPress, like sitemaps, rss feeds, rest apis, or the cms
    • There is a chance we could tank performance on some page types and improve it on others.
    • @westonruter Yeah, would need to hit the important endpoints and capture the used options for each
  • @joemcgill I wanted to note that the submission deadline for WCUS is later this week, and it would be great to have good representation from this team. Curious if anyone else is planning to submit anything and if so, I’d be happy to support folks with feedback or idea development this week.

Our next chat will be held on Tuesday, May 30, 2023 at 15:00 UTC in the #core-performance channel in Slack.

#core-performance, #performance, #performance-chat, #summary

Performance Chat Agenda: 23 May 2023

Here is the agenda for this week’s performance team meeting scheduled for May 23, 2023 at 15: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

Editor chat summary: May 17th, 2023

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

General Updates

Async key project updates

Read the latest updates directly from the following tracking issues:

@get_dave
Update On Navigation

  • The intended scope of work for the Nav 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. in WP 6.3 has been refined and confirmed (see this Issue).
  • Contributors have shipped improvements to the fallback mechanics for the block. This is now normalised in a dedicated class on the PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher side and accessible from the front end via the 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/.. These changes improve the UXUX User experience of the block by always ensuring a 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. is pre-created meaning there is no “transition” state in the block when it moves from uncontrolled to controlled.
  • Contributors have been improving performance by preloading the key Navigation-related network calls in the Site Editor.
  • Contributors have been engaging in ongoing discussions to refine the scope and purpose of Navigation in the Browse Mode sidebar.
  • Work is underway to improve the Link creation interface to improve its utility for the Navigation block (and the editor in general).

Open Floor

@James Cunningham 

Highlighted remove shortcodeShortcode A shortcode is a placeholder used within a WordPress post, page, or widget to insert a form or function generated by a plugin in a specific location on your site. support from block templates change in core

@james-roberts
Highlighted issue https://github.com/WordPress/gutenberg/issues/50532 to check if it is right to be in GitHub repo or in trac

Note: Anyone reading this summary outside of the meeting, please drop a comment in the post summary, if you can/want to help with something.

Read complete transcript

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

Core Editor Improvement: Smoother Site Editing

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. 

Over the last few 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, a few more deeply technical changes have unlocked some big improvements across the experience of exploring and using site editing. The result is a smoother experience of exploring 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, making changes, and entering the Site Editor. The work mentioned here addresses key areas of feedback that have been raised over the months and years with the FSE Outreach Program, particularly around revisionsRevisions The WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision. and the ability to preview themes. While what’s shared here is available in the 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 (in some cases as an experiment with block theme previewing), please help explore and test these features to ensure they each make it into the official WordPress 6.3 release come August 8th, 2023. 

Rely on revisions for templates, template parts, and styles

While the undo and redo buttons have a role to play, having access to full revision history allows for a much greater understanding of changes, their impact, and actions one can take. Revisions have been added across the Site Editor to templates, template parts, and style changes providing an across the board safety net for changes you’d like to make (or undo). For styles, changes are shown in a timeline alongside a reference for who made the changes.

This work has addressed a longstanding piece of feedback from the FSE Outreach program, mostly recently shared in the following call for testing:

With all the various changes I’ve done, I couldn’t help but notice the need of “what if” and wanted to use a previous style, but because I refreshed the editor, I couldn’t use a previous setup so I really felt the need of a revision system.

@jordesign in this comment.

Expect more to come here when phase 3 work gets underway to improve the revision experience, including making them more visual. Of note, a bug fix backport will land in Gutenberg 15.9 to resolve a key pain point in the current experience.

Preview block themes before switching

A while back, @poena shared the following in an FSE Outreach Program exploration that imagined the future of block theme switching:

When I choose a theme to switch to, before I activate it, I can preview it in the customizerCustomizer Tool built into WordPress core that hooks into most modern themes. You can use it to preview and modify many of your site’s appearance settings.. But it is difficult to view other pages than the frontpage that way. I feel like the “live preview” for block themes should be in the site editor, not the customizer, and that the flow should be the same; I should be able to “publish” to activate the new theme.

That vision has been reached with a theme preview option built into the Site Editor itself, allowing folks to check out block themes before activating, resolving a major blockerblocker A bug which is so severe that it blocks a release. to exploring block themes in general. While this is currently listed as an experiment to enable under Gutenberg > Experiments, when stabilized it should have a far reaching effect with folks being able to explore block themes and get an early taste of the Site Editor experience all in one. 

Please help test and give feedback as work continues to refine this experience. The current FSE Outreach Program Rapid Revamp call for testing explores this option and is a great place to offer relevant feedback.

Enjoy loading state improvements

While 6.2 brought improvements to the loading state, the work hasn’t finished with a recent update greatly improving the editor canvas loading experience. While subtle to some, these improvements help make entering the Site Editor less jarring and more cohesive, showing a fully loaded state before you start interacting. Below are before and after visuals to demonstrate the changes and the smoother experience that exists today as of Gutenberg 15.8. 

Video of prior experience:

Video of updated experience: 

Alongside the improvements to the loading state, additional animation related changes and general fixes, like removing a screen flash upon deleting templates and template parts, offer a refined, calmer workflow. 


Stay tuned for more as work continues for the WordPress 6.3 release

#core-editor-improvement

What’s new in Gutenberg 15.8? (May 17)

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 tag)  are posted following every Gutenberg release on a biweekly basis, showcasing new features included in each release. As a reminder, here’s an overview of different ways to keep up with Gutenberg and the Site Editor project (formerly called Full Site Editing)

Gutenberg 15.8  has been released and is available for download!

For the latest release of the 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, contributors continued improvements to existing UIUI User interface and UXUX User experience for content creators, site owners working on their own site, or theme developers creating new themes. Users will find small changes for streamlined workflows, fixed bugs, and refined responsiveness, just to name a few. The release includes 192 PRs by 63 contributors, of which 4 merged their first contributions. Congratulations to all.

Table of contents

  1. Add the pages menu to the site editor
  2. Add revisions UI to the global styles interface
  3. Add Theme Previews for block themes
  4. Changelog

Add the pages menu to the site editor

The site editor now exposes the ten most recently updated pages so you can directly jump into editing them. This is another step to explore adding back the ability to edit content right from within the site editor. (50463)

Add revisionsRevisions The WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision. UI to the global styles interface

In the global styles interface, you can now navigate through any revisions and browse how the site looked at that point in time. Any saved changes get shown in a timeline with when they occurred and who made the changes. (50089)

Add Theme Previews for 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

Previewing different themes has never been easier. By introducing a new theme_preview parameter, previewing how your site would look with a different theme right inside the site editor is now possible. (50030)

Changelog

Enhancements

Global Styles

  • Fluid typography: Use layout.wideSize as max viewport width. (49815)
  • Global styles revisions: Remove human time diff and custom author fields from the 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. response. (50234)
  • Unify the global block styles panel with the block inspector panels. (49428)

Post Editor

  • Add <ViewLink> component. (50260)
  • Update background color of post editor when viewing mobile or tablet viewports, or in template mode. (50361)
  • Display device icon on “preview” and “view” buttons. (50218)
  • Improve “switch to draft” placement. (50217)
  • Post Featured ImageFeatured image A featured image is the main image used on your blog archive page and is pulled when the post or page is shared on social media. The image can be used to display in widget areas on your site or in a summary list of posts.: New design for Replace and Remove buttons. (50269)

Block Library

  • More intuitive Details block with summary and innerBlocks content. (49808)
  • Simplify cover block description. (50355)
  • Cover: Only show overlay controls when color support enabled. (50115)
  • Navigation: Hide color controls when color support is disabled. (50368)
  • Post Featured Image: Hide overlay controls when color support is disabled. (50331)
  • Social Icons: Hide color controls when color support is disabled. (50275)

Fonts API

  • Separate BC Layer. (50077)

Site Editor

  • Add the pages menu to the site editor. (50463)
  • Introduce new PluginTemplateSettingPanel slot. (50257)
  • Add chevrons to the templates and template parts in site editor. (50076)

Components

  • Button: Add opt-in prop for next 40px default size. (50254)
  • Consolidate and add documentation to Storybook. (50226)
  • DimensionControl: Use WordPress package instead of reactReact React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/. in code example. (50435)
  • FormTokenField, ComboboxControl: Add opt-in prop for next 40px default size. (50261)
  • Global Styles: Fix palette color popovers. (49975)
  • Relax link pattern matching in CHANGELOG CI check. (50248)
  • Remove custom padding for tertiary buttons. (50276)
  • Update Autocomplete usage example. (49965)
  • Update default accent color. (50193)
  • Update has-text has-icon button spacing. (50277)

CSSCSS Cascading Style Sheets. & Styling

  • Polish confirm dialog padding. (50283)

Template Editor

  • Remove start blank option in template pattern suggestions and add skip button. (50099)
  • Templates: Sort by the rendered title instead of the slug. (50353)

Block Editor

  • List View: Allow dragging to all levels of the block hierarchy. (49742)
  • Allow dragging-and-dropping images from the inserter to image blocks. (49673)
  • Try always showing the dimensions controls. (50305)
  • Adds a renderAdditionalBlockUI prop to ListView. (50465)
  • Update the expanded text color so that it works in both a dark and light context. (50434)
  • Enable Loginout block in Nav block. (49160)
  • Mark related selector as resolved when sideloading Navigation fallback. (50324)
  • Update Template Parts icon to use the symbol. (50410)
  • Use CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Data for Nav fallbacks and side load resulting entity into state. (50032)
  • Tweak copy for block settings menu “Insert…” to “Add…”. (50444)
  • Block settings menu: Rearrange items. (50453)

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

  • Update image editor to use new REST API. (28530)

Bug Fixes

Block Library

  • Center align button text in editor. (50228)
  • Comment Template Block: Set commentId context via 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.. (50279)
  • Cover: Use overflow: clip, falling back to overflow: Hidden to allow sticky children (technically). (50237)
  • Ensure imported Classic Menu dirty state to include in Editor entity changes list. (50318)
  • File Block: Defer hiding PDF embeds for unsupported browsers until the page has loaded. (50113)
  • Fix template part area variation matching. (49500)
  • Fix the pocket casts embed variation. (50132)
  • Gallery: Fix inner block selection. (50363)
  • Post Terms: Use publicly_queryable to query taxonomies used to register variations. (50244)
  • Remove extraneous “Link” copy from PanelBody components. (50186)
  • Remove Quote transform from Group (50424)
  • [Post Featured Image]: Revert maxWidth addition. (50427)
  • [Post Title]: Insert default block on Enter at end. (50312)
  • Ensure that view scripts are correctly registered for core blocks. (50364)

Global Styles

  • Close stylebook if the editor canvas container slot is not filled. (50086)
  • Fix positioning of gradient palette popovers on mobile. (50233)
  • Fix/wp get global styles for custom props returns internal variable. (50366)
  • Revisions controller: Fix author and date fields. (50117)
  • Fix hover/focus styles for style variation buttons. (50056)

Block Editor

  • Fix issue with margin collapsing when selecting blocks. (50215)
  • List View / Block Draggable: Fix scroll to top issue when dragging the second last block in the list. (50119)
  • Multi-select: Capitalise B in blocks. (50356)
  • URLInput: Update the ‘ENTER’ key down event handler. (50158)
  • Update OffCanvas component’s more menu to get clientId from block rather than passed in as prop. (50473)
  • Block Toolbar: Don’t use effects for focus management. (50497)
  • Don’t remount the block when the ‘templateLock’ is set to ‘contentOnly’. (50292)

Themes

  • Refactor theme previews. (50338)
  • Remove gutenberg plugin mention in schema. (50207)
  • Theme Preview: Restrict to adminadmin (and super admin) users. (50335)
  • Theme Previews: Fix refactor. (50354)

Site Editor

  • Display conditionally the styles in sidebarSidebar A sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme. main navigation screen. (50329)
  • Remove canvas box shadow. (50374)
  • Save Button: Fix the label in the disabled state. (50284)
  • Remove white background on Site Editor ‘Frame’. (48970)
  • Update some visual details in the add-template modal(s). (50143)

Components

  • Spacing: Fix reset of spacing sizes control. (50455)
  • NavigableContailer: Do not trap focus in TabbableContainer. (49846)
  • Remove fill=”none” from levelUp icon. (50264)

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)

  • Add missing tooltip to Site Editor navigation Back icon button. (50104)
  • Fix Multiple Tooltips from Focus Toolbar Shortcut on 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. Editor. (50344)
  • Site Editor Keyboard Navigation Flow. (50296)
  • Small improvements for the sidebars and Close buttons labeling. (49614)

Design Tools

  • Changed so that borders and radius are maintained when Duotone is changed. (50088)
  • LineHeightControl: Fix application of zero values in editor. (48917)

Fonts API

  • [Font API] Do not print in admin using ‘admin_print_styles’ for themes with 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.. (50259)

Widget Editor

  • Fixes fixed block toolbar in widgets editor. (50371)

Performance

  • Improve Site Editor loading experience(50222)

Experiments

Interactivity API

  • Add Interactivity API runtime. (49994)
  • Navigation block with the Interactivity API. (50041)

Command Center

  • Update the experiment label. (50467)
  • Add an API to open/close the command center. (50423)
  • Fix a style glitch on Safari. (50138)
  • Add a button to open it from the site editor view mode. (50425)
  • Do not show dynamic add new post, add new page commands. (50221)
  • Extract the WordPress reusable commands to a dedicated package. (49956)
  • Fix command menu not re-opening after closing it. (50213)

Documentation

  • Add changelog for eslint-plugin validating dependencies in useSelect and useSuspenseSelect hooksHooks In WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same.. (50247)
  • Add client-side filter reference to Curating the Editor doc and fix links. (50203)
  • Add missing closing parenthesis in code example. (50253)
  • Adds example to change the permalink structure. (50251)
  • Adds links to REST-API reference. (50070)
  • Create-block script includes link to documentation in render.php file. (50206)
  • Block API > Registration: Switch markdown to a-tags. (50110)
  • Don’t use markdown in the callout section. (50437)
  • Remove mention of perf testing from release documentation. (50345)
  • Update Callout documentation on links. (50131)
  • Fix incorrect label in contributor docs. (50201)
  • Fix minor formatting issues in Performance doc. (50202)
  • Fixes incorrect URLs in doc blocks. (50123)
  • Use alert callout in the block deprecation documentation. (50286)
  • Improve CardMedia documentation. (50074)
  • Update README of TreeGrid with data-expanded attribute usage. (50026)

Code Quality

  • Block Editor: Directly import useShouldContextualToolbarShow hook. (50506)
  • BlockControls, InspectorControls: Remove useSlot, unify behavior on bad group. (50198)
  • Enqueue registered block assets and resolve iframeiframe iFrame is an acronym for an inline frame. An iFrame is used inside a webpage to load another HTML document and render it. This HTML document may also contain JavaScript and/or CSS which is loaded at the time when iframe tag is parsed by the user’s browser. styles end-to-end failure. (50185)
  • Make eslint-plugin validate dependencies in useSelect and useSuspenseSelect hooks. (49900)
  • Save Hub: Reuse the save button component to save code. (50145)
  • Use apiFetch instead of window.fetch. (50043)
  • Add types to dispatch and select. (49930)
  • Remove duplicate comment. (50304)

Lodash removal

  • Remove from blocks store reducer. (50471)
  • Remove _.mapValues() from getBlockContentSchemaFromTransforms. (50096)
  • Refactor away from _.mapValues(). (50285)
  • Remove _.mapValues() from blocks reducer. (50097)

Components

  • Fix incorrect focus style widths. (50127)
  • Refactor/toolbar item component to typescript. (49190)
  • SlotFill: Several code cleanups. (50098)
  • SlotFill: Some code cleanups of the bubblesVirtually version. (50133)
  • Convert NavigableContainer to TypeScript. (49377)

Block Editor

  • Block Editor: Add names for the ‘editor.BlockListBlock’ filter HoCs. (50513)
  • Refactor around missing dependency in Link Control internal value sync effect. (49509)
  • Don’t export Slot/Fill constants separately. (50274)

Block Library

  • Centralize constants for the navigation block. (50191)
  • Move deprecated Nav block functions to bottom of render file. (50328)
  • Refactor BlockList uses Hooks. (50293)

List View

  • Replace OffCanvasEditor in browse mode with the List View component. (50287)
  • Use block select button class for retaining colors when expanded or hovered. (50155)

Global Styles

  • Global styles revisions: Ensure the revisions endpoint permissions match the global styles controller. (50270)
  • Simplify CustomCSS UI. (49721)

Plugin

  • Update REST API Controller PHPUnit tests. (50120)
  • Update the Gutenberg plugin to require at least the WP 6.1 version. (50079)
  • Update the tested up to version for the gutenberg plugin. (50360)

Native

  • Add a few import required for the React Native wrapper distribution as iOSiOS The operating system used on iPhones and iPads. XCFramework. (50009)

Site Editor

  • Extract the Router APIs and context into a dedicated package. (50100)
  • Move loading logic to a separate hook. (50511)

Tools

wp-env

  • Add wp-env After Setup Command. (50196)
  • Fix wp-env destroy. (50445)
  • Refactored wp-env configuration Parsing. (50071)
  • Wp-env fix exec command in CI. (50411)
  • wp-env: Add better default PHPunit settings, fix Xdebug, and update documentation. (50490)
  • wp-env: Improve run command execution speed. (50007)
  • Cleaned up Port Validation and Removed Unnecessary Default Ports. (50300)
  • Match Container’s User and Group to Host. (49962)

Testing

  • Add end-to-end test for editing the title of a new custom template part. (50195)
  • Add test to verify image appears on frontend. (50472)
  • Add tests coverage for the navigation block frontend interactivity. (50462)
  • Migrate Adding Patterns Test to Playwright. (50083)
  • Migrate Keep Transform Block Test Case to Playwright. (49719)
  • Migrate PullQuote test case to playwright. (50085)
  • Migrate undo to Playwright. (48701)
  • Prerelease end-to-end Test Utils for Playwright. (43998)
  • Skip creating flaky issues on PRs. (50146)
  • end-to-end tests: Try to fix flaky global styles revisions tests. (50454)
  • Add BlockList text coverage. (50252)

Build Tooling

  • Changelog automation: Apply proper top-level categorization precedence to 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. PRs. (50208)
  • Do not include first time contributors section in changelog if there are not any. (50291)
  • Publish rich text build types. (49651)
  • Rich text: Rename index.js > index.ts for type-only exports. (50212)
  • Remove PHPUnit and Composer packages. (50408)

Repository Maintainance

  • Add ndiego as codeowner for docs. (50289)

First time contributors

The following PRs were merged by first time contributors:

  • @johnhooks: feature(data): Add types to dispatch and select. (49930)
  • @margolisj: Refactor/toolbar item component to typescript. (49190)
  • @n2erjo00: Create-block script includes link to documentation in render.php file. (50206)
  • @samnajian: Fix/wp get global styles for custom props returns internal variable. (50366)

Contributors

The following contributors merged PRs in this release:

@aaronrobertshaw @afercia @ajlende @alexstine @andrewserong @apeatling @artemiomorales @aurooba @bph @chad1008 @ciampo @DAreRodz @dcalhoun @draganescu @ecgan @fluiddot @fullofcaffeine @geriux @getdave @glendaviesnz @gziolo @hellofromtonya @ironprogrammer @jameskoster @jasmussen @jeryj @jhnstn @johnhooks @jsnajdr @juanfra @kevin940726 @kienstra @Mamaduka @margolisj @mburridge @mirka @mokagio @mtias @n2erjo00 @ndiego @noahtallen @noisysocks @ntsekouras @oandregal @ObliviousHarmony @ocean90 @ockham @pavanpatil1 @pooja-muchandikar @priethor @ramonjd @richtabor @samnajian @SantosGuillamot @scruffian @SiobhyB @t-hamano @talldan @tellthemachines @torounit @tyxla @westonruter @youknowriad


Props to @bph and @jameskoster for their help with this release

#gutenberg, #gutenberg-new