Call for 6.8.x Release Managers

WordPress 6.8.0 was released April 15,2025. Following this release, work will continue with regular, planned maintenance or minor releases. While the work of a 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. team includes people filling approximately 16 different positions, maintenance release teams generally are considerably smaller, often 1-3 people. Minor releaseMinor Release A set of releases or versions having the same minor version number may be collectively referred to as .x , for example version 5.2.x to refer to versions 5.2, 5.2.1, 5.2.3, and all other versions in the 5.2 (five dot two) branch of that software. Minor Releases often make improvements to existing features and functionality. managers are responsible for:

  • Triaging bugs in coordination with committers and component maintainers.
  • Drafting announcements for the release.
  • Preparing for and running release day activities.
  • Updating the documentation on minor releases so that it gets better each time.

Members of the 6.8 release cohort are encouraged to stay on as release managers for maintenance releases, but it is not required to have been on a major release squad in order to be on a minor release team.

Since 6.9 is not currently scheduled until 2026, we are not asking folks to lead minor releases for 9+ months.ย Rather, we are looking for folks who could help lead for shorter periods of time, like 3 months.ย If folks are able to lead for a longer period of time, thatโ€™s wonderful, but we expect to rotate folks in and out every 3 months so that no single person has to shoulder the work through to the next major release.

If you are interested in volunteering to be a release manager for the 6.8 maintenance releases, please comment on this post.

Thanks to @jeffpaul, @jorbin, @joedolsonย for reviewing this post before publication.

WP_Query changes in WordPress 6.8

WordPress 6.8 includes some caching optimizations that may affect themes and plugins using the WP_Query::get() method and the WP_Query::$query_vars property.

In #59516, WP_Query was optimized to improve cache hits for queries with equivalent arguments.

This enhancementenhancement Enhancements are simple improvements to WordPress, such as the addition of a hook, a new feature, or an improvement to an existing feature. improves performance for sites that run equivalent queries with a different order of arguments. The impact will be most noticeable on sites without a persistent cache, as these equivalent queries would run multiple times on a single page request, whereas they will now run once.

As such theme and pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party. authors making use of filters within WP_Query (source code: GitHub, trac) are recommended to check their code for compatibility with WordPress 6.8. An example of code that would be affected by this is using equality to check for the contents of an array:

$query = new WP_Query( array( 'post_type' => array( 'post', 'page' ) ) );

add_filter( 'posts_where', function ( $where, $query ) {
ย  ย  ย  ย  // True in WordPress 6.7, false in WordPress 6.8
ย  ย  ย  ย  // WordPress 6.7 returns array( 'post', 'page' )
ย  ย  ย  ย  // WordPress 6.8 returns array( 'page', 'post' )
ย  ย  ย  ย  if ( array( 'post', 'page' ) === $query->get( 'post_type' ) ) {
ย  ย  ย  ย  ย  ย  ย  ย  // Modify WHERE clause.
ย  ย  ย  ย  }

ย  ย  ย  ย  return $where;
}, 10, 2 );

When comparing the contents of two arrays for equivalence, it is recommended to use the code empty( array_diff( /* arrays */ ) ) rather than equality comparisons. See this example for a demonstration.

Standardized arguments.

The most common example of where these changes will improve performance is when querying multiple post types:

$q1 = new WP_Query( [ 'post_type' => [ 'post', 'page' ] ] );
$q2 = new WP_Query( [ 'post_type' => [ 'page', 'post'] ] );
$q3 = new WP_Query( [ 'post_type' => [ 'page', 'post', 'post' ] ] );

In WordPress 6.7 and earlier, these queries would each result in database queries as they were not seen as equivalent in the resulting database query and cache key.

To standardize equivalent queries, WP_Query now sorts and type casts arguments as appropriate. For each of the queries above the post types are sorted alphabetically and any duplicates removed. In WordPress 6.8 the ::get() method and ::$query_vars property will differ from the arguments passed to $q1 and $q3:

$q1->get( 'post_type' ) // returns [ 'page', 'post' ]
$q2->get( 'post_type' ) // returns [ 'page', 'post' ]
$q3->get( 'post_type' ) // returns [ 'page', 'post' ]

