Core Performance Team Update: November 2024

Tickets and contributions

The Performance Team works on performance-related tickets in coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. and holds a fortnightly Bug Scrub on Wednesdays, and a monthly Repo Scrub, also on Wednesday; check https://make.wordpress.org/meetings/ for current time.

Team headlines and updates

WordPress 6.7 release was on November 12, there were 23 items in total from the Performance team that were part of this release. A full list of these can be found here. The WordPress 6.7.1 release was on November 21, this was a 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. that focussed on 16 bug fixes. The WordPress Performance Team has been focusing on a few bug fixes  in October and November, such as a bug fix for Auto-sizes Reducing Image Sizes where it was discovered that images on the site appeared drastically smaller than intended (details here).

Improving the calculation of image size attributes

The Auto Sizes for Lazy-loaded Images feature was released in 6.7. The team will continue to focus on the remaining follow up issues outlined in this Roadmap and have already progressed ticket 1511 to break this down further into sub tasks.

Enable client side modern image generation 

Work continues on this project which is being tracked in the overview issue

Enhance the onboarding experience of Performance Lab

This project has now been closed and completed. It was agreed that because the following PR’s, 1646 and 1675,  have been merged and released we can close the onboarding issue. There may be an instance in the future where more feedback was received, but for now these two PRs are sufficient in supporting user feedback.

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 (and other performance plugins)

Performance Lab plugin updates are released monthly on the third Monday of the month.

The November Performance Lab plugin release included: 

Version 3.6, on November 18, 2024

  • Performance Lab
    • Fix race condition bug where activating multiple features sequentially could fail to activate some features. (1675)
    • Use AJAX for activating features / plugins in Performance Lab. (1646)
    • Introduce AVIF headerHeader The header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes. health check. (1612)
    • Install and activate Optimization Detective when the Embed Optimizer feature is activated from the Performance screen. (1644)
    • Fix uses of ‘Plugin not found’ string. (1651)
  • Optimization Detective
    • Serve unminified scripts when SCRIPT_DEBUG is enabled. (1643)
    • Bump web-vitals from 4.2.3 to 4.2.4. (1628)
    • Eliminate the detection time window which prevented URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org Metrics from being gathered when page caching is present. (1640)
    • Revise the use of nonces in requests to store a URL Metric and 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. cross-origin requests. (1637)
    • Send post ID of queried object or first post in loopLoop The Loop is PHP code used by WordPress to display posts. Using The Loop, WordPress processes each post to be displayed on the current page, and formats it according to how it matches specified criteria within The Loop tags. Any HTML or PHP code in the Loop will be processed on each post. https://codex.wordpress.org/The_Loop. in URL Metric storage request to schedule page cache validation. (1641)
    • Fix phpstan errors. (1627)
  • Modern Image Formats
    • Introduce webp_uploads_get_file_mime_type helper function. (1642)
    • Rename webp_uploads_get_file_mime_type to webp_uploads_get_attachment_file_mime_type to clarify scope. (1662)
    • Fix bug that would prevent uploaded images from being converted to the intended output format when having fallback formats enabled. (1635)

#core-performance, #performance

Core Performance Team Update: September 2024

Tickets and contributions

The Performance Team works on performance-related tickets in coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. and holds a fortnightly Bug Scrub on Wednesdays, and a monthly Repo Scrub, also on Wednesday; check https://make.wordpress.org/meetings/ for current time.

Team headlines and updates

The WordPress 6.7 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 release was on October 1, there were 28 Trac tickets related to performance in the release. The WordPress Performance Team has been focusing on a few different enhancements in September, such as adding the “auto” keyword to the sizes attribute for any image that is lazy loaded (details here).

