Performance Chat Summary: 7 May 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 3.1.0 release scheduled for May 20

Priority Items

Structure:

  • WordPress performance TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. tickets
    • Current release (WP 6.6)
  • 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)
  • Active priority projects
    • Improve template loading
    • INP research opportunities
    • Improving the calculation of image size attributes
    • Optimized autoloaded options

WordPress Performance Trac Tickets

  • For WordPress 6.6:
    • @adamsilverstein only 14 tickets milestoned for 6.6 in the performance focus,  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 have been effective at keeping tickets moving
    • @spacedmonkey I would consider adding my ticketticket Created for both bug reports and feature development on the bug tracker. for loading multiple networknetwork (versus site, blog) options at once. I am hoping to get #61053 into this release.
      • @pbearne That would a good add, and we can it to the 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.
    • @westonruter Happy to share that post embeds will now get lazy-loaded in 6.6 where previously they were excluded. This was committed yesterday https://core.trac.wordpress.org/changeset/58143

Performance Lab Plugin (and other Performance Plugins)

  • Performance lab plugin and the following performance plugins:
    • Auto-sizes for Lazy-loaded Images
    • Embed Optimizer
    • Fetchpriority
    • Image Placeholders
    • Modern Image Formats
    • Optimization Detective (Developer Preview)
    • Performant Translations
    • Speculative Loading

  • Modern images: @adamsilverstein for modern images work has continued on adding AVIF support, that is very close to ready – https://github.com/WordPress/performance/pull/1176
  • @ashwinparthasarathi Worked on a couple of features and PRs are underway,
  • @benoitfouc AVIF is now mainly supported, i’m agree with this proposition
    • @adamsilverstein supported in all browsers, however only ~30% of WordPress sites have the server support they need to upload AVIFs (and generate srcset images)
    • @benoitfouc is there a way to control this support on the plugin? Using WebP by default when the server do not support AVIF
    • @westonruter Yes, that’s how it works. And there is a user option to decide which format when AVIF is available
  • @adamsilverstein that would be my preference. then, what happens if users are already outputting WebP, does that change automatically to AVIF when they upgrade the plugin, or do they need to go in and change the output setting?
    • One thing we are trying to decide on that PR is haw to handle the default settings – especially for users who upgrade from the current version
  • @westonruter Would anyone be explicitly wanting WebP instead of AVIF, I guess the question is. Adam suggested doing a major version bump from 1.x to 2 as a signal for this significant change. Might be sufficient as a way to alert users that their attention may be needed. Otherwise, I guess an adminadmin (and super admin) pointer could be added, but that seems noisy. Maybe add an Upgrade Notice in the readme as well?
    • Agreement reached:
    • Going back up to @ashwinparthasarathi PR https://github.com/WordPress/performance/pull/1208 to improve visibility of the features’ Settings screens, take a look at the last comment on the PR. How about adding a link to the settings in the activation notice? “Feature activated. Review settings.”
    • Where settings is a link to the relevant settings screen. A settings link also appears with each feature once activated, but the thinking is that the user may not notice this appear all of a sudden
  • @ashwinparthasarathi yes, it makes sense, and I will make the changes to include it in the Activation notice. I also thought that your earlier idea to make those settings links more visible is a good one. I think if we could make it stand out, it’ll work.
  • @westonruter for Speculative Loading: Whether we should go ahead and prevent speculative loading for logged-in users (and when PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher sessions are being used): https://github.com/WordPress/performance/pull/1178
    • After thinking about it some more, I wonder if it may be premature to add this as we haven’t had any reports in the wild of this being a problem. The one user who reported it did so as part of an overall set of suggestions.
    • Perhaps we sit on this awhile longer to bake
    • There could also be a new setting we could add for turning off speculative loading for logged-in users. But ideally we’d be able to make a decision and not add to the user’s set of tasks. Although there are currently pretty low-level settings for prefetch vs prerender already, so maybe this isn’t a big deal for a feature pluginFeature Plugin A plugin that was created with the intention of eventually being proposed for inclusion in WordPress Core. See Features as Plugins. as we figure out what makes sense for coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress..
    • Oh, I stand corrected, one user did report wanting to be able to disable speculative loading this in the support forumSupport Forum WordPress Support Forums is a place to go for help and conversations around using WordPress. Also the place to go to report issues that are caused by errors with the WordPress code and implementations.https://wordpress.org/support/topic/sl-lsc/#post-17699897

Active Priority Projects

Improve template loading

  • @thekt12 Last week I worked on feedback from #59595 and also worked on it’s unittest, just a few more checks and I should be able to give it for review today. I’ll resume back #57789

INP research opportunities

Improving the calculation of image size attributes

Optimized autoloaded options

  • No updates this week

Open Floor

  • @benoitfouc i want to know if somebody are interesting about working on this PR : https://github.com/WordPress/performance/issues/371 This PR make sens, and is on the same way that the new version of Modern Images Formats plugin
  • @clarkeemily I think last week one suggestion was made to have a bug scrub specifically for the Performance Lab plugin – wondered if folks were in favor of this in principle, then we can perhaps work to define the scheduling etc later

Our next chat will be held on Tuesday, May 21, 2024 at 15:00 UTC in the #core-performance channel in Slack.

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