A month with the WordPress Core team – March 2023
This past month, the team worked on WordPress 6.2, which was released on March 29. We also started a project to improve how attachment pages are used.
Our monthly updates
Gutenberg and Core
In March, I focused on the WordPress 6.2 release by testing the release candidates and doing follow-ups.
I continued resolving problems with the excerpt length feature and the details block. The details block is finally in Gutenberg. You can enable it by going to the WordPress admin area, Experiments, and selecting “Test the Details block.”
Overall I spent most of my time updating my open pull requests and doing triage.
Themes & Documentation
I continued working on updates for the Theme Developer Handbook and the WordPress 6.2 documentation. I also participated in the kick-off for the community themes project and contributed by creating GitHub issues and pull requests.
In the last month, I’ve been pretty slowed down because of some personal health issues. I’ve been able to focus, as usual, on some accessibility issues in Gutenberg and submitted a few pull requests. Working on Core and Gutenberg sometimes surfaces bugs in the tooling chain as well. Interestingly, I discovered and reported a bug related to the localization tools that prevent translators from being provided with translation comments in some cases. This has an impact on the actual quality of the translations and, consequently, on the quality of the user interface and user experience. The investigation is ongoing, and any help is very welcome.
Apart from that, I enjoyed attending the Yoast Contributor Day, where the core table focused on building a Gutenberg UI to allow users to create and save patterns directly from the Editor. It was a good learning opportunity, and it was good to meet with some new contributors.
Work continues in the SQLite implementation for WordPress. In a few months, we want SQLite to e part of the Performance-Lab plugin (PL for short), so one of the tasks I am currently working on is to backport the implementation from the stand-alone plugin to the PL repository. There are a lot of implementation details that we need to work out because the PL plugin has its own activation/deactivation routines that we need to override and tweak for SQLite to work properly in that context.
In addition to that, I also worked on implementing the installation routines and forms. New sites should be able to choose whether they want to use a MySQL or SQLite database when they get installed. Of course, this is not something that we can implement in the plugin, so it was implemented in a draft pull request for WordPress-Core (#3220).
This month I continued working on the PHP Autoloader (#3470). We finally resolved some performance issues that we had in previous months, and now the autoloader improves the performance of WordPress load times.
Overall, we noticed a 1% improvement in loading time and a 5% improvement in memory consumption. These numbers may not seem like much, but in the grand scheme of things, with the popularity of WP, this can have a huge impact and significantly improve the developer experience.
I continued on the work we started about six months ago with the style engine package in WordPress & Gutenberg. The style engine allows us to concatenate, minify and optimize styles. However, it is not used in all the places we could be using it, and there’s a lot of room for improvement.
By using the style engine in more places, we can reduce the amount of styles delivered to end-users and therefore reduce the carbon footprint of their sites automatically.
Removing attachment pages
One of the things the whole team focused on was removing attachment pages from WordPress. Attachment pages are a feature that is not used in the vast majority of sites but is enabled everywhere. The result is that a lot of additional pages and URLs get generated on all sites. The issue on #57913 proposes a solution to this, so we worked on an implementation to fix it (see code in #4233).
On March 29, after five months of development, WordPress 6.2 “Dolphy” was released. Thanks to the work of more than 600 contributors from over 50 countries, it includes hundreds of enhancements and bug fixes, including better PHP 8.2 compatibility and many performance improvements. Congrats everyone! 🎉
For the past month I continued helping with WordPress 6.2 release tasks and started looking into some early tickets for WordPress 6.3, as part of my duties as a Core Committer. I also led a meeting for new core contributors, and triaged new tickets incoming into Trac (the bug tracking system that WordPress uses).
On the day of the release, some of the Core and Meta tasks I helped with included:
- Updating the Credits API
- Updating the Roadmap, History, and some other documentation pages on WordPress.org
- Running tests, enabling updates, etc.
If you’d like to learn more about the release process, these steps are documented in the WordPress Core handbook: Releasing Major Versions.
I made fifty-one commits to WordPress core, mostly various bug fixes and enhancements.
In our weekly mob coding sessions with Ari, Carolina, and Andrea, we continued working on resolving the remaining coding standards issues in WordPress core, starting with always using strict comparison in PHP files. See PR 3873 for more details.
Some other notable changes include:
- Continuing with various coding standards fixes in core.
- Continuing with various unit test improvements in core. See ticket #57841 for more details.
- Updating the Requests library to version 2.0.6. See ticket #58079 for more details.
- Updating the PHPMailer library to version 6.8.0. See ticket #57873 for more details.