The WordPress coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. development team builds WordPress! Follow this site for general updates, status reports, and the occasional code debate. There’s lots of ways to contribute:
Found a bugbugA 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.?Create a ticket in the bug tracker.
Released the Performance Lab pluginPluginA 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 2.1.0 yesterday
15.4 RCrelease candidateOne 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). is scheduled (now available for testing)
commented on the agenda post: “I’m seeking feedback on some proposals to preload Navigation Menus and Template Parts (server side) in order to improve the perceived editor load times.It does involve certain compromises and assumptions which I’d like to discuss in more detail and also find more concrete evidence for. Any help much appreciated.”
Open Floor
@Mdxf
commented on the agenda: “I vote to improve the perceived load times on the Browser Mode + also on the “back to WP adminadmin(and super admin) menu” action (when clicking on the site logo on top left) !!! (here on FF it is very slow, i did not test on Chrome)….” @ndiego suggested you create new GitHub issue, detailing exactly what you are seeing . In his experience, slowness in the Site Editor that is exacerbated by third-party plugins, so it would be good to also understand the setup you use.
“As everyone is aware, we have a LOT of open issues and PRs in the GutenbergGutenbergThe 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/ repo. The TriagetriageThe act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors. team does a fantastic job, and @mamaduka and I have been running weekly bugbugA 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. scrubs here in #coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress.-editor. Yet, the number of open items continues to rise. After the 6.2 release, I will be spending some time thinking about how we can better tackle this situation, but I did want to also call attention to a discussion started by @tomjdevisser on GitHubGitHubGitHub 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/ Discussion: “Auto-closing inactive issues to shift focus towards important issues” If you have time to provide feedback or thoughts, it would be much appreciated.”
@hellofromtonya contributed how it is handled in TracTracAn open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress.
“In Trac, there are 2 ways it’s handled:
Add a close keyword with a comment that it will be closed in x amount of time without reporter follow-up.
Or close with a reason and a comment to re-open if more information is available for further investigation or consideration.
This is a manual ticketticketCreated for both bug reports and feature development on the bug tracker.-by-ticket triage process” She clarified further: “The close keyword with message gives all who previously contributed to the ticket the opportunity to revive it. If they are still interested in it, it invites them back while also setting the expectation that it will be closed otherwise.”
@francina led the chat. The meeting start on the coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. channel of the Make WordPress SlackSlackSlack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/..
The agenda, prepared by @webcommsat, has a full list of 6.2 links, only new links are listed below.
WordPress 6.2 RC 2 landed on Tuesday, March 14, 2023! Please download and test, and remember that in the RCrelease candidateOne 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). period:
It takes two committers to commit code to the 6.2 branchbranchA directory in Subversion. WordPress uses branches to store the latest development code for each major release (3.9, 4.0, etc.). Branches are then updated with code for any minor releases of that branch. Sometimes, a major version of WordPress and its minor versions are collectively referred to as a "branch", such as "the 4.0 branch".
The 6.3 branch is open for early tickets, proposals and more
GutenbergGutenbergThe 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.4 is underway.
@johnbillion raised #57916, about 6.2 server-side performance regressions. @hellofromtonya noted the ticketticketCreated for both bug reports and feature development on the bug tracker. is about assessing performance and will not generate any late commits to 6.2.
@costev highlighted that he, @ironprogrammer, and @afragen are working on an update to the WordPress BetaBetaA 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. Tester pluginPluginA 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 that will add a section where users can report a bugbugA 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. right in the interface.
The meeting is scheduled facilitator will be @francina and @marybaum will draft the meeting summary. If you would like to volunteer for the summary, add a comment to this ticketticketCreated for both bug reports and feature development on the bug tracker. for @webcommsat.
GutenbergGutenbergThe 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.4 Release Candidaterelease candidateOne 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). is scheduled.
What’s new in Gutenberg 15.3? (March 13, 2023) – posted by @richtabor. This version tightens up the site editing experience, adds a new “Time to Read” blockBlockBlock 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., and some Duotone enhancements.
3. Highlighted posts
A Week in CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress., March 6-13, 2023 – thanks to @audrasjb
48 commits
62 contributors
47 tickets created
8 tickets reopened
68 tickets closed
And welcome to the five new contributors from this week!
4. Releases
Useful information on the next major WordPress release 6.2:
Performance team has also been considering TracTracAn open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. Ticket #57916 to explore and assess 6.2 server-side performance regressions.
Any additional updates from the Release Squad will be shared in the meeting.
5. Request for help with tickets/ components/ blockers/
If you have a ticket or request to help, please add a comment to the agenda post. Please indicate if you will be attending the meeting live and be able to highlight the issue further if needed.
If you are unable to attend dev chat live, you can add further details of the issue you would like highlighted either in comments, or message Core Team reps @webcommsat and @hellofromtonya with the additional information to raise in this week’s meeting for you.
6. Open floor
Items for this agenda item and the previous one are welcome from across time zones. Please add suggestions in comments on this post. Thanks.
As agreed in last weeks chat, this week we are following the new agenda structure below that is more aligned with our 2023 roadmap
During each priority project update, we will aim to tagtagA 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 individuals who contributed suggestions for that priority project in the 2023 roadmap, to get any updates on progress
@joemcgill Following a week of recovery from a bike accident, I’ve resumed working on gathering some profiling data on the most recent release candidaterelease candidateOne 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).. I’m hoping to wrap up that work this week and have some new ideas to focus on for the 6.3 cycle
Tracking a performance regressionregressionA 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. in 6.2 RCrelease candidateOne 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). https://github.com/WordPress/wordpress-develop/pull/4235
@olliejones Work on the SQLite database integration continues. Lots of tiny details transliterating one irregular SQL grammar to another. Nothing big to report.
JavaScriptJavaScriptJavaScript 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/. & CSSCSSCascading Style Sheets.
@10upsimon We’re making progress on some of the final implementation details related to handling inline scripts, and doing some internal testing and research into how other projects are already implementing async/defer to look for possible conflicts. We should have something to share in a couple of weeks. In the meantime, we’d appreciate any examples you have of projects that are manually adding async/defer, so we can check them against our approach.
@flixos90 I have been researching remaining problems with lazy-loaded LCP images in WordPress sites in the last week, will continue to do so today. I’m using HTTPHTTPHTTP is an acronym for Hyper Text Transfer Protocol. HTTP is the underlying protocol used by the World Wide Web and this protocol defines how messages are formatted and transmitted, and what actions Web servers and browsers should take in response to various commands. Archive to identify the most common problems and look at specific sites for samples to dig further
@flixos90 Noting that the enhancements that will hopefully come out of this work will benefit the fetchpriority="high" work as well
@adamsilverstein quick update from me: at WordCampWordCampWordCamps 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. Asia a few weeks ago, I ran an “image comparison game” where users picked from two images (generated in WordPress at different compression levels and in WebP or JPEG) trying to tell which one was closer to the original. we had around 50 “choices” registered which isn’t much, but in any case I’m planning to analyze that data this week and should have some sort of results to share next week.
@clarkeemily we did have ‘Automated performance testing has been committed to the WP coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. repo https://core.trac.wordpress.org/changeset/55459‘ highlighted last week
@joemcgill We’re successfully getting automated performance data on every commit to core now, which is a cool milestone. I expect that we’ll continue to improve those capabilities over time, but this is a nice starting point.
@joegrainger We plan to complete the infrastructure for the PluginPluginA 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 Checker by the end of next week. Once complete we will start to perform some initial testing and review the infrastructure before working on the additional checks. Progress can be seen on the GitHub repo here. Please feel free to take a look and leave any thoughts/ideas you may have in the repo.
@flixos90 Happy to answer any questions on the data I gathered
@spacedmonkey Doing some research, realpath seems to be taking up a lot of resources
@flixos90 Is the realpath() usage something that was introduced in 6.2?
@spacedmonkey No, but I think it has been made worse.
@joemcgill After thinking about the original issue some more, I’m wondering if what @flixos90 observed is mainly a side-effect of things being moved around in the application lifecycle, which means that there are more callbacks firing on init, but overall the total response time is still an improvement over 6.1.X.
@flixos90 The overall total response time for classic themes is now actually worse in 6.2 than 6.1
@joemcgill That’s not what I’m seeing in our automated tests though.
@flixos90 Yeah I also didn’t see that in my previous tests. However what I have consistently seen is init being slower than in 6.1
@flixos90 FWIW, the automated tests are running core trunk . The tests I have been conducting are using built ZIP releases of the Betas and RCs. Not sure how relevant that is, but it may make a difference
@flixos90 The ZIP files are in principle closer to the real world experience, that’s why I’ve been using them in addition to the development repository
@joemcgill Zips should be built from the build folder, which is what the automated tests are testing
@flixos90 request for @spacedmonkey or @joemcgill to run the comparison between 6.1.1 production ZIP and 6.2-RC1 ZIP on your machines? Just to validate, maybe something is off on my environment
@joemcgill Happy to double check using local profiling at the betaBetaA 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. tester plugin later today.
@spacedmonkey I might try using Local envoirment and other tools and see if i can reproduce
@johnbillion Are all these tests using the theme unit testunit testCode 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. data?
@joemcgill The automated tests are. Not sure about how others are testing.
@flixos90 Good call @johnbillion My own local performance testing I’ve done only with the regular WP content (“Hello world”), nothing added. I know that’s not representative of real-world experience, but @joemcgill and @spacedmonkey please try to use that too for specifically the attempt to validate what I’m seeing on my end
@joemcgill If other folks can do A/B comparisons of the total response time for WP 6.1.1 vs 6.2-RC1 and share data on that issue, it could certainly help.
@spacedmonkey Fakerpress is great for generating posts from multiple authors, adds comments, terms and users.
@flixos90 So to summarize, just to reproduce, I’m seeing the regression locally in this environment:
between 6.1.1 and 6.2-RC1
a site with LocalWP
using TT1 theme
using Performance Lab plugin for Server-Timing, with no modules enabled
no content on the site other than what a clean WP core install gives you
@johnbillion Are you able to test again with the theme unit test data Felix? That way we have a somewhat unified set of data that’s in use for the tests
@flixos90 I certainly can. That said though, we also would still need to validate why I see a regression with the default content, so I would appreciate if someone else could run that on their end
@flixos90 Last but not least, I want to highlight something here (which I tried to also call out on the ticketticketCreated for both bug reports and feature development on the bug tracker.): Regardless of whether WP 6.2 is faster than 6.1, init is slower than before for classic themes. That has surfaced in all performance benchmarks I have done up to date. So while we should validate the overall test results, we should look into what is going on in init and why it has become worse in 6.2
@joemcgill Back to my initial comment. I am curious if this is a side effect of some things being refactored during this release which has caused more work to be done on the init callback that was previously happening elsewhere. It could be that it’s fine that we’re doing more work on init than we were before if the overall execution time is improved.
@flixos90 Potentially that’s the case, in which case the “regression” would be fine. But we need to validate that
@joemcgill I think it would be helpful to review what is hooked to init in 6.2 vs 6.1 and compare differences.
@flixos90 So we need to check how those functions’ code changed
@johnbillion Briefly from me for a core issue related to performance: I’ve been working to remove use of the now-deprecated SQL_CALC_FOUND_ROWS in core, starting with its use in WP_Query. PR here: https://github.com/WordPress/wordpress-develop/pull/3863 which continues work from a couple older PRs. There are a few outstanding items to address, I might ask for some help from interested parties on the performance team if I can’t make much progress myself over the next few weeks. Apart from that, the more eyes the merrier on this change!
@flixos90 Last but not least: Next Monday is the release of the Performance Lab plugin 2.1.0, so we need to get a few PRs ready
@flixos90 I have been working on a fix for the object-cache.php compatibility issues which I’m about to open a PR for. Would be great to get some reviews today/tomorrow so we can include it in 2.1.0
As agreed in last weeks chat, this week we are following the new agenda structure below that is more aligned with our 2023 roadmap
During each priority project update, we will aim to tagtagA 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 individuals who contributed suggestions for that priority project in the 2023 roadmap, to get any updates on progress
Welcome back to a new issue of Week in CoreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress.. Let’s take a look at what changed on TracTracAn open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. between March 6 and March 13, 2023.
48 commits
62 contributors
47 tickets created
8 tickets reopened
68 tickets closed
TicketticketCreated 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
Build/Test Tools
Use assertSame() in Tests_Comment::test_update_comment_from_privileged_user_by_privileged_user() – #56800
Add 6.2 branchbranchA directory in Subversion. WordPress uses branches to store the latest development code for each major release (3.9, 4.0, etc.). Branches are then updated with code for any minor releases of that branch. Sometimes, a major version of WordPress and its minor versions are collectively referred to as a "branch", such as "the 4.0 branch". to the workflow for testing branches
Add the workflow_dispatch event to the performance workflow – #57687
Check if the Docker is available when running npm run env:start – #51898
Fix cleaning of old CSSCSSCascading Style Sheets. files in wp-includes/blocks/* – #57891
Remove all previously built files when running clean:files – #47749
Test the new performance workflow regularly – #57687
Update several GitHubGitHubGitHub 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/ Actions – #57572
Update the URLURLA specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org for logging performance workflows – #57687
Prevent registering the same private JavaScriptJavaScriptJavaScript 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/.APIAPIAn 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. twice – #57795
Add a unit testunit testCode 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. for register_block_style_handle() with an RTL localeLocaleA 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. – #56797
Adjust the expected mime type for WOFF fonts on PHPPHPThe web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher 8.1.12+ – #56817
Add missing 6.2.0 since mention in get_the_privacy_policy_link() – #56792, #56345
Add security warning in remove_query_arg() docblock to make it consistent with add_query_arg() – #57885, #56792
Improve some DocBlock formatting in wp-includes/class-wp-xmlrpc-server.php – #57840
Editor
Add more details to template descriptions – #57892
Combine Date template description translations – #57892
Move variables to where used in wp_render_layout_support_flag – #57815
Update wordpress packages for 6.2 BetaBetaA 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. 5 – #57471
Return correct error data from copy_dir() if the directory listing failed – #57907
Formatting
Restore consistent quotes in _make_web_ftp_clickable_cb() – #53290, #56444
HTMLHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. API
Document shorthand usage of the next_tag() – #57863, #57575
Fix finding RCData and Script tagtagA 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.) closers – #57852, #57575
Help/About
Update copy & style for About page and subpages – #57477
No updates of Key Projects during the coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. editor meeting.
Huge thank you to everyone who wrote and reviewed Dev Notesdev noteEach 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 the editor. It’s been fabulous collaborating with everyone! For quick reference, a complete list of posts and misc dev notes is available as a comment on the Dev Note tracking issue. If you find, there is something small or big missing from the Dev Notes do pingPingThe act of sending a very small amount of data to an end point. Ping is used in computer science to illicit a response from a target server to test it’s connection. Ping is also a term used by Slack users to @ someone or send them a direct message (DM). Users might say something along the lines of “Ping me when the meeting starts.” me @bph on SlackSlackSlack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/..
In the past few weeks, a lot of refinement has gone into the Site Editor, specifically the new Navigation panel coming in 6.2. As with all things related to navigation, some issues have cropped up. Navigation is hard, We are working on identifying what can be punted and what is critical for 6.2. We have made good progress but are not quite there yet. Hopefully, by the end of the day, we should have more clarity.
What I find difficult in adding the Navigation panel in the side editor browse sidebarSidebarA 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. to WP 6.2. Is that it is so new and that a lot of things are showing up that are for me not consistent with how it works inside the template…
“What’s new in GutenbergGutenbergThe 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/” is published following every Gutenberg biweekly release, showcasing new features included in the release. As a reminder, here’s an overview of different ways to keep up with Gutenberg and the Site Editor (formerly called Full Site Editing) projects. Previous release posts can be found via the #gutenberg-newtagtagA 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 latest version of Gutenberg, 15.3, tightens up the site editing experience, adds a new “Time to Read” blockBlockBlock 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. for adding estimated read time to posts, and a number of Duotone enhancements. Combined with a multitude of improvements across the board, this release is a solid step forward for Gutenberg.
The Site Editor has received a number of enhancements, culminating in a tightened-up, design-forward experience that brings site editing center stage.
With another round of polish, the Site Editor experience is feeling more refined than ever.
New “Time to Read” block
The new “Time to Read” block allows you to display the estimated time the average reader takes to read the current page, or post. Letting readers know right off what their estimated reading time helps them to decide if they should continue reading, or save the post for later. (43403)
The block is relatively simple as-is, with follow-ups to enhance styling capabilities.
Leveling-up Duotone
This release includes a number of enhancements around leveling-up the popular Duotone design tool. You can now set a Duotone filterFilterFilters 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. globally within the Site Editor’s Styles panel, whereas in previous releases you could only do this manually within the theme.jsonJSONJSON, 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. file. (48255)
Duotone presets are now stored as slug values, instead of hard-coded color values (i.e. #FFFFFF). Using the preset itself means that Duotones are no longer locked to a specific theme, or theme variation.
If you apply a Duotone, then change a theme to another that uses the same slug value, the new theme’s Duotone will now take effect. (48318)
And last, Duotone styles are now generated using the WordPress Style Engine, meaning that CSSCSSCascading Style Sheets. is generated as part of the block supports CSS — rather than inline. (48281)
Changelog
Enhancements
Site Editor
Refactor the site editor URLs for better backward compatibility. (48063)
Remove TemplateAreas from template details. (48490)
Site Editor SidebarSidebarA 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.: Add line-height for template/parts name and update width for edit button. (48160)
Extract a DimensionsPanel component as a reusable component between Global Styles and Block Inspector. (48070)
Remove copy for managing a block’s style variations. (48367)
Block Editor
Apply keyboard shortcut conversions between paragraphs and headings to all editor instances. (47972)
Create automatic change higher order reducer. (48312)
[Inserter]: Preload media categories empty check – client side. (47503)
Post Editor
Revert iframed editor for WP coreCoreCore is the set of software required to run WordPress. The Core Development Team builds WordPress. only. (48076)
PageAttributesCheck: Return boolean value directly from the selector. (48336)
Apply busy status to the publish button in progress and unify button width. (48444)
Add all allowed innerblocks to the inspector animation experiment. (47834)
Make the Site Logo block placeholder state smaller. (48218)
ToggleControl: Remove margin overrides and add opt-in prop. (47866)
Post Terms block: Add transforms for variations. (48328)
Navigation List View: Add block movers to the more menu. (48099)
Navigation: Always create a fallback menu. (47684)
Navigation: Don’t create a fallback navigation menuNavigation MenuA 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. if there are inner blocks. (48585)
Navigation: Update the dependencies for the useEffect that handles notifications. (48066)
Navigation: Wrap the dependent functions in useCallback. (48195)
Page List: Move the modal to its own file. (47922)
Classic Block: Replace the deprecated isPrimary prop with variant. (48230)
Refactor core blocks to use HTMLHTMLHyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. Tag Processor. (43178)
Block APIAPIAn 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.
HTML Tag Processor: Add WP 6.3 compat layer. (47933)
Tag Processor: Add bookmark invalidation logic. (47559)
Design Tools
Duotone: Use the style engine to generate CSS for Duotone. (48281)
Duotone: Add Global Styles controls for blocks that support duotone. (48255)
Use Duotone presets in block duotone attributes. (48318)
Duotone: Use CSS variables instead of slugs in block attributes. (48426)
Border Panel: Add missing dep for onBorderChange callback. (48010)
Disable layout toolbar controls for content locked blocks. (47939)
SpacingSizesControl: Fix white dot on thumb. (48574)
List View
Scroll selected block into view when single block selection changes. (46895)
Components
Change higher order with-constraint-tabbing from .js to .tsx. (48162)
CircularOptionPicker: Refactor to TypeScript. (47937)
Extract delete handler to hook for RichText. (48273)
ToolsPanel: Remove unnecessary dep from resetAll callback. (48011)
Link Control – Add support for text only labels. (47930)
Pin floating-ui/reactReactReact is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/.-dom version. (48402)
Use React 18 rendering for import dropdown. (48244)
Only add layout classes to inner wrapper if block is a container. (48611)
Widgets Editor
WidgetWidgetA 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: Fix a problem with ‘Move to Widget Area’ button not working. (48233)
Block Library
Add support for orientation-based block movers to core/social-links. (48452)
Fix Post ExcerptExcerptAn excerpt is the description of the blog post or page that will by default show on the blog archive page, in search results (SERPs), and on social media. With an SEO plugin, the excerpt may also be in that plugin’s metabox.: Read more link is always on new line in the editor. (47772)
Fix: OffCanvasEditor does not inserts submenu on collapsed items. (48214)
List Item: Avoid an error when the ‘onReplace’ prop is undefined. (48639)
Add missing code on the fix page list loading PR. (48621)
Prevent text decoration from showing up in all blocks. (48117)
Widget Importer: Don’t render controls when there’s nothing to import. (48396)
[Query LoopLoopThe 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.] Fix top border in pattern selection modal. (48303)
[Query Loop] Sync gutenberg_build_query_vars_from_query_block with core. (48640)
AvatarAvatarAn avatar is an image or illustration that specifically refers to a character that represents an online user. It’s usually a square box that appears next to the user’s name.: Clean up border application in editor. (48024)
Global Styles
Fix for WP_Theme_JSON_Resolver_Gutenberg::Get_merged_data. (48644)
Playwright: Fix request utils for non Docker envs. (48206)
[Private APIs] Only prevent module re-registration if IS_WORDPRESS_CORE. (48352)
Add a manual performance job that we can trigger from GithubGitHubGitHub 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/UIUIUser interface. (48302)
AccessibilityAccessibilityAccessibility (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)
Autocomplete: Duplicate list within iframeiframeiFrame 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. for non visual users. (47907)
Fix the Publish region position and focus style. (48102)
Focus 1st parent block on block remove, if no previous block is available. (48204)
List view: Allow selected block to override roving tabindex. (48339)
Style Book: Allow button text labels for style book icon. (48088)
Style Book: Focus the Style Book when opened, and enable ESCAPE key to close. (48151)
Try to fix a11yAccessibilityAccessibility (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) test flakiness. (48236)
Make the template customized info accessible. (48159)
Fix perf regressionregressionA 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. in duotone hooksHooksIn 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.. (48401)
Writing flow: Avoid recalc style on every selection change. (48409)
useAsyncList: Flush state updates when processing queue. (48238)
Components
Autocomplete: Reduce work before finding trigger. (48327)
Disable lazy term metaMetaMeta 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. loading render_block_core_template_part. (48000)
Rich text: Only selectively handle keyup/pointerup. (48385)
Lodash: Remove _.merge() from getMappedColumnWidths(). (48032)
Lodash: Remove some _.get() from Gallery block. (48488)
Lodash: Remove some _.get() from Image block. (48489)
Documentation
Clarify backportbackportA 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. status of appearance-tools theme support. (48622)
Docs: Clarify release process for major WP BetaBetaA pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. 1. (48248)
Docs: Markdown fix for wp_enqueue_script usage. (48212)
Fix e2e-test-utils-playwright’s jsdoc and types. (48266)
Fix incorrect css property in editor-color-palette documentation. (48333)
Proactively update versions in WordPress ahead of 6.2. (48145)
Update curation document to include theme.json filters. (48576)
Updates to the curating the editor experience to include 6.1 & 6.2 items. (48294)
First time contributors
The following PRs were merged by first time contributors:
@abhi3315: Link Control – Add support for text only labels. (47930)
@hbhalodia: Change higher order with-constraint-tabbing from .js to .tsx. (48162)
@sboerrigter: Fix incorrect css property in editor-color-palette documentation. (48333)
@shreyasikhar: Site Editor Sidebar: Add line-height for template/parts name and update width for edit button. (48160)
@suvrodattamitu: Style Engine: Fix wrong property name letterSpacing to lineHeight. (48091)
@tomdevisser: Remove copy for managing a block’s style variations. (48367)
Contributors
The following contributors merged PRs in this release:
Are you interested in helping draft Dev Chat summaries? You can volunteer to be added to the rotation, either during the meeting or by contacting abhanonstopnewsuk on the Make Slack.
Announcements
WordPress 6.2 Beta 5 is available to download and test. Thanks to everyone who was involved and tested for BetaBetaA 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. 5.
Between February 27 and March 6, 2023, there was some great work again on TracTracAn open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress.:
45 commits
79 contributors
63 tickets created
12 tickets reopened
61 tickets closed
and 5 new contributors!
Please refer to Developer Notes for 6.2 for all the new dev notesdev noteEach 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. released this week. It has been a very busy time for the release documentation team, so a big thanks to everyone who has helped write, review, edit, administer GitHubGitHubGitHub 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/, or anything else related to these important communications.
The 6.2 Field GuideField guideThe field guide is a type of blogpost published on Make/Core during the release candidate phase of the WordPress release cycle. The field guide generally lists all the dev notes published during the beta cycle. This guide is linked in the about page of the corresponding version of WordPress, in the release post and in the HelpHub version page. is expected to be published soon. Shout out to @bph, @milana_cap, @webcommsat, and @femkreations, the documentation release group, and to all those who made contributions.
Release Update
Key information for the next major releasemajor releaseA 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.2
These links contain great reading material and helpful information for anyone wanting to get more involved in the release — make sure to check out the new (⭐️) items:
If you would like to get involved with testing, check out the 6.2 call for testing post to get started.
Read about important accessibility improvements in this post from @annezazu, @joedolson, and @alexstine. Thank you to everyone on the AccessibilityAccessibilityAccessibility (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) Team and the many other contributors who support this work.
The WordPress 6.2 preview gives focus to highlights in the release for anyone who missed the live demo or would like a recap.
Release Squad Updates
@jeffpaul asked how things look for RC1, and @webcommsat and @audrasjb confirmed that while the regressionregressionA 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. in Trac #57630 was being evaluated, no additional delays were anticipated.
Requests for Help with Tickets/Blockers
@ndiego requested a call out for Gutenberg PR 48731, to address an issue from Beta 4. While developers are confident with the fix, more testing is requested — specifically to confirm that no “white screens” are seen in the editor or when using the browser Back button. Nick also asked emphasized the need for more general testing in the site editor.
@sergeybiryukov provided updates on the Build/Test Tools component:
@sergeybiryukov noted there were no updates for the Date/Time, General, I18Ni18nInternationalization, 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., or Permalinks components.
Open Floor
@ironprogrammer brought up Trac #57891, requesting confirmation of the issue from other contributors. Brian confirmed to @ndiego that the issue applied to trunk, and not Beta 5. @petitphp reproduced the issue and provided a test report.
@sergeybiryukov and @webcommsat highlighted previous interest in running new contributor meetings in different time zones, including APAC-friendly. @sergeybiryukov shared information to help those interested: the guidelines and script link in the handbook for running such meetings. Further discussion on frequency and time(s) will be discussed amongst volunteers after the work on the current release.
@hellofromtonya asked for additional testing and investigation of Trac #57630, a regression or bugbugA 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. related to child themes that use parent template parts.
You must be logged in to post a comment.