$q1->query_vars['post_type'] === [ 'page', 'post' ]
$q2->query_vars['post_type'] === [ 'page', 'post' ]
$q3->query_vars['post_type'] === [ 'page', 'post' ]

For items that accept values as either an integer or a string, these have been sorted and typecast as appropriate, for example author__not_in => [ '2', '1' ] becomes author__not_in => [ 1, 2 ]. A full list of affected arguments can be found in the commit message [59766].

Due to differences in the code paths when the post type and status are passed as a string, these are not type cast to an arrayย 

$q4 = new WP_Query( [ 'post_type' => 'post' ] );
$q4->get( 'post_type' ) // returns 'post'

These changes are part of an ongoing effort to improve the performance of WordPress. The coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. team are monitoring the changes for any major issues that may occur, see #63255.ย 

Props @joemcgill and @jorbin for their review of this post.

#6-8, #dev-notes, #dev-notes-6-8, #performance

Dev Chat Agenda โ€“ April 17, 2025

The next WordPress Developers Chat will take place on Wednesday April 16, 2025 at 15:00 UTC in theย coreย channel onย Make WordPress Slack.

The live meeting will focus on the discussion for upcoming releases, and have an open floor section.

Additional items will be referred to in the various curated agenda sections below. If you haveย ticketticket Created for both bug reports and feature development on the bug tracker.ย requests for help, please continue to post details in the comments section at the end of this agenda.

Announcements ๐Ÿ“ข

WordPress 6.8 โ€œCecilโ€ is now available! ๐Ÿฃ

WordPress 6.8 was released as scheduled and it was named after the legendary jazz pianist Cecil Taylor.

For now, 6.8 is identified as the last major release of the year.

Forthcoming releases ๐Ÿš€

WordPress 6.8.1

@jorbin proposed to lead the next minor releaseMinor Release A set of releases or versions having the same minor version number may be collectively referred to as .x , for example version 5.2.x to refer to versions 5.2, 5.2.1, 5.2.3, and all other versions in the 5.2 (five dot two) branch of that software. Minor Releases often make improvements to existing features and functionality. and to host a first 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 right after the devchat.

WordPress 6.9

No ETA at the moment.

Highlighted posts โœจ

Discussions ๐Ÿ’ฌ

The discussion section of the agenda is to provide a place to discuss important topics affecting the upcoming release or larger initiatives that impact the CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Team. To nominate a topic for discussion, please leave a comment on this agenda with a summary of the topic, any relevant links that will help people get context for the discussion, and what kind of feedback you are looking for from others participating in the discussion.

  • WordPress 6.8.1:
    • Is there any 6.8 release leadRelease Lead The community member ultimately responsible for the Release. who want to help releasing 6.8.1? Any new person who want to be onboarded on this first post-6.8 release?
  • WordPress 6.8.x:
    • @audrasjb suggests a discussion about how to handle tickets currently located in milestone 6.9 and how to dispatch them (when needed) in the next 6.8.x minor releases: should bug gardenersBug Gardener A contributor who has been given advanced privileges in Trac. and component maintainers move them to minor releases related milestones? Should we have dedicated bug scrubs? Should we open 6.8.2 and 6.8.3 milestones right now?
    • Given the 6.8.x cycle is going to be quite long, should we publish a call for release leads for the next coming months?
  • Handbook improvements:
  • Minor topic: Time permitting, @audrasjb would like to start a discussion about how contributions are taken into account.

Open floor ย ๐ŸŽ™๏ธ

Any topic can be raised for discussion in the comments, as well as requests for assistance on tickets. Tickets in the milestone for the next major or maintenance release will be prioritized.

Please include details of tickets / PRs and the links in the comments, and indicate whether you intend to be available during the meeting for discussion or will be async.

Summary, Dev Chat, Apr 9, 2025

Startย of the meeting inย SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/, facilitated by @francina. ๐Ÿ”— Agenda post.

Announcements ๐Ÿ“ข

WordPress 6.8 |ย Release Candidaterelease candidate One of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta).ย 3 is now available ๐Ÿฅณ

