Performance Chat Summary: 9 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
  • Request for reviewers of the draft 2024 Performance Roadmap document please
    • @clarkeemily We are aiming to receive feedback on the above document by the end of this week please – we would greatly appreciate everyone’s feedback and input into shaping 2024
    • You will notice in this document that the Priority Projects have changed shape to being:
      • WordPress interactivity performance
      • WordPress load time performance
      • Ecosystem activation
      • Performance measurement
    • I’d be interested in opinions as to whether we structure the sections of this meeting aligned to those projects from next week onwards?

Priority Projects

Server Response Time

Link to roadmap projects and link to the GitHub project board

Contributors: @joemcgill @swissspidy @thekt12 @mukesh27 @pereirinha

  • @swissspidy For performance translations I just pinged some folks for code review again now that the holiday break is over
  • @pbearne can add an issue to create PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher-based translationtranslation The process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. files in the build tools?
  • @thekt12 Working on final bits of #59969 PR#5718 addressing review changes, unit testunit test Code written to test a small piece of code or functionality within a larger application. Everything from themes to WordPress core have a series of unit tests. Also see regression. and updating corresponding Guttenberg PR.
  • @thekt12 Also, started working on #60120 I’ll give it for first review this week
  • @joemcgill At the end of this meeting last week, @flixos90 @spacedmonkey and I had a useful conversation about improving our caching strategy 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. theme files (#59719), which has unblocked #60120. Jonny already created a PR for that issue which is ready for review.
  • @joemcgill @pereirinha also updated the PR for #59595, and I left some feedback yesterday. I think this is close save for a few details.

Database Optimization

Link to roadmap projects and link to the GitHub project board

Contributors: @mukesh27 @thekt12

  • @pbearne I updated the options autoload patchpatch A special text file that describes changes to code, by identifying the files and lines which are added, removed, and altered. It may also be referred to as a diff. A patch can be applied to a codebase for testing. follow the term changes

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

  • No updates this week

Images

Link to roadmap projects and link to the GitHub project board

Contributors: @flixos90 @adamsilverstein @joemcgill @pereirinha @westonruter

  • @adamsilverstein I have an update on AVIF image support – Microsoft has added support for AVIF in Edge, since version 1.121, (release data Jan 7, 2024) – see https://learn.microsoft.com/en-us/deployedge/microsoft-edge-relnote-beta-channel#feature-update
    • I also confirmed this manually be opening test AVIF images in Edge (Canary) and everything worked as expected.
    • Assuming this lands in stable, we should be able to add support for AVIF to coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress., see #51228
    • @mukesh27 Like WebP do we needs to make a module first for testing then merge into core?
    • @flixos90 I think to merely add support for the format, we could work directly against core. That was done the same way with WebP. Only if we wanted to make it a default or something, we’d need a module IMO. Although at some point we may just ditch WebP and try to progress with AVIF only, depending on browser support
    • @adamsilverstein Support can already be tested with https://github.com/WordPress/wordpress-develop/pull/4612, note you need a server that supports AVIF for it to work, typically PHP 8.1+ or Imagick built with AVIF support
    • @flixos90 mentioned @swissspidy your client-side image efforts would be super useful for this too, as it would unlock AVIF support for a lot more sites
  • @joemcgill An initial module for implementing auto-sizes for lazy-loaded images is ready 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. This web feature is already in Chrome Betas, and will likely roll out in the next few weeks, so I’d like to get this out for people to start testing. See: https://github.com/WordPress/performance/pull/904
  • @swissspidy For client-side image compression aka media experiments I’m working on a PRD and trying things out in my media experiments plugin

Measurement

Link to roadmap projects and link to the GitHub project board

Contributors: @adamsilverstein @joemcgill @mukesh27 @swissspidy @flixos90

  • @joemcgill Nothing new this week, but wanted to flag that the Performance Tests started 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". recently, in case anyone has time to dig into it later this week: #60127

Ecosystem Tools

Link to roadmap projects and link to the GitHub repo for Plugin Checker

Contributors: @mukesh27 @swissspidy

  • @mukesh27 For the Plugin Check, I’ve been providing support by conducting code reviews for open PRs. Additionally, I’ve raised an issue regarding Behat test issue in PHP 8.0 for investigation
  • @flixos90 Several PRs have landed in the plugin checker repo last week from I believe a new contributor? I’m not sure what their 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/. user name is, but that effort definitely deserves recognition! @rabmalin thanks!
  • @joemcgill It also looks like @foosantos left some feedback on https://github.com/WordPress/plugin-check/issues/283#issuecomment-1882241470 regarding steps to releasing 1.0.0 of the plugin. It sounds like the Plugin Review team have several new blockers that need to be handled prior to that release, though I’m not sure where all of that is being coordinated. One of us should respond and see if we can get some visibility into issues @bordoni has been working on and whether we can support in order to relieve some pressure from their team. @flixos90 I’m happy to take this on if you don’t have time, but will defer to you, given you started that convo. @pbearne also offered to help.
  • @flixos90 It would definitely be great to find ways to better collaborate on both efforts. I don’t understand the problems at this point since I have no insight in the discussions that are happening. We could also actively support addressing their blockers which I think would be good for everyone
    • @clarkeemily asked @bordini how can we help here, and also get visibility into the behind the scenes planning that was mentioned in the comment above?

Creating Standalone Plugins

Link to GitHub overview issue

Contributors: @flixos90 @mukesh27

  • @mukesh27 We have successfully completed the Milestone 2a tasks and their respective follow-up PRs for the Creating Standalone Plugins feature. This is set to be released in the upcoming version 2.8.0.

Open Floor

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

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