Dev Chat Agenda, January 16, 2024

The next WordPress Developers Chat will take place on Wednesday January 17, 2024 at 20:00 UTC in theย coreย channel onย Make WordPress Slack.

Dev Chat evolving

Using the weekly curated agenda post for live and asynchronous usage, this meeting will begin an experiment to dedicate time to current proposals in coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. and to help specifically with progressing releases.

  • Through the summaries of the discussions and 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/ links, those unable to join live, will continue to be able to read and contribute asynchronously.
  • The links in the various agenda sections below will not be shared in full in the meeting, but be available for pre and post-reading. Anything for particular discussion can still be highlighted.
  • If you have ticketticket Created for both bug reports and feature development on the bug tracker. requests for help, please do continue to post details in the comments section at the end of this post.

Discussions

These are some of the current proposals in core for awareness and which may be suitable for further discussion in Dev Chats.

  • Proposal: Default Theme Task Force for 2024
    • ย This focuses on considering how the team approaches the maintenance of the default themes to make them easier to maintain, and more future-compatible. With the release of Twenty Twenty-Four, there are now 14 default themes maintained by the project.
  • Proposal: improve the editor tech workflow for major releases
    • This proposal is focused on a workflow for merging 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/ into Core
    • This could be an ideal time to discuss to discuss and experiment based on 6.4 learnings for the benefit of 6.5.
    • As Dev Chat now has a combined input from the Gutenberg and Core meetings, there is opportunity for discussing this further during the meetings and for a deeper discussion on what could be done in 6.5.
  • Interactivity API and building interactive blocks has moved past the proposal stage and is aimed at being a key feature planned for 6.5. An update has been requested to share with Dev Chat.

Could you help curate a Call for Volunteers to review theย open proposals on Make/Coreย and create a list of unresolved ones to discuss during Dev Chat meetings?

Announcements

6.4.3 โ€“ next maintenance release โ€“ the post includes the planned schedule, the dates of the 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. scrubs, and the final release date of 30 January 2024.

Highlighted posts for information

These will not be re-shared in full in the meeting itself to enable time for discussions in a new experimental approach to Dev Chat.

Dev Chat Summary from January 10, 2024.

New versions for the default themes for theย Twenty Twenty-One,ย Twenty Twenty, andย Twenty Seventeenย are now available for download.ย 

A Year In Core: 2023 โ€“ just a few highlights from this detailed post. Props to @sabernhardt and @audrasjb.

  • In 2023, the WordPress Core team shippedย 2211 commitsย (2597 in 2022). 2751 tickets were opened, 2545 tickets were closed, and 365 were reopened.
  • Also,ย 1079 people contributedย to WordPress source code using TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. (988 in 2022), andย 472 people made their very first contribution to WordPress Core (398 in 2022).

A Week in Core โ€“ January 15, 2024 โ€“ props to @audrasjb. On Trac, between January 8 and January 15, 2024:

  • 37 commits
  • 64 contributors
  • 51 tickets created
  • 6 tickets reopened
  • 58 tickets closed
  • 8 new contributors to core!

Team reps update. The nomination period has been extended for the Core Team Reps 2024 edition to January 31, 2024 at 23:59 UTC . Full details are on the original nominations post where nominations can be added.

Call for mentors/ mentees for Contributor Mentorship programโ€™s second cohort โ€“ deadline for applications, February 12, 2024

The Feature Projects page has had an update and worth checking out for the latest statuses. Feature Projects are intended to concentrate a group of people together, to explore potential ideas for WordPressย Core.

Data Liberation in 2024ย 

Whatโ€™s new for developers? (January 2024) on the Dev Blogblog (versus network, site).

Core-editor updates

Thanks to @annezazu.