The Performance Team had great representation at WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. US this month, with @adamsilverstein and @flixos90 co-leading the Performance Table at Contributor DayContributor Day Contributor Days are standalone days, frequently held before or after WordCamps but they can also happen at any time. They are events where people get together to work on various areas of https://make.wordpress.org/ There are many teams that people can participate in, each with a different focus. https://2017.us.wordcamp.org/contributor-day/ https://make.wordpress.org/support/handbook/getting-started/getting-started-at-a-contributor-day/.. @swissspidy gave a performance related talk on Client-side media processing in WordPress (see summary). There is also a proposal for joint collaboration between the Performance and Hosting teams being actively discussed (props to @annezazu for kicking off the discussion).

Improving the calculation of image size attributes

Now that the Auto Sizes for Lazy-loaded Images ticket has been added to 6.7, the team will continue to focus on the remaining follow up issues outlined in this Roadmap, starting with accounting for ancestor blocks to make image sizes calculations more accurate. 

Enable client side modern image generation 

Work continues on this project which is being tracked in the overview issue

Enhance the onboarding experience of Performance Lab

The team is now focusing on a series of improvements to the onboarding experience in the 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 in the overview issue. The Performance Team has been collecting feedback about the onboarding experience of Performance Lab, to inform the prioritization and decision making process for 1032.

Anyone willing to share their feedback is still welcome to participate by activating and testing the Performance Lab plugin and taking the Performance Lab onboarding feedback survey afterwards.

Performance Lab Plugin (and other performance plugins)

Performance Lab plugin updates are released monthly on the third Monday of the month, with the exception of this month. The release has been pushed to September 23, due to our participation in WCUS. 

The August Performance Lab plugin release included: 

Version 3.4.1, on September 23

  • Performance Lab
    • Fix Incorrect use of _n() (1491)
  • Enhanced Responsive Images
    • Move Auto Sizes logic from Enhanced Responsive Images to Image Prioritizer. (1476)
    • Update auto sizes logic in Enhanced Responsive Images plugin to no longer load if already in Core. (1547)
  • Image Placeholders
    • Use more robust HTMLHTML HTML is an acronym for Hyper Text Markup Language. It is a markup language that is used in the development of web pages and websites. TagTag Tag is one of the pre-defined taxonomies in WordPress. Users can add tags to their WordPress posts along with categories. However, while a category may cover a broad range of topics, tags are smaller in scope and focused to specific topics. Think of them as keywords used for topics discussed in a particular post. Processor for Image Placeholders. (1477)
    • Re-remove unneeded phpcsPHP Code Sniffer PHP Code Sniffer, a popular tool for analyzing code quality. The WordPress Coding Standards rely on PHPCS.:ignore. (1231)
    • Update PHPStan to 1.11.5. (1318)
  • Image Prioritizer
    • Move Auto Sizes logic from Enhanced Responsive Images to Image Prioritizer. (1476)
  • Optimization Detective
    • Allow URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org metric schema to be extended. (1492)
    • Clarify docs around a tag visitor’s boolean return value. (1479)
    • Include UUID with each URL metric. (1489)
    • Introduce get_cursor_move_count() to use instead of get_seek_count() and get_next_token_count(). (1478)
    • Add missing global documentation for delete_all_posts(). (1522)
    • Introduce viewport aspect ratio validation for URL Metrics. (1494)
  • Modern Image Formats
    • Convert uploaded PNG files to AVIF or WebP. (1421)
    • Account for responsive images being disabled when generating a PICTURE element. (1449)

Plugin Check is now integrated into 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/ plugin submission process

Over the course of the last year, the Performance Team has been working closely with the Plugin Review team on improvements to the Plugin Check. This month, there was an official announcement that the Plugin Check has been incorporated into the submission process for all new WordPress plugins! Alongside 2FA, the addition of the Plugin Check to the submission process will promote best practices and reduce the review time for new plugins.

#core-performance, #performance

Core Performance Team Update: August 2024

Tickets and contributions

The Performance Team works on performance-related tickets in coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. and holds a fortnightly Bug Scrub on Wednesdays, and a monthly Repo Scrub, also on Wednesday; check https://make.wordpress.org/meetings/ for current time.