Theย Release Candidateย 3ย is now available! A heartfelt thank you to everyone who joined the Release Party. We appreciate your testing and feedback.

@jeffpaulย reminds allย CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.ย Committers to read this article and follow the outlined process for the upcoming steps:ย WordPress 6.8 Release Candidate Phase

Help Test 6.8ย 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).ย version ๐Ÿงช

The Test-Team has written two helpful guides for people interested in testing:

Forthcoming releases ๐Ÿš€

General Release:ย April 15,ย 2025

Theย general release of WordPress 6.8 will be available onย Tuesday, April 15, 2025.

Ahead of it, there will be a Dry Run on Monday, April 14, 2025.

A detailed overview of the release schedule for WordPress 6.8 can be foundย here. The article also includes information about the individuals assigned to each release party.

Highlighted posts โœจ

Discussion ๐Ÿค”

Dotorg Core Committers Check In

The discussion concerns the release of version 6.8 as the last 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. for 2025. It was pointed out that the decision was not clearly communicated, and it was recommended to make a clear public announcement. Additionally, a formal proposal should be created in the future to better communicate such decisions and increase transparency.

Open Floor ๐Ÿ’ฌ

Core TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. Workflow Keywords Issue

The discussion concerns an issue raised by @sirlouen on 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. about a conflictconflict A conflict occurs when a patch changes code that was modified after the patch was created. These patches are considered stale, and will require a refresh of the changes before it can be applied, or the conflicts will need to be resolved. between the "needs-testing" and "needs-testing-info" keywords in search results on WordPress.orgWordPress.org The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/ Meta Trac (Ticketticket Created for both bug reports and feature development on the bug tracker. 7935). This problem makes reports, especially for the testing team, more difficult and leads to incorrect information. Two solutions were suggested: renaming one of the keywords or improving the search algorithm. The conversation continues in the Trac comments.

Thanks @francina for the review

#6-8, #core, #dev-chat, #summary

Agenda, Dev Chat, Apr 9, 2025

The next WordPress Developers Chat will take place on Wednesday at 15:00 UTC in theย coreย channel onย Make WordPress Slack.

The live meeting will focus on the discussion for upcoming releases, and have an open floor section.

Additional items will be referred to in the various curated agenda sections below. If you haveย ticketticket Created for both bug reports and feature development on the bug tracker.ย requests for help, please continue to post details in the comments section at the end of this agenda.

Announcements ๐Ÿ“ข

WordPress 6.8 | Release Candidaterelease candidate One of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). 3 is now available ๐Ÿฅณ

The https://wordpress.org/news/2025/04/wordpress-6-8-release-candidate-3/ is now available! A heartfelt thank you to everyone who joined the Release Party. We appreciate your testing and feedback.

@jeffpaul reminds all CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Committers to read this article and follow the outlined process for the upcoming steps: WordPress 6.8 Release Candidate Phase

Help Test 6.8 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). version ๐Ÿงช

The Test-Team has written two helpful guides for people interested in testing:

Forthcoming releases ๐Ÿš€

General Release: April 15, 2025

Theย general release of WordPress 6.8 will be available onย Tuesday, April 15, 2025.

Ahead of it, there will be a Dry Run on Monday, April 14, 2025.

A detailed overview of the release schedule for WordPress 6.8 can be found here. The article also includes information about the individuals assigned to each release party.

Highlighted posts โœจ

Discussions ๐Ÿค”

The discussion section of the agenda is to provide a place to discuss important topics affecting the upcoming release or larger initiatives that impact the Core Team. To nominate a topic for discussion, please leave a comment on this agenda with a summary of the topic, any relevant links that will help people get context for the discussion, and what kind of feedback you are looking for from others participating in the discussion.

Open floor ย ๐ŸŽ™๏ธ

Any topic can be raised for discussion in the comments, as well as requests for assistance on tickets. Tickets in the milestone for the next major or maintenance release will be prioritized.

Please include details of tickets / PRs and the links in the comments, and indicate whether you intend to be available during the meeting for discussion or will be async.

#6-8, #agenda, #dev-chat

Dotorg Core Committers Check In