For information

  • New tracking issue:ย Section Styling, Colorways, and Typesets for WP 6.5.
  • Font Library: biggest work for now is theย Font Library: refactor REST APIย which needs feedback. Please help review if you have experience with 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/.
  • Pattern overrides:ย work is ready to testย starting with making paragraph blocks overrideable. Up next, headings, buttons and images are expected to be added soon as blocks that can have overrides.
  • Navigation:ย customize the navigation overlay with a template part, enabling a separate menu experience for mobile, has been punted from 6.5 by contributors.
  • Design tools: PR merged toย add backgroundSize feature with implicit repeating backgroundsย to add more functionality to the Group 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.โ€™s background image support that was added in 6.4. Needs PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher backports.
  • Data Views: Templates is now stabilized with Pages, Patterns, and additional views in Templates added in as experimental.ย Questions around extensibility came upย recently โ€” extensibility is very much part of the plan with the focus currently being on stabilizing the base APIs.
  • Add appearance tools support for classic themes:ย this work has been completedย andย merged into Core trunk. This opens a world of design options that, up until this point, have been only available with Block Themes, or themes using theme.jsonJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML..
  • Interactivity 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.:ย work continuesย for a public launch with 6.5 including a recentlyย merged PR to render the root interactive blocks in Server Directives Processing.
  • Block bindings API: block bindings prototype is being split into smaller PRs to move work forward in smaller chunks with the PRย that sets the basis for the API recently mergedย (this doesnโ€™t add a UIUI User interface to create the bindings).

New (thanks to @bph)

Releases

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

Please also view the updates relating to 6.5 related updates under the core-editor heading above.

A release squad announcement is expected shortly.
Next milestone: BetaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process.ย 1 is Feb 13, 2024.

New links on 6.5 since last week:

Recording of hallway hangout: Letโ€™s explore 6.5

Early opportunities to test WordPress 6.5

Note update on the Font Library API design proposalย with a particular note for REST API folks to view asย per this comment. The navigation overlay hasย been punted from the 6.5 roadmapย by the contributors working on this feature.

Any other updates on the Font Library?

Could you help with running a bug scrub around a particular area, component, or towards 6.5? More information on running scrubs. More dates for 6.5 bug scrubs will also be added once a squad is in place.

Existing 6.5 links

Next minor releaseMinor Release A set of releases or versions having the same minor version number may be collectively referred to as .x , for example version 5.2.x to refer to versions 5.2, 5.2.1, 5.2.3, and all other versions in the 5.2 (five dot two) branch of that software. Minor Releases often make improvements to existing features and functionality.: 6.4.3

  • As shared above in Highlighted Posts, the next maintenance release will be 6.4.3.
  • Milestone: RC1 January 25, 2024
  • Release slated for: January 30, 2024
  • Bug scrubs and more information is in the link above.
  • 6.4-release-leads channel on Slack

Gutenberg releases

17.5 can be downloaded from the Gutenberg plugins page.

Update: A โ€œWhatโ€™s new in Gutenberg 17.5โ€ has been published โ€“ thanks @scruffian and everyone who worked on 17.5.

Tickets to highlight for assistance

Priority will be given to tickets relating to 6.5.

Open floor

You can post suggestions in the comments box. Please indicate if you are intending to be at the meeting for any queries.

Thanks to @hellofromtonya for discussion on the core proposals lists and @annezazu for sharing the core-editor updates.


#agenda, #core, #dev-chat

Twenty Twenty-One, Twenty Twenty, and Twenty Seventeen updates now available

New versions for the Twenty Twenty-One, Twenty Twenty, and Twenty Seventeen default themes are now available for download. If your site has enabled auto-updates for these themes, you should be receiving the updates shortly. The new versions are as follows:

  • Twenty Seventeen: 3.5
  • Twenty Twenty: 2.5
  • Twenty Twenty-One: 2.1

These updates revert a recent change from using false !== strpos( ... ) in favor of the newer native str_contains() PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher function made in [55988], and released in coordination with WordPress 6.3 in August 2023.

While this is a desirable change overall, str_contains() is only available in PHP >= 8.0. To help modernize the code base, a polyfill was merged into WordPress CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. in [52039] and first released as a part of WordPress 5.9. Because all three of these themes work with versions of WordPress earlier than 5.9, any site running WordPress < 5.9 could run into fatal PHP errors.