Team headlines and updates

With WordPress 6.7 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. release coming up on October 1, there are 20 track tickets lined up. The WordPress Performance Team has been focusing on a few different enhancements in August, such as adding auto to the size attribute for any image that should be lazy loaded (details here), adding fetchPriority property to ES Modules and Import Maps (details here), along with a couple of AVIF fixes.  

In WordPress 6.7, we will continue working on internal improvements to ensure that the 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.’s code is as simple and stable as possible and to make it resilient when used asynchronously. This will pave the way for performance improvements such as directive code splitting or lazy loading of interactive blocks. 

Improving the calculation of image size attributes

The biggest initiative for August was including auto-sizes in Core which is now ready for the Beta release, thanks to @joemcgill and @mukesh27. Now, the team will focus on the remaining followup issues outlined in this Roadmap, starting with accounting ancestor blocks into image size calculations. 

Enable client side modern image generation 

Allowing client-side media processing offers a solution by leveraging the browser’s capabilities to handle tasks like image resizing and compression. This approach not only alleviates the strain on server resources but also enables the use of more advanced image formats and compression techniques, ultimately improving website performance and user experience. We will have a PR ready soon, but for more information, you can review the overview issue

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 (and other performance plugins)

Performance Lab plugin updates are released monthly on the third Monday of the month, with the exception of this month. The release has been pushed to September 23, due to our participation in WCUS. 

The August Performance Lab plugin release included: 

Version 3.4.0, on August 19 

  • Performance Lab
    • #1456 Remove Server-Timing metric for the autoloaded options query time 
    • #1374 Fix disabled options from reappearing in Site Health after external update 
    • #1474 Improve Performance screen when external requests to 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/ fail 
  • Enhanced Responsive Images
    • #1446 Injection of sizes=auto into images can be more robust with HTMLHTML HTML is an acronym for Hyper Text Markup Language. It is a markup language that is used in the development of web pages and websites. TagTag Tag is one of the pre-defined taxonomies in WordPress. Users can add tags to their WordPress posts along with categories. However, while a category may cover a broad range of topics, tags are smaller in scope and focused to specific topics. Think of them as keywords used for topics discussed in a particular post. Processor
    • #1399  Remove sizes attribute when the responsive image disabled 
    • #1445 Harden logic to add auto keyword to sizes attribute to prevent duplicate keyword
  • Modern Image Formats
    • #1470 Improve disabling checkbox for Picture Element on Media settings screen
    • #1437 Add missing full size image in PICTURE > SOURCE srcset 
    • #1408 Picture element: Correct the fallback image
    • #1450 Don’t wrap PICTURE element if JPEG fallback is not available 
    • #1354 Fix setting sizes attribute on PICTURE > SOURCE elements 