On March 27, 2025 nearly 30 coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. committers, project leaders, and core team members gathered to discuss the release cadence and if there is a need to change it. The impetus for this conversation is due to organizations cutting back on the number of hours they are donating towards contributing to WordPress.

Attendees: @matt, @desrosj, @jorbin, @timothyblynjacobs, @davidbaumwald, @jjj, @clorith, @jeffpaul, @joemcgill, @kadamwhite, @fabiankaegy, @4thhubbard, @adamsilverstein, @swissspidy, @whyisjake, @spacedmonkey, @eidolonnight, @matveb, @audrasjb, @mamaduka, @karmatosed, @sergeybiryukov, @westonruter, @ryelle, @flixos90, @williampatton, @poena, @johnbillion, @joedolson.

An assessment of core team activity shows the number of both 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/ tickets and Core TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. tickets remaining nearly flat over the last 6 months. However, the volume of new features being worked on inside the Gutenberg repository has plunged since January. In light of this information, the discussion focused on if the current release cadence should be reduced.

Numerous pros and cons were discussed.

The pros included:

  • Aligns WordPress with the release cadence that is becoming en vogue amongst some large organizations such as eBay and Airbnb
  • Can use this change to signal an intentional reset and focus on quality
  • Allows for greater focus on canonical plugins and on individual component roadmaps, which can be iterated on and shipped independent of major releases.
  • Slowing down helps allow for documentation and any needed infrastructure improvements.
  • Allow for each release to contain larger features and enhancements and not be โ€œbugbug A bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. fix onlyโ€ releases.
  • Reduces the workload and coordination overhead for contributors, systems team, and release leads.
  • Allows for work to further automate release processes, making future releases quicker and less manual.

The cons and risks discussed included:

  • Fewer releases can slow down user feedback loops for new features.
  • Slower cadence can lead to contributors not being able to see their work published or feel recognized as quickly.
  • Makes it harder for changes that we may want to roll out over multiple releases
  • Harder to make changes such as coding standard updates that can lead to a release branchbranch A directory in Subversion. WordPress uses branches to store the latest development code for each major release (3.9, 4.0, etc.). Branches are then updated with code for any minor releases of that branch. Sometimes, a major version of WordPress and its minor versions are collectively referred to as a "branch", such as "the 4.0 branch". and trunktrunk A directory in Subversion containing the latest development code in preparation for the next major release cycle. If you are running "trunk", then you are on the latest revision. changing.
  • Potential for anxiety over larger releases from users, site owners, and anyone else applying updates.
  • Potentially harder for organizations to justify time and resources for sponsored contributors.
  • Less visible momentum towards the projectโ€™s overall goals, possibly perceiving the project as stale.
  • Care needs to be taken to preserve the culture and trust built in auto-updates that the project has worked hard to build over the last decade.

Proposed Focus Areas

The conversation moved to discussing where contributors could effectively focus their efforts in the project should the release schedule shift to just one release per year.

Canonical Plugins

Community maintained canonical plugins such as Preferred languages, 2FA, and the Performance Teamโ€™s suite of plugins are a great way to ship features and iterate without requiring a 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. of WordPress itself. There were two main improvements that need to be addressed to make them more effective.

First is the need for better means to collect user feedback. Active installs is currently the only metric available, but doesnโ€™t provide enough value. Does a user actually interact with the feature? In what ways? Do they feel itโ€™s valuable? Feedback is mainly received from users when something breaks. There was agreement to explore telemetry and ways to establish meaningful feedback loops within canonical plugins.

The second improvement needed is promotion. Itโ€™s often not widely known that canonical plugins exist or that they are officially maintained. Different ways to raise awareness about canonical plugins will be explored, including posts on the WordPress.orgWordPress.org The community site where WordPress code is created and shared by the users. This is where you can download the source code for WordPress core, plugins and themes as well as the central location for community conversations and organization. https://wordpress.org/ News blogblog (versus network, site), mentioning them in presentations such as State of the WordState of the Word This is the annual report given by Matt Mullenweg, founder of WordPress at WordCamp US. It looks at what weโ€™ve done, what weโ€™re doing, and the future of WordPress. https://wordpress.tv/tag/state-of-the-word/., and possibly the currently barren Tools page in the WordPress adminadmin (and super admin).