To find more information on this change, check out #60241 on TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress..

Special thanks goes out to all of the contributors that helped with this release.

Aaron Jorbin, Carolina Poena, Sergey Biryukov and Stephen Bernhardt.

Props @jeffpaul for pre-publication review.

#bundled-theme

Dev Chat Summary, January 10, 2024

The WordPress Developers Chat meeting took place onย  10 January 2024 at 20:00 UTC ย in coreย onย Make WordPress Slack.

Key info

Chat Summary

Nominations for 2024 Core Team Reps:

@desrosj reminded Gutenberg and Core development contributors to update their local Node.js/npm as:

.. the versions of Node.js and npm required for WordPressย CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.ย development are now 20.x and 10.x.

In order to continue contributing to WordPress throughย wordpress-developย orย WordPress/Gutenberg, youโ€™ll need to upgrade the version of Node.js installed on your machine to one thatโ€™s greater than or equal to 20.10.0 (currently the most recent generally available version 20.x version). This should also update npm to the correct, expected version appropriately (10.2.3 or higher is required).

Release Updates

Next minor releaseMinor Release A set of releases or versions having the same minor version number may be collectively referred to as .x , for example version 5.2.x to refer to versions 5.2, 5.2.1, 5.2.3, and all other versions in the 5.2 (five dot two) branch of that software. Minor Releases often make improvements to existing features and functionality.: 6.4.3

@jorbin shared an update:

  • Timeline coming before next devchat.
  • No pressing issues โ€“ okay to wait โ€œa few weeks for the next minor.โ€
  • Reminder to โ€œmilestone any ticketsโ€ needing addressing.

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

  • Release squad: call to join the squad ended Jan 12th.
  • Current: in Alpha.
  • Next milestone: BetaBeta A pre-release of software that is given out to a large group of users to trial under real conditions. Beta versions have gone through alpha testing in-house and are generally fairly close in look, feel and function to the final product; however, design changes often occur as part of the process. 1 is Feb 13th.

Tickets / Issues that need assistance

  • #60227ย @jonsurrellย asked for feedback to use an external library for testing the HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways..
  • #60025 @jorbin requested help (itโ€™s in the 6.4.3 milestone) and noted:

Joe did a great job of summerizing and shared some paths forward that I think could be good to explore

Open Floor

Discussion of changing DevChat

@jorbin opened the discussion for changing DevChat, i.e. to get to the important things to chat about (rather than half or more of the meeting dropping links):

As we are now 43 minutes into the meeting and itโ€™s been almost all link sharing thus far, I wonder if perhaps 2024 should be the year we explore some alternatives for this meeting? Iโ€™m not sure that a link dump is doing it

The discussion summary:

socializing to folks leading/working on feature projects or specific items targeted in a current major release that devchat is a good place to come and share blocks/problems/areas for feedback they have. ย Chatting through those things synchronously can help find alternate paths forward for those things that are of importance to the project.

advance those conversations towards an acceptance or finding iterative ways to improve those proposals.

When to start? Experiment starts next meeting.

Call for Volunteers to review the open proposals on Make/Core and create a list of unresolved ones to discuss during the DevChat meeting.

Font Library โ€“ avoid merge roadblocks

@joemcgill asked for Font Library update and plan to avoid the roadblocks experienced during 6.4. See the discussion in the Slack thread which includes Core merge criteria.

Next Meeting

The next meeting will be on 17 January 2024 at 20:00 UTC . This DevChat will experiment with a new approach

Are you interested in helping draft DevChat summaries? Volunteer at the next meeting!

Props @webcommsat for peer review.

#6-4, #6-5, #core, #core-editor, #dev-chat, #meeting, #summary

6.4.3: An upcoming maintenance release

WordPress 6.4.3 is scheduled to be the next maintenance release for the 6.4 version. Its release will follow the following preliminary schedule:

  • 25 January 2024 โ€“ 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). made available and announced here on the make/coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. site.
  • 30 January 2024 โ€“ Final release made available.

