Performance Chat Summary: 4 July 2023

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

Announcements

  • Welcome to our new members of #core-performance
  • Many folks out today due to US 4 July holiday
  • Reminder of bugbug A bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. scrub tomorrow for a check on 6.3 issues
  • Early performance numbers on WP 6.3 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. is out: overall load time performance (represented by the “LCP” metric) sees a boost of a whopping ~26% 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 ~19% for classic themes  [see Slack post]
  • For those that missed it, we have a special Performance Improvements for WordPress 6.3 Hallway Hangout scheduled on Thursday July 27 at 3:00pm UTC
  • Reminder that Beta 4 is next week on July 11 for the 6.3 release cycle

Priority Projects

Server Response Time

Link to roadmap projects

Contributors: @joemcgill @spacedmonkey @aristath

  • @spacedmonkey Mostly been supporting the beta release. I have also validated the number that Felix got, we are massively in the green for performance improves in WP 6.3
    • While profiling, I did find this, https://core.trac.wordpress.org/ticket/58682 wp_trim_excerpt parses and renders blocks twice
    • TLDR, excerpts are parsing blocks twice, which is really bad. I will look into that ticketticket Created for both bug reports and feature development on the bug tracker. in WP 6.4, as it has been a problem since 5.0. Only noticed now other performance has improved.

Database Optimization

Link to roadmap projects

Contributors: @aristath @spacedmonkey @olliejones

  • @spacedmonkey working on dev notesdev note Each important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase., here are some early drafts:

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

Contributors: @mukesh27 @10upsimon @adamsilverstein @westonruter

Images

Link to roadmap projects

Contributors: @flixos90 @thekt12 @adamsilverstein @joemcgill

  • @spacedmonkey I did some testing on the lazy loading / fetchpriority changes. I found some places where these were not working:
    • https://core.trac.wordpress.org/ticket/58680 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. image does not add fetch priority attribute
    • https://core.trac.wordpress.org/ticket/58681 No lazy loading attribute on images in gallery
    • https://core.trac.wordpress.org/ticket/58704 Image widgetWidget A WordPress Widget is a small block that performs a specific function. You can add these widgets in sidebars also known as widget-ready areas on your web page. WordPress widgets were originally created to provide a simple and easy-to-use way of giving design and structure control of the WordPress theme to the user. images do not support fetch priority or async
    • I would say that header images (used by many coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. themes) and gallery shortcodes are pretty big issues that I would love to see fix in the WP 6.3 release cycle

Measurement

Link to roadmap projects

Contributors: @adamsilverstein @olliejones @joemcgill @mukesh27 @swissspidy

  • @swissspidy I started looking into making the performance testing environment reusable. Nothing concrete to share yet though

Ecosystem Tools

Link to roadmap projects

Contributors: @joegrainger @mukesh27

Creating Standalone Plugins

Link to GitHub overview issue

Contributors: @flixos90 @mukesh27 @10upsimon

  • @clarkeemily we have received a response from the PluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party Review team on the Dominant Color Images plugin and have some feedback to review. They found an issue that we are unable to replicate, so we are in the process of liaising with the Plugin Review team on this

Open Floor

  • @spacedmonkey Do we have a list of all the tickets that we want to have dev notes for?
  • @mukesh27 For the performance aspect, do we have only one developer note or are there multiple developer notes related to it?
    • @clarkeemily My understanding is multiple, and there will be blogblog (versus network, site) posts about a holistic review of 6.3 performance
    • @spacedmonkey noted that @flixos90 is looking into a retro for WP 6.3. That will cover some of the other ticket that do not need dev notes but had an impact. We don’t normally write a dev notedev note Each important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include a description of the change, the decision that led to this change, and a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. for things we just made faster under the hood.
    • @spacedmonkey If anyone else has anything they think we should call out in docs or write dev notes, please reach out on this channel.

Our next chat will be held on Tuesday, July 11, 2023 at 15:00 UTC in the #core-performance channel in Slack.

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