Backlog Management

  • Going through the backlog of ~13,000 total tickets on Trac and Gutenbergโ€™s GitHubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the โ€˜pull requestโ€™ where code changes done in branches by contributors can be reviewed and discussed before being merged by the repository owner. https://github.com/ repository is something that can be done independent of major releases.
  • The majority of bugfixes can be shipped in minor releases.
  • โ€˜maybelater' resolution exists for a reason and should be used more often. Discussion can always continue on closed tickets.
  • A large backlog can damage the perception of project quality and maintainability.
  • All numbers are just numbers in isolation. They need to be considered in context with surrounding factors.

Miscellaneous

  • Look for ways to encourage wider testing of betaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process./RCrelease candidate One of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). releases, and even nightly builds through the initiatives like the Host Tests, and educating developers of the possible advantages of continually using trunk for testing.
  • Reevaluate the Core SVNSVN Subversion, the popular version control system (VCS) by the Apache project, used by WordPress to manage changes to its codebase./Gutenberg repository setup to find ways to streamline the release process.
  • With overall fewer features being built in the Gutenberg repository, shifting 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.โ€™s release cadence to once a month may make sense. Though the current cadence is manageable, mostly automated, keeping this consistent is preferable if volume allows.
  • Encourage component maintainers to be more active by clarifying the responsibilities and expectations of volunteering in that capacity.
  • Release squads should primarily coordinate, encouraging broader autonomy and participation by components and various Make WordPress teams.
  • For 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), clarify the differences between mandatory compliance (WCAGWCAG WCAG is an acronym for Web Content Accessibility Guidelines. These guidelines are helping make sure the internet is accessible to all people no matter how they would need to access the internet (screen-reader, keyboard only, etc) https://www.w3.org/TR/WCAG21/.) and what non-blocking aspirational best practices are.
  • Explore faster release models once shortcomings in tooling are addressed.
  • Get better at involving contributors with non-development skill sets (e.g., design, testing, product) in more ways.

Summary

In light of these discussions, the current plans of project leadership are for 6.8 (due this month) to be the final major release of 2025. Gutenberg releases will continue on the current every two week schedule and minor releases will take place as needed throughout the year. Minor releases will continue and happen as necessary with a more relaxed barrier for inclusion of enhancements, but the โ€œno new files in minor releasesโ€ rule should continue to be followed.

Based on this productive conversation, a decision was made to organize these calls on an ongoing basis starting with a quarterly cadence. I will ensure to schedule accordingly.

Props to @jorbin and @desrosj for collecting the summary and writing this post.

#core-committer-meetings, #core-committers

Summary, Dev Chat, Apr 2, 2025

Startย of the meeting inย SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/, facilitated by @benjamin_zekavica. ๐Ÿ”— Agenda post.

Announcements ๐Ÿ“ข

WordPress 6.8 | 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). 2 is now available ๐Ÿฅณ

The Release Candidate 2 release of WordPress 6.8 is now available! A heartfelt thank you to everyone who joined the Release Party. We appreciate your testing and feedback.

@jeffpaul reminds all CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Committers to read this article and follow the outlined process for the upcoming steps: WordPress 6.8 Release Candidate Phase

Help Test 6.8 BetaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. version ๐Ÿงช

The Test-Team has written two helpful guides for people interested in testing:

Forthcoming releases ๐Ÿš€

Release Candidateย 3: April 8, 2025

Theย Release Candidateย 3ย release of WordPress 6.8 will be available onย Tuesday, April 8, 2025.

A detailed overview of the release schedule for WordPress 6.8 can be found here. The article also includes information about the individuals assigned to each release party.

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

Gutenberg 20.6 is scheduled for release onย Wednesday, April 2, 2025.

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.: 6.8

We are currently in theย WordPress 6.8 release cycle. Read more aboutย the release squad, timeline and focus for this release.

Highlighted posts โœจ

Discussion ๐Ÿค”

There were no significant topics that we would list in the summary.

Open Floor ๐Ÿ’ฌ