Specific times will be decided in advance and adjustments to the schedule may be made. All adjustments will be noted in this post.

Minor or Maintenance releases of WordPress are intended as 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 releases. Currently, four bug fixes have been merged into the 6.4 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". with seven additional tickets intended for this release. If you have a ticketticket Created for both bug reports and feature development on the bug tracker. that you think should be considered, please put it in the milestone or if you lack bug gardening 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)., add a comment here. Note: except in extreme situations, only bug fixes will be considered and generally only bugs that have been introduced during the 6.4 cycle.

Final note: Some default themes are also receiving updates, but these will be happening separately even though the tickets are in the 6.4.3 milestone. See #60267 for more information. Update: The theme updates have been released

Get involved with 6.4.3

Bug Scrubs will happen in the #core room during the follow times:

Each of the open tickets is going to require development work along with testing and review. You can also run scrubs to help ensure that the correct tickets all are fixed in this release. Additionally, while the intent is for no new strings in this release, some locales have strings in 6.4 in need of translation.

General coordination for the release will happen in the #6-4-release-leads channel and decisions around code for the release will be made in the #core room.

This 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. will be led by @mikachan, @joemcgill, and myself (@jorbin).

Thank you to @fabiankaegy, @annezazu, @hellofromtonya for pre-publication review.

#6-4, #maintenance

Performance Chat Summary: 16 January 2024

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

Announcements

  • Welcome to our new members of #core-performance
  • Performance Labย 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.ย release today for version 2.8.0

Priority Projects

Server Response Time

Notes from todayโ€™s call:

  • @thekt12 I was exploring use of transient for sites that donโ€™t have persistent cache.
    https://core.trac.wordpress.org/ticket/60120#comment:8
    However I have paused the above for a while and started with #59532 as this is a bit similar toย https://github.com/WordPress/wordpress-develop/pull/5718.
    Also,ย https://github.com/WordPress/wordpress-develop/pull/5718ย is ready for mostly final review
  • @joemcgill #59969 seems to be very close on the CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. side, just needing a couple of changes to the PR. Can we get that sorted soonย @thekt12 or are you waiting on some additional feedback?
    • I think that blocks the supporting work youโ€™ve started in the GB repo at present
    • @flixos90 Yeah itโ€™s tricky and somewhat clunky to figure out the sequencing there
    • @flixos90 If the core change needs to come first, letโ€™s commit that very soon and then updateย  and merge the GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses โ€˜blocksโ€™ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ change and aim for a back port not too far away
    • I reviewedย @swissspidyโ€˜s performant translations PR yesterday, and it looks great to me. It would be great if a few more folks here could take a look too since itโ€™s a big change
  • @swissspidy The performant translations PR is close to be mergeable, itโ€˜s in very good shape already
  • @joemcgill Also, for #60120,ย @spacedmonkey are you planning on continuing the PR you started, or is your intent for someone else to pick up that work? Either is fine, just wasnโ€™t sure
    • Almost ready for commit

Database Optimization

Notes from todayโ€™s call:

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

  • Link to roadmap project and link to the GitHub project board
  • Contributors: @mukesh27 @flixos90 @westonruter
  • Projects from the 2024 roadmap:
    • INP opportunities research
    • Interactivity 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.
    • Speculative prerendering

Notes from todayโ€™s call:

  • @flixos90 I opened pull requests for most of the remaining work for the first Speculation Rules plugin MVPMinimum Viable Product "A minimum viable product (MVP) is a product with just enough features to satisfy early customers, and to provide feedback for future product development." - WikiPedia yesterday, seeย https://github.com/WordPress/performance/issues/908ย (everything linked from there)

Images