After the PL release, the team has been focused on Embed Optimizer and reserving space for embeds to reduce (even entirely eliminate) layout shifts (#1373). As exciting is also new work for Image Prioritizer which adds fetchpriority=low to images which are in the initial viewport but which are not visible, such as when they are in subsequent carousel slides (#1482). Props to @westonruter

More new work is done on Modern Images plugin to include converting upload PNGs in addition to JPEGs (#1421), as well as progress on Web Worker Offloading plugin (#1468 and #1455). 

WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. US is also around the corner, from September 17-20, in Portland, Oregon. The Performance team will be there, and we would love to see folks join us. Our table will be led by @adamsilverstein, and @swissspidy will give a talk on client-side media processing. 

Our WordPress #core-performance SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. channel has reached over 1k members. Thank you to all of the lurkers and contributors!  

#core-performance, #performance

Core Performance Team Update: July 2024

Tickets and contributions

The Performance Team works on performance-related tickets in coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. and holds a fortnightly Bug Scrub on Wednesdays, and a monthly Repo Scrub, also on Wednesday; check https://make.wordpress.org/meetings/ for current time.

Team headlines and updates

With WordPress 6.6 “Dorsey” released on July 16, and a couple of months of work behind us, our team has been able to deliver significant performance improvements to the editor. 

Template loading improved by 35%, sites without permanent cache, the querying of expiring transients has been reduced to a single database request. Autoloading options are now more granular, and will help with reducing slow database responses, as well as allow you to keep an eye on the acceptable limits on your site. 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. theme patterns caching was updated to use transients and is saving approximately 13% of total server response time when loading for the Twenty Twenty Four theme. 

Another great addition in 6.6 is the option to embed a preview of a post into another post simply by pasting its URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org in the editor. 

Adam Silverstein has written a post recently where he breaks down all of the above-mentioned key performance improvements the team has done over the past few major releases and has included some interesting test results. You can read it here

The team are now working on tickets for the 6.7 milestone and targeting 18 tickets for 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. release. 

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. 

In WordPress 6.7, we will continue working on internal improvements to ensure that the Interactivity API’s code is as simple and stable as possible and to make the Interactivity API resilient when used asynchronously. This will pave the way for performance improvements such as directive code splitting or lazy loading of interactive blocks. 

Improving the calculation of image size attributes

The Performance Team is continuing the work outlined in this Roadmap, and have identified a couple of bugs (#1381, #1316). The fixes will be included in the upcoming release on August 19. 

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 (and other performance plugins)

Performance Lab plugin updates are released monthly on the third Monday of the month.

Throughout June, the Performance Team has focused on enhancements, such as improving settings for Modern Image Formats (#1258), updating standalone plugin assets (#1366), enhancing the health check message when WebP is not supported (#715), added PHPStan strict rules (#1241). 

The team has implemented speculative loading of the search form (#1297) as a new feature to the Speculative Loading plugin, as well as extend core’s Autoloaded Options Site Health test if present, for the Performance Lab plugin (#1298). 

The July Performance Lab plugin releases included: 

Version 3.3.0, on July 15: 

  • Enhanced Responsive Images
  • Performance Lab
    • #1340 Extend core’s Autoloaded Options Site Health test if present (in WP 6.6) 
  • Modern Image Formats
    • #1315 Picture element images: Missing alt text 
    • #1300 Modern Image Formats picture support breaks gallery block cropping 

Version 3.3.1, on July 25: 

  • Enhanced Responsive Images
    • #1399 – Accurate sizes improvement didn’t account for the disable 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 sizes
  • Performance Lab
    • #1374 – Autoloaded Options Health Check: Disabled options reappear in Site Health after external update
  • Modern Image Formats
    • #1354 – Picture element: The accurate sizes improvement for images not working

For the rest of July, the Performance Team has been focusing on the enhancements for the  Optimization Detective plugin, and working on bug fixes for Modern Image Formats and Enhanced Responsive Images plugins. 

#core-performance, #performance

Core Performance Team Update: May 2024

Tickets and contributions

The Performance Team works on performance-related tickets in coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. and holds a fortnightly Bug Scrub on Wednesdays; check https://make.wordpress.org/meetings/ for current time.

The team are now working on tickets for the 6.6 milestone and targeting 14 tickets for 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 on June 4 including 4 enhancements.

INP research opportunities

Work continues from the Performance team on the INP improvements identified in the summary document. Please reach out to @adamsilverstein if anyone is interested in contributing.

Improve template loading

For WordPress 6.6, work continues on several TracTrac Trac is the place where contributors create issues for bugs or feature requests much like GitHub.https://core.trac.wordpress.org/. tickets relating to template loading (see overview issue) including #59600 for BlockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. themes: Use a cache for block template files, #57789 Make 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. related caches persistent and #59595 Improve performance of WP_Theme_JSON::compute_style_properties. 

Team headlines and updates

The Performance Team is gearing up for WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. Europe in Turin, 13-15 June. There will be a Performance Table on Contributor DayContributor Day Contributor Days are standalone days, frequently held before or after WordCamps but they can also happen at any time. They are events where people get together to work on various areas of https://make.wordpress.org/ There are many teams that people can participate in, each with a different focus. https://2017.us.wordcamp.org/contributor-day/ https://make.wordpress.org/support/handbook/getting-started/getting-started-at-a-contributor-day/. (Thu Jun 13) led by @adamsilverstein – we would love to see as many people there as possible!

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 (and other performance plugins)

Performance Lab plugin updates are released monthly on the third Monday of the month.

Throughout May, the team voted to create a new Performance Lab bug scrub meeting, to be scheduled every 4 weeks, the first of which took place on Wednesday May 29, here’s the start of the first chat.

This month the Performance Team has been focusing on improving the assets for the Performance Lab plugins (see GitHub issue) and are hoping to launch these in June. The Modern Images plugin has been updated with AVIF support (PR). The team is also focusing on a set of considerations for the Speculative Loading plugin (see GitHub issue).

The Performance Team is progressing work on the Image Prioritizer plugin which will split out the image-specific logic from the Optimization Detective plugin, leaving that plugin as an 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. dependency. We can then feature Image Prioritizer in the Performance Lab plugin to promote to users. The team also continues to focus on the API to facilitate a more accurate sizes attribute (see GitHub overview issue).

This month the Performance Team released version 3.1.0 of the Performance Lab plugin including 8 enhancements: Add progress indicator when activating a feature. (1190), Display plugin settings links in the features screen and fix responsive layout for mobile. (1208), Add plugin dependency support for activating performance features. (1184), Add support for AVIF image format in site health. (1177), Add server timing to 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/. response. (1206), Bump minimum PHPPHP PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. https://www.php.net/manual/en/preface.php. requirement to 7.2. (1130), Refine logic in perflab_install_activate_plugin_callback() to rely only on validated slug. (1170) and Improve overall code quality with stricter static analysis checks. (775). The release also included 3 big fixes: Avoid passing incomplete data to perflab_render_plugin_card() and show error when plugin directory API query fails. (1175), Do not show admin pointer on the Performance screen and dismiss the pointer when visited. (1147) and Fix WordPress.DB.DirectDatabaseQuery.DirectQuery warning for Autoloaded Options Health Check. (1179).

The next release of the Performance Lab plugin 3.2.0 will be scheduled for June 6, 2024 to account for WordCamp Europe attendance for most team members. 

#core-performance, #performance

Core Performance Team Update: April 2024

Tickets and contributions

The Performance Team works on performance-related tickets in coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. and holds a fortnightly Bug Scrub on Wednesdays; check https://make.wordpress.org/meetings/ for current time.

The Performance Team posted an overview of WordPress 6.5 performance improvements. The team are now working on tickets for the 6.6 milestone. Currently there are 4 closed tickets, and 14 tickets that are in progress (see Trac tickets).

INP research opportunities

Work continues from the Performance team on the INP improvements identified in the summary document. Please reach out to @adamsilverstein if anyone is interested in contributing.

Improve template loading

Work continues on several TracTrac Trac is the place where contributors create issues for bugs or feature requests much like GitHub.https://core.trac.wordpress.org/. tickets relating to template loading (see overview issue) including #59600 for BlockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. themes: Use a cache for block template files, #57789 Make 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. related caches persistent and #59595 Improve performance of WP_Theme_JSON::compute_style_properties.

Additional Plugins

The Performance Team is aiming to kick off the Image Prioritizer 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 this week which will split out the image-specific logic from Optimization Detective, leaving that plugin as an 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. dependency. We can then feature Image Prioritizer in the PL plugin to promote to users. The team is also focused on the API to facilitate a more accurate sizes attribute, and started looking into creating a Colab to capture and compare metrics for this. More to follow in the coming weeks on this. 

Team headlines and updates

The Performance Team is gearing up for WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. Europe in Turin, 13-15 June. There will be a Performance Table on Contributor DayContributor Day Contributor Days are standalone days, frequently held before or after WordCamps but they can also happen at any time. They are events where people get together to work on various areas of https://make.wordpress.org/ There are many teams that people can participate in, each with a different focus. https://2017.us.wordcamp.org/contributor-day/ https://make.wordpress.org/support/handbook/getting-started/getting-started-at-a-contributor-day/. (Thu Jun 13) led by @adamsilverstein – we would love to see as many people there as possible!

The article How WordPress Is Creating a Faster Web was published on the WordPress News blog, covering the Performance Team’s work and accomplishments. In addition to that, the team shared an interactive Colab tutorial for conducting WordPress performance research in the field.

Performance Lab Plugin

Performance Lab plugin updates are released monthly on the third Monday of the month.

This month the Performance Team released version 3.0.0 of the Performance Lab plugin improving the UIUI UI is an acronym for User Interface - the layout of the page the user interacts with. Think ‘how are they doing that’ and less about what they are doing. for the migrationMigration Moving the code, database and media files for a website site from one server to another. Most typically done when changing hosting companies. of modules to plugins (see overview issue). The Speculative Loading plugin was warmly received by the community. This work is now considered complete and any future infrastructure work on the Performance Lab plugin will be handled in the usual process through the GH repo. Work will continue on streamlining PL plugin and other standalone plugins #1061 and also on updating the standalone plugin assets #1136.

Following the 3.0.0 release, the team also updated documentation in the Performance Handbook around Proposing a New Plugin for the Performance Lab and Writing a Plugin for the Performance Lab based on the infrastructure updates. 

#core-performance, #performance

Core Performance Team Update: March 2024

Tickets and contributions

The Performance Team works on performance-related tickets in coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. and holds a fortnightly Bug Scrub on Wednesdays; check https://make.wordpress.org/meetings/ for current time.

The Performance Team contributed towards 20 tickets for the upcoming tickets for WordPress 6.5, and are now directing their attention to the 6.6 milestone. Currently there are 2 closed tickets, and 14 tickets that are in progress (see Trac tickets).

INP research opportunities

The Performance Team has been focusing on research around potential INP improvement opportunities across the WordPress Ecosystem, which are now summarized in this summary doc (along with a linked spreadsheet with all the data). If you would like access to the colab and queries, please request it directly in the colab. The Analysis section highlights some notable data for both core and plugins/themes (with action items) that will be worth investigating further. The Performance Team invites the community to leave comments/questions on the document itself so they can be discussed at a subsequent weekly Performance meeting.

Improve template loading

Work continues on several TracTrac Trac is the place where contributors create issues for bugs or feature requests much like GitHub.https://core.trac.wordpress.org/. tickets relating to template loading (see overview issue) including several PRs for #59600 for BlockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. themes: Use a cache for block template files. 

Additional Plugins

The Performance Team are pleased to announce the two new plugins, Embed Optimizer and Optimization Detective have now been released and are available for installation. The community are invited to please install and test these plugins, and provide feedback. 

Team headlines and updates

Earlier this month, the Performance Team took part in Contributor DayContributor Day Contributor Days are standalone days, frequently held before or after WordCamps but they can also happen at any time. They are events where people get together to work on various areas of https://make.wordpress.org/ There are many teams that people can participate in, each with a different focus. https://2017.us.wordcamp.org/contributor-day/ https://make.wordpress.org/support/handbook/getting-started/getting-started-at-a-contributor-day/. at WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. Asia where the team not only made contributions to WordPress itself, but most importantly held crucial conversations with other key community members. Adam landed a core Fetch Priority enhancement to the script loader 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 enable the fetchpriority attribute in the wp_preload_resources 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.. Weston met with Elementor Product Lead Shilo Yemini to discuss Optimization Detective and bundling it with Elementor as the solution for identifying and optimizing the LCP elements. Landing this feature in Elementor could be a huge win for their LCP performance and a great way to gather more data for a potential core merge.

At the WordCamp Asia conference itself, Pascal gave a talk on Democratizing Performance and Adam presented a great summary of INP. Both presentations were greatly received by the audience who were really enthusiastic about WordPress performance and the team’s efforts so far.

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

Performance Lab plugin updates are released monthly on the third Monday of the month.

There was no release this month for the Performance Lab plugin as the team are focused on improving the UIUI UI is an acronym for User Interface - the layout of the page the user interacts with. Think ‘how are they doing that’ and less about what they are doing. for the migrationMigration Moving the code, database and media files for a website site from one server to another. Most typically done when changing hosting companies. of modules to plugins (see overview issue) as well as improvements to the user experience of the Performance Lab screen itself, to put the focus on features as opposed to plugins. The team is aiming to launch the new user interface mid-April in the 3.0.0 release.

#core-performance, #performance

Core Performance Team Update: February 2024

Tickets and contributions

The Performance Team works on performance-related tickets in coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. and holds a fortnightly Bug Scrub on Wednesdays; check https://make.wordpress.org/meetings/ for current time.

The Performance Team is focusing on upcoming tickets for WordPress 6.5, including the Performant Translations work #59656, and support for the AVIF image format #51228. The team have created several dev notes for the Performance work included in WordPress 6.5:

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.

The Performance Team has been supporting on the efforts for the interactivity API TracTrac Trac is the place where contributors create issues for bugs or feature requests much like GitHub.https://core.trac.wordpress.org/. ticket #60356 has now been merged as part of WordPress 6.5 which will allow new interactive features to be shipped to users using less client-side 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/., resulting in better metrics for LCP, CLS and INP. The merge announcement post provides additional information.

Server Response Improvements

In addition to the performance improvements to the I18n system and for registering 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. Type Variations—both of which target server response times—the team also worked on:

  • Improving Block Pattern registration performance (#59532)
  • Improving the performance of the new PluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party Dependencies feature (#60518

Plugin Checker

The Performance Team has continued work on the Plugin Checker, collaborating closely with the Plugin Review team and are pleased to announce the release of version 1.0.0, which alongside a new technical foundation brings several enhancements, such as WP-CLIWP-CLI WP-CLI is the Command Line Interface for WordPress, used to do administrative and development tasks in a programmatic way. The project page is http://wp-cli.org/ https://make.wordpress.org/cli/ support. 

Additional Plugins

The Performance Team are also working on 2 new plugins; Embed Optimizer and Optimization Detective. Please see#core-performance channel in Slack for more details on when these will be released.

Team headlines and updates

The team has been working closely on profiling WordPress 6.5 throughout 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. this month and look forward to sharing the results once the release is out.

Performance Lab Plugin

Performance Lab plugin updates are released monthly on the third Monday of the month.
February’s release 2.9.0 included several enhancements for working towards creating standalone plugins. It now recommends the new plugins “Auto Sizes for Lazy-loaded Images” and “Speculation Rules” (958), and it comes with an enhanced generator tag that includes the standalone plugin slugs (949). A  Server-Timing headerHeader The header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitor’s opinion about your content and you/ your organization’s brand. It may also look different on different screen sizes. bug has been fixed (957). The team are working towards the major 3.0.0 milestone which will introduce separate plugins, where the user will be asked to install/activate the standalone plugins instead of the previously used PL modules.

#core-performance, #performance

Core Performance Team Update: October 2023

Tickets and contributions

The Performance Team works on performance-related tickets in coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. and holds a fortnightly Bug Scrub on Wednesdays; check https://make.wordpress.org/meetings/ for current time.

The focus in October was on tickets prioritized for the upcoming WordPress 6.4 release in which 68 TracTrac Trac is the place where contributors create issues for bugs or feature requests much like GitHub.https://core.trac.wordpress.org/. tickets were merged. Several follow up fixes were committed in the past few weeks to further polish performance enhancements in the 6.4 release. Early indications of benchmarking are showing positive improvements in performance, especially in server response time. The team focused on finalizing dev notes for the work:

The Performance Team is now starting to focus on upcoming tickets for WordPress 6.5, including the Performant Translations work mentioned below, and several items for improving template loading (see GitHub overview issue).

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 Checker

The Performance Team has continued work on the Plugin Checker https://github.com/WordPress/plugin-check, working closely with the Plugin Review team. 

Performant Translations Plugin

Further updates have been made to the Performant Translations plugin and a Trac ticket #59656 has been opened for merging Performant Translations in WordPress 6.5.

Team headlines and updates

In October, the Performance Team held a Hallway Hangout to discuss WordPress 6.3 performance impact in the field, diving into WordPress 6.4 performance improvements and looking ahead at what can be learned for WordPress 6.5. The recording of the video will be shared over the coming weeks.

Performance Lab Plugin

Performance Lab plugin updates are released monthly on the third Monday of the month.
October’s release 2.7.0 included enhancements to remove fetchpriority as the functionality is now available in WordPress Core, bumped the minimum required PHP version to 7.0 and minimum required WordPress version to 6.3 and the dominant color images standalone plugin was published. Work also continues on updating the new UI to manage standalone plugins and built-in modules.

#core-performance, #performance

Core Performance Team Update: September 2023

Tickets and contributions

The Performance Team works on performance-related tickets in coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. and holds a fortnightly Bug Scrub on Wednesdays; check https://make.wordpress.org/meetings/ for current time.

In September, the Performance Team published a post regarding Analyzing the Core Web Vitals performance impact of WordPress 6.3 in the field, which details the findings from the analyses that were conducted to assess the performance impact using public data sets from HTTPHTTP HTTP is an acronym for Hyper Text Transfer Protocol. HTTP is the underlying protocol used by the World Wide Web and this protocol defines how messages are formatted and transmitted, and what actions Web servers and browsers should take in response to various commands. Archive and Chrome User Experience Report.

The focus in September was on tickets prioritized for the upcoming WordPress 6.4 release for which 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 was released on September 26, 2023. Early indications of benchmarking are showing positive improvements in performance. Noteworthy inclusions in WordPress 6.4 include: improvements to template loading performance for BlockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. Themes and Classic Themes, usage of the new script loading strategies “defer” and “async” in core, blocks, and themes, additional enhancements to optimize image loading performance, and new functions to optimize the use of autoloaded options.

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 Checker

The Performance Team has been working with the Plugin Review team to launch an early version of the Plugin Checker discussed in the Turning the Tide blog post. This has now been merged into a single repo under the WordPress organization https://github.com/WordPress/plugin-check. Look out for updates over the coming weeks.

Performant Translations Plugin

Further updates have been made to the Performant Translations plugin and next steps here would be to test the plugin and determine a path forward to integrate into WordPress Core. To test the plugin, please see the Call for Testing: Performant Translations post.

Team headlines and updates

In October, the Performance Team also has a Hallway Hangout scheduled (announced in this blog post) for  2023-10-19 15:00, where we will review WordPress 6.3 performance impact in the field, diving into WordPress 6.4 performance improvements and looking ahead at what can be learned for WordPress 6.5. 

Performance Lab Plugin

Performance Lab plugin updates are released monthly on the third Monday of the month.

September’s release 2.6.1 was a smaller release including removing the PHPStan config file from the plugin directory and also adding assets to the various Performance Lab plugins (Fetchpriority and WebP Uploads). The Dominant Color Images plugin was approved, and work continues on the next set of enhancements around uncoupling the plugin features from the Performance Lab plugin related to the settings screen UIUI UI is an acronym for User Interface - the layout of the page the user interacts with. Think ‘how are they doing that’ and less about what they are doing.

#core-performance, #performance