PHPDocs Improvements

@sirlouen is requesting a status update on Ticketticket Created for both bug reports and feature development on the bug tracker. #57299 on Core TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress., which concerns the improvement of PHPDocs for arrays. The goal is to enhance code quality and developer-friendliness in WordPress.

Style Book Integration

@smrubenstein is asking for advice on handling tab color states. Currently, custom color attributes and slotfill are used for the color inspector, but thereโ€™s no clear way to define 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. states like hover or focus. Heโ€™s asking how to integrate these into the Style Book and Style Engine so users can set default values.

Github Pull-Request

#6-8, #core, #dev-chat, #summary

Agenda, Dev Chat, Apr 2, 2025

The next WordPress Developers Chat will take place on Wednesday at 15:00 UTC in theย coreย channel onย Make WordPress Slack.

The live meeting will focus on the discussion for upcoming releases, and have an open floor section.

Additional items will be referred to in the various curated agenda sections below. If you haveย ticketticket Created for both bug reports and feature development on the bug tracker.ย requests for help, please continue to post details in the comments section at the end of this agenda.

Announcements ๐Ÿ“ข

WordPress 6.8 | 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). 2 is now available ๐Ÿฅณ

The Release Candidate 2 release of WordPress 6.8 is now available! A heartfelt thank you to everyone who joined the Release Party. We appreciate your testing and feedback.

@jeffpaul reminds all CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Committers to read this article and follow the outlined process for the upcoming steps: WordPress 6.8 Release Candidate Phase

Help Test 6.8 BetaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. version ๐Ÿงช

The Test-Team has written two helpful guides for people interested in testing:

Forthcoming releases ๐Ÿš€

Release Candidateย 3: April 8, 2025

Theย Release Candidateย 3ย release of WordPress 6.8 will be available onย Tuesday, April 8, 2025.

A detailed overview of the release schedule for WordPress 6.8 can be found here. The article also includes information about the individuals assigned to each release party.

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

Gutenberg 20.6 is scheduled for release onย Wednesday, April 2, 2025.

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.: 6.8

We are currently in theย WordPress 6.8 release cycle. Read more aboutย the release squad, timeline and focus for this release.

Highlighted posts โœจ

Discussions ๐Ÿค”

The discussion section of the agenda is to provide a place to discuss important topics affecting the upcoming release or larger initiatives that impact the Core Team. To nominate a topic for discussion, please leave a comment on this agenda with a summary of the topic, any relevant links that will help people get context for the discussion, and what kind of feedback you are looking for from others participating in the discussion.

At the moment, there are no topics for discussion.

Open floor ย ๐Ÿ’ฌ

Any topic can be raised for discussion in the comments, as well as requests for assistance on tickets. Tickets in the milestone for the next major or maintenance release will be prioritized.

Please include details of tickets / PRs and the links in the comments, and indicate whether you intend to be available during the meeting for discussion or will be async.

#6-8, #agenda, #dev-chat

WordPress 6.8 Field Guide

This guide outlines major developer features and breaking changes in 6.8 and is published in the 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). phase to help inform WordPress extending developers, CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. developers, and others.

There are more than 300 Core Trac tickets included in WordPress 6.8, 104 of which are enhancements and feature requests, and more than 170 bug fixes. This release includes 23 tickets focused on performance, 34 on accessibility, and 16 on modernizing code and applying coding standards. Changes in 6.8 are spread across 43 Core components.

This release also includes 387 enhancements, 525 bug fixes, and 70 accessibility improvements for the BlockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. Editor (a.k.a. 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/).

Below is a breakdown of the most important developer-related changes included in WordPress 6.8.


Table of contents


Block Editor

A wide array of improvements enhance performance, developer experience, and the overall editing interface.ย  This release introduces new tools like the should_load_block_assets_on_demand 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. for optimizing asset loading, a helpful warning system for developers using useSelect, and a more efficient block registration system.ย  Additionally, it updates the design tool availability per block, polishes user interface components, and delivers a collection of miscellaneous refinements that improve consistency and extensibility.

Performance and Asset Loading