Notes from todayโ€™s call:

  • @joemcgill I submitted the plugin forย auto-sizesย last week and already heard back on some feedback to address. Iโ€™ll get that sorted and hopefully will be available soon. In the mean time, itโ€™s ready to be merged to the Performance Lab after 2.8.0 is released later today.
  • @flixos90 I plan to commit the PR forย https://core.trac.wordpress.org/ticket/59352ย shortly
  • @westonruter For Image Loading Optimization, the tests PR has been merged. I have the pull request for optimizing the loading of background images ready for review. In some quick testing I found this to reduce LCP-TTFB by ~9% when a Cover 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. has parallax and is the LCP element:ย https://github.com/WordPress/performance/pull/914
  • @swissspidy Regarding client-side image compression a new blogblog (versus network, site) post just got published about it:ย https://www.codeinwp.com/blog/pascal-birchler-interview-wordpress-media-experiements/

Measurement

Notes from todayโ€™s call:

  • @joemcgill The main thing that is on my mind is that we need to fix the performance tests that are failing in the 6.4 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". #60127. This would be good to get fixed before 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., which is being organized for the next few weeks

Ecosystem Tools

Notes from todayโ€™s call:

Open Floor

  • @pbearne I am thinking of tacklingย Improving the calculation of image sizes attributes#760ย but would like a quick chat/call to agree on the approach before I start. Could we plan that?
    • @joemcgill Iโ€™ve got an ongoing project internally where Iโ€™ve been working on that,ย @pbearne. Probably best to wait on more definition before diving into anything.
    • @joemcgill Would be happy to have you collaborate though. I most likely wonโ€™t have anything ready to share this week though
  • @flixos90 Just a reminder that the Performance Lab 2.8.0 release party will be in a good 1 hour from now, at 18:00 UTC. Please stop by and help out if youโ€™re available!

Our next chat will be held on Tuesday, January 23, 2024 at 16:00 UTC in the #core-performance channel in Slack.

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

Performance Chat Agenda: 16 January 2024

Here is the agenda for this weekโ€™s performance team meeting scheduled for Jan 16, 2024 at 16:00 UTC. If you have any topics youโ€™d like to add to this agenda, please add them in the comments below.


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

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

A Week in Core โ€“ January 15, 2024

Welcome back to a new issue ofย Week inย CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. Letโ€™s take a look at what changed onย TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress.ย between January 8 and January 15, 2024.

  • 37 commits
  • 64 contributors
  • 51 tickets created
  • 6 tickets reopened
  • 58 tickets closed

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

Code changes

Administration

  • 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): Improve color contrast of the Copy buttons success message โ€“ #60140
  • Introduce new_admin_email_subject 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. โ€“ #59250
  • Remove invalidinvalid A resolution on the bug tracker (and generally common in software development, sometimes also notabug) that indicates the ticket is not a bug, is a support request, or is generally invalid. attribute maxlength on number input โ€“ #40610

Bundled Themes

  • Add missing text domain to various 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. patterns. โ€“ #60245
  • Twenty Seventeen: Fix wrong text-domain introduced in [57281] โ€“ #60245
  • Twenty Seventeen: Revert usage of str_contains() in theme files โ€“ #60241
  • Twenty Twenty-One: Revert usage of str_contains() in theme files โ€“ #60241
  • Twenty Twenty: Revert usage of str_contains() in theme files โ€“ #60241

Comments

  • Use post_password_required() for comment capabilitycapability 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). checks โ€“ #59929

Customize

  • Correct a typo in a console warning message โ€“ #60222

Docs

  • Add a mention of appearance-tools as a possible value for add_theme_support() โ€“ #60118
  • Correct some typos in docblocks and inline comments โ€“ #60069, #59651
  • Fix wrong inline comment in delete_theme() โ€“ #60246, #59651
  • Improve wp_admin_notice() function docblockdocblock (phpdoc, xref, inline docs) โ€“ #59887

Editor

  • Allow default duotone styles if not explicitly disabled in theme.jsonJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. โ€“ #60136
  • Clarify single post and page template descriptions โ€“ #60216
  • add CSSCSS Cascading Style Sheets. var parsing for fontSize and fontFamily โ€“ #59982
  • add size and repeat to background image support โ€“ #60175
  • fix inline comment formatting โ€“ #60134
  • output palette presets when appearance tools or border are enabled โ€“ #60134
  • update npm packages in 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. for 6.4.3 โ€“ #59943, #59943

HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.

  • Add support for list elements โ€“ #60215

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

  • Cache list of language file paths in WP_Textdomain_Registry โ€“ #58919

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

  • Add new Modules API โ€“ #56313

Media

  • Fix handling of multibyte exif description metadata โ€“ #58082
  • Fix inaccurate docs for wp_attachment_is() โ€“ #59698

Modules API

  • Fix indentation โ€“ #56313

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

  • Check for empty term after DB sanitization in wp_insert_term() โ€“ #59995

Tests

  • Add hook priority call order tests โ€“ #60193
  • Correct the @group annotation in some tests โ€“ #59647
  • Fix tests following r57265 โ€“ #60216
  • Move wp_parse_list() tests to their own file โ€“ #59647
  • Remove some leftover debugging in WP_REST_Revisions_Controller tests โ€“ #59875

Themes

  • Add theme support for appearance tools โ€“ #60118

Upgrade/Install

  • Check theme compatibility during bulk upgrades โ€“ #59758

Upgrade/Install

  • Fix JavaScript localization on install page โ€“ #58696

Users

  • Remove periods in checkbox labels for consistency โ€“ #43814

Props

Thanks to the 64 people who contributed to WordPress Core on Trac: @mukesh27 (7), @joedolson (5), @andrewserong (5), @poena (4), @sabernhardt (3), @swissspidy (2), @costdev (2), @audrasjb (2), @wildworks (2), @jonsurrell (2), @mikachan (2), @benniledl (2), @Presskopp (2), @noisysocks (2), @mreishus (1), @NekoJonez (1), @jornp (1), @MadtownLems (1), @johnbillion (1), @alexanderkoledov (1), @shooper (1), @Marc_J (1), @nikmeyer (1), @xlthlx (1), @devmuhib (1), @nuhel (1), @shailu25 (1), @tmatsuur (1), @pratikthink (1), @nirav7707 (1), @Arena94 (1), @afercia (1), @luisherranz (1), @idad5 (1), @neffff (1), @joemcgill (1), @jorbin (1), @flixos90 (1), @gziolo (1), @westonruter (1), @fotodrachen (1), @antpb (1), @mikinc860 (1), @azaozz (1), @nicolefurlan (1), @bernhard-reiter (1), @jayadevankbh (1), @alexstine (1), @isabel_brison (1), @czapla (1), @andraganescu (1), @joen (1), @ellatrix (1), @youknowriad (1), @ntsekouras (1), @hellofromTonya (1), @dd32 (1), @valendesigns (1), @drrobotnik (1), @ramonopoly (1), @salcode (1), @lakshmananphp (1), @fgiannar (1), and @kraftbj (1).

Congrats and welcome to our 8 new contributors of the week: @benniledl, @alexanderkoledov, @Marc_J, @nikmeyer, @xlthlx, @idad5, @fotodrachen, @jayadevankbh โ™ฅ๏ธ

Core committers: @sergeybiryukov (10), @isabel_brison (6), @audrasjb (5), @joedolson (5), @swissspidy (2), @bernhard-reiter (2), @costdev (2), @jorbin (2), @afercia (1), @dmsnell (1), and @hellofromtonya (1).

#6-5, #core, #week-in-core

X-post: Early Opportunities to Test WordPress 6.5

X-comment from +make.wordpress.org/test: Comment on Early Opportunities to Test WordPress 6.5

X-post: Call for Mentees & Mentors: Contributor Mentorship Program Cohort #2 (2024 Q1)

X-comment from +make.wordpress.org/community: Comment on Call for Mentees & Mentors: Contributor Mentorship Program Cohort #2 (2024 Q1)

A Year in Core โ€“ 2023

Happy new year, everyone! Hereโ€™s some aggregate data for 2023 about WordPressย CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.ย contribution onย TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress..