New tools support developers in building more performant block-based experiences.ย  A warning in the useSelect hook alerts when selectors are defined inlineโ€”a common pattern that can lead to unnecessary re-renders.ย  The should_load_block_assets_on_demand filter offers fine-grained control over whether block assets are enqueued globally or only when needed, helping reduce unused CSSCSS Cascading Style Sheets. and 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 on the front end.ย  Together, these enhancements promote more efficient and optimized development workflows.

Block and Design Tool Registration

Improvements to block registration and design tool visibility streamline development and enhance clarity.ย  A more efficient approach to block type registration reduces the overhead of loading block metadata, especially in environments with many custom blocks.ย  Complementing this, the updated roster of design tools per block outlines which blocks support tools like padding, margin, and typographyโ€”giving developers a clearer picture of available customization options and improving consistency in the editor experience.

Editor UIUI User interface and Component Updates

Refinements across the block editor interface improve consistency, usability, and developer ergonomics.ย  Updates to core UI componentsโ€”such as buttons, inputs, and layout primitivesโ€”align styling and behavior with the emerging 40px design system standard.ย  Additional changes include improved markup consistency in the Navigation block, enhanced preview content for the Group block, and better 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) across interface elements.ย  Together, these updates support a more polished and predictable editing experience.

Accessibility

A broad set of accessibility enhancements improves navigation, markup clarity, and screen reader support throughout the block editor.ย  The .screen-reader-text class now offers more consistent focus behavior across components, while dozens of refinements address menu structures, block labels, tooltips, and interface semantics.ย  These changes create a more inclusive editing experience and bring the block editor closer in line with accessibility best practices.

Internationalization

Several improvements to internationalization tooling and infrastructure enhance the translationtranslation The process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. and localization experience for both developers and users.ย  Updates include new and refined translation functions, consistency fixes, and improved support for plural formsโ€”making it easier to build plugins, themes, and interfaces that are fully translatable and globally accessible.

Performance

New tools and guidance help developers build faster, more responsive experiences.ย  The speculative loading feature leverages the Speculation Rules 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. to prefetch or prerender likely navigation targets, improving perceived performance for end users.ย  Additionally, updated best practices for the Interactivity API provide recommendations for writing efficient, scalable interactive front-end codeโ€”supporting modern, performance-focused development in WordPress.

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/

Enhancements to the REST API expand its flexibility and usefulness for headless and decoupled WordPress applications.ย  A new filter, rest_menu_read_access, allows developers to control public access to navigation menus, menu items, and menu locations via the REST API.ย  This change enables more precise control over what menu data is exposed, supporting a wider range of front-end implementations and use cases.

Security

Password security is strengthened with support for bcrypt as the new default hashing algorithm.ย  This change modernizes WordPressโ€™s password storage, offering improved resistance to brute-force attacks and aligning with current industry best practices.ย  Existing passwords remain valid and will be rehashed with bcrypt upon the next successful login.

Miscellaneous Developer Changes

A range of smaller developer-focused updates improves consistency, extensibility, and the overall development experience.ย  These changes span various areas of core, including media handling, 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. output, post type registration, scheduling, and theme support.ย  While individually minor, they collectively reflect ongoing efforts to modernize WordPress and provide a more predictable and flexible foundation for developers.

But wait, there is more!

6.8 offers so much more!ย  More than 170 bugs, 104 enhancements and feature requests, and 21 blessed tasks have been marked as fixed in WordPress 6.8.ย  WordPress 6.8 will display Emoji 15.1โ€™s new emojis for visitors not able to display them natively, such as the ๐Ÿฆโ€๐Ÿ”ฅ.