Please note:

  • These data only include code contributions to WordPress codebase, not contributions onย 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/ย repositories such asย 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/.
  • The raw data for this post areย available on this public spreadsheet. You might find that much easier to read if you have low vision or colorblindness; the graphics below are a snapshot pulled together to include as much information as possible in this blogpost, but they are hard to make accessible to everyone.
  • You can also compare these stats with last yearโ€™s data and data from 2021.
  • All the links for the graphics below open a new tab to display them in full size.

General Trac overview

In 2023, the WordPress Core team shippedย 2211 commits (2597 in 2022). 2751 tickets were opened, 2545 tickets were closed, and 365 were reopened.

Also,ย 1079 people contributedย to WordPress source code using Trac (988 in 2022), andย 472 people made their very first contribution to WordPress Coreย โ™ฅ๏ธ (398 in 2022).

JanuaryFebruaryMarchAprilMayJuneJulyAugustSeptemberOctoberNovemberDecemberTotal
Commits14826517984174246209173250288108872211
Tickets closed1812972181561792592112772392681481122545
Tickets reopened253636192540422935402810365
Tickets created1852342081882082552563102502702121752751
New contributors18912318257451317546128472
Contributors13729515587150279217182295249111931079
This chart shows the number of commits per month in 2023, and the number of closed, reopened and created tickets per month. It also shows the number of contributors per month in 2023. It can be scrolled horizontally.

Check out the Trac timeline in the graphs below:

2023 Core Trac tickets by month (opens in a new tab)
2023 Core commits by month (opens in a new tab)

Hereโ€™s how many props and new contributors the Core project had per month. The most prolific months were February and September with 295 contributors each, followed by June and October. 42 of the new contributors received their first props on a commit related to the Twenty Twenty-Four theme.

2023 WordPress Core contributors by month (opens in a new tab)

Components activity

How did 2023โ€™s commits break out by Core Component?

The most prolific components were:

  • Editorย with 284 commits (12.8% of all listed commits)
  • Build/Test Toolsย with 265 commits (12% of all listed commits)
  • Docsย with 188 commits (8.5% of all listed commits)
  • Coding Standardsย with 154 commits (7% of all listed commits)
  • Bundled Themesย with 130 commits (5.9% of all listed commits)
  • Then cameย Media,ย Help/About, Code Modernization (which is not an official component), Themes, Administration, General, HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways., Internationalization, 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/ and Upgrade/Install. The other components each had fewer than 30 commits this year.

Contributors data retrieved fromย 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/ย profiles

The data below comes from matching contributorsโ€™ usernames, as mentioned in Trac props, with their profiles on WordPress.org.

One caveat: this ignores usernames that did not match a profile on dotorg, plus any that had blank or unusable country/company information (โ€œThe Universeโ€ or โ€œUnicorn landโ€ are not known countriesย ๐Ÿ™‚).

Contributions by country

The next graph shows the number of props received by country. The top eight countries, based on the number of props received, are these:

  • United Statesย with 2062 contributions (1255 in 2022)
  • Russiaย with 795 contributions (1152 in 2022)
  • Indiaย with 683 contributions (317 in 2022)
  • Franceย with 680 contributions (739 in 2022)
  • Australiaย with 611 contributions (386 in 2022)
  • United Kingdomย with 471 contributions (216 in 2022)
  • Irelandย with 403 contributions
  • Bangladeshย with 340 contributions (145 in 2022)
Contributions by country (opens in a new tab)

Contributors (people) by country

In 2023, people from at least 62 countries contributed to WordPress Core (57 countries in 2022).

Here are the top eight countries by number of contributors:

  • United Statesย with 164 people (152 in 2022)
  • Bangladesh with 105 people (only 43 in 2022)
  • Indiaย with 93 people (77 in 2022)
  • United Kingdomย with 31 people (38 in 2022)
  • Franceย with 30 people (22 in 2022)
  • Canadaย with 25 people (17 in 2022)
  • Germanyย with 21 people (25 in 2022)
  • Netherlandsย with 21 people (23 in 2022)
  • Spainย with 19 people (12 in 2022)
Contributors by country (opens in a new tab)