Below are a few more to highlight:

  • Administration: Replace โ€œAdd New {Item}โ€ wording with โ€œAdd {Item}โ€ across the administration (#61219)
  • Bundled Theme: Improve text strings in Twenty Twenty-Five (#62482)
  • Bundled Theme: Accessibility additions to the site title link (#62895)
  • Date/Time: Date setting should have two more options: j.n.Y and d.m.Y (#55685)
  • Embeds: Add Canva as an oEmbed provider (#58840)
  • Options, 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. APIs: Rename the setted_transient action to set_transient (#62849)
  • REST API: Handle trailing slashes in rest_preload_api_request (#57048)
  • Security: Explicitly require the hash PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher extension and add requirement checks during installation and upgrade (#56017)
  • Upgrade/Install: Prevent an unnecessary 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. update check when the plugin update data is up to date (#44118)
  • Widgets: Add post type support to get_calendar() function. This changeset also introduces a new get_calendar_args filter. (#34093)

Please, test your code.ย  Fixing issues that your code has with WordPress core helps you and millions of WordPress sites.ย  Please test your code.

Props to @joedolson @webcommsat @audrasjb @jorbin for review.

#6-8, #field-guide

New REST API Filter for Exposing Menus Publicly in WordPress 6.8

In WordPress 6.8, 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/ will allow public access to menu data.

That enhancementenhancement Enhancements are simple improvements to WordPress, such as the addition of a hook, a new feature, or an improvement to an existing feature. addresses a longstanding need for headless CMS implementations and custom front-end applications. Before, accessing menu data via the REST API required user authentication with appropriate capabilitiescapability Aย capabilityย is permission to perform one or more types of task. Checking if a user has a capability is performed by the current_user_can function. Each user of a WordPress site might have some permissions but not others, depending on theirย role. For example, users who have the Author role usually have permission to edit their own posts (the โ€œedit_postsโ€ capability), but not permission to edit other usersโ€™ posts (the โ€œedit_others_postsโ€ capability).. In turn, that limited the potential user base for REST API implementations.

Now, with this update, you can expose menus, menu items, and menu locations publicly via the REST API, making WordPress content available to more platforms than ever.

Key Changes for Developers:

  • FilterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. to Control Menu Exposure: A new filter, rest_menu_read_access, manages the visibility of menu data in the REST API.ย  By default, menus are not exposed publicly.ย  You can use this filter to specify which menus should be accessible via the REST API.
  • Per-Menu and Endpoint-Level Control: The rest_menu_read_access filter can be used to expose specific menusโ€”and now also applies to menu items and menu locationsโ€”based on custom logic.ย  The filter receives the current REST controller class as a parameter, allowing developers to control public exposure granularly depending on which endpoint is being accessed.ย  This provides powerful flexibility to tailor REST API access across different menu-related endpoints, while ensuring that only intended data is made public.

Code Example:

To expose all menus publicly via the REST API, add this code to your themeโ€™s functions.php file or a custom 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.:

add_filter( 'rest_menu_read_access', '__return_true' );

This snippet uses the rest_menu_read_access filter to return true for all menus, making them accessible through the REST API.

For more selective exposure, you can implement conditional logic within the filter:

function filter_primary_menu_rest_visibility( $show_in_rest, $request, $instance ) {

ย ย ย if( $instance::class !== โ€˜WP_REST_Menu_Locations_Controllerโ€™ ){

ย ย ย ย ย ย ย return $show_in_rest;

ย ย ย }

ย ย ย if ( isset( $request['location'] ) && 'primary' === $request['location'] ) {

ย ย ย ย ย ย ย return true;

ย ย ย }

ย ย ย return $show_in_rest;

}

add_filter( 'rest_menu_read_access', 'filter_primary_menu_rest_visibility', 10, 3 );

In this example, only the request to the primary menu location, (wp-json/wp/v2/menu-locations/primary) is exposed via the REST API, while others remain restricted.

Extensibility Considerations:

  • Default Behavior: Menus are not exposed publicly by default.ย  Developers must explicitly opt-in to expose menu data via the REST API using the provided filter.
  • Backward Compatibility: This enhancement is fully backward-compatible.ย  Existing functionality remains unchanged unless the new filter is utilized to alter the default behavior.
  • Security Implications: When exposing menu data publicly, consider the content and structure of your menus to ensure no sensitive information is inadvertently made accessible.

These new capabilities give you the power to seamlessly integrate WordPress menus into decoupled architectures and enhance the flexibility of your content delivery strategies.ย  For more information, visit #54304.

Props to @joemcgill @spacedmonkey @marybaum @benjamin_zekavica for authoring and review.

#6-8-2, #dev-notes, #dev-notes-6-8