Contributions by company

In 2023, people from at least 286 companies contributed to WP Core.

These companies (well, their employees) each contributed to more than 100 commits:

  • Automatticย with 1770 contributions (866 in 2022)
  • Yoastย with 985 contributions (1452 in 2022)
  • 10up with 904 contributions (501 in 2022)
  • Whodunitย with 561 contributions (676 in 2022)
  • Googleย with 404 contributions (130 in 2022)
  • Bluehostย with 238 contributions (226 in 2022)
  • XWPย with 224 contributions (14 in 2022)
  • Human Madeย with 177 contributions (126 in 2022)
  • Advies en zoย with 143 contributions (220 in 2022)
  • Dream Encode with 128 contributions (124 in 2022)
  • Emilia Capital with 123 contributions
  • Accessible WD with 120 contributions (53 in 2022)
  • GoDaddy with 111 contributions (42 in 2022)
Contributions by company (opens in a new tab)

Contributors (people) by company

A huge number of companies have only one contributorโ€”or very few contributors. The exceptions areย Automattic, with 108ย core contributorsCore Contributors Core contributors are those who have worked on a release of WordPress, by creating the functions or finding and patching bugs. These contributions are done through Trac. https://core.trac.wordpress.orgย on Trac in 2023, WPDeveloper (39 contributors), 10up with 25 contributors, AuthLab (21 contributors),ย rtCamp (17 contributors),ย Awsmย (12 contributors), Human Madeย (12 contributors), Multidots (12 contributors), and Yoast (10 contributors). Only these 9 companies had at least 10 people credited on Trac in 2023.

Contributors by company (opens in a new tab)

What did 2022 hold for Core Committers?

39 Core Committersย committed code to the WordPressย SVNSVN Subversion, the popular version control system (VCS) by the Apache project, used by WordPress to manage changes to its codebase.ย repository this year (32 in 2022):

@sergeybiryukov (552), @audrasjb (413), @desrosj (148), @hellofromtonya (134), @joedolson (93), @isabel_brison (88), @spacedmonkey (88), @flixos90 (87), @peterwilsoncc (82), @davidbaumwald (77), @bernhard-reiter (67), @jorbin (44), @johnbillion (43), @joemcgill (39), @swissspidy (30), @azaozz (27), @costdev (25), @westonruter (25), @karmatosed (24), @gziolo (22), @oandregal (15), @ryelle (15), @adamsilverstein (9), @danielbachhuber (9), @jorgefilipecosta (8), @zieladam (7), @kadamwhite (6), @youknowriad (6), @antpb (4), @drewapicture (4), @mikeschroder (4), @afercia (3), @timothyblynjacobs (3), @clorith (2), @dd32 (2), @helen (2), @ocean90 (2), @johnjamesjacoby (1), and @whyisjake (1).

Of theย 2211 commits, 555 (25%) were made by people working atย Yoast, 413 (19%) from people working at Whodunit, 399 (18%) from employees ofย Automattic, followed by Google (151 commits), Bluehostย (148 commits) andย 10up (123 commits).

Core Committers by company (opens in a new tab)

Automattic is the only company with more than 10 active Core Committers, and 12 of them committed code in 2023. Google has 4 people allowed to commit code to WordPress, followed by 10up with 3 Core Committers.

Worth noting that 15 of the 39 active committers come from the US, which represents 38% of the Core Committers squad. Australia, Canada, Italy, Poland and United Kingdom each had 2 committers.

More than 30% of the commits were handled by committers located in the United States, 26% by committers located in Russia, and 19% by committers located in France.

Core Committers by country (opens in a new tab)

Sponsorship

In 2023, 21.6% of the contributors and 23.1% of the committers indicated that a company sponsors their contributions.

Sponsorship of contributors in 2023 (pie chart opens in a new tab)
Sponsorship of committers in 2023 (pie chart opens in a new tab)

Many thanks to @audrasjb for help collecting the 2023 data and for adding several graphics.

#contributions, #contributors, #team-update, #week-in-core, #year-in-core