Performance team meeting summary 14 June 2022
Meeting agenda here and the full chat log is available beginning here on Slack.
Announcements
- @flixos90: Formal team proposal
- Given our successes so far (5K+ plugin installs, lots of great feedback at WCEU, etc.) now is a good time to formally propose our initiative as a proper Performance Team
- This would get us our own site on make.wordpress.org and an entry on the top-level site
- Feel free to ask any questions or share your thoughts on this plan in the comments
- @spacedmonkey: Does that mean there will be “official” team members and leads?
- @flixos90: We’ll have to see; not sure if that’s a requirement for a formal team
- @tweetythierry: We currently have the GitHub members list, which we may use as a source of truth
- @shetheliving: Our next release, 1.2.0, is scheduled for next Monday 20 June, which is a US holiday, so we think it would be best to move to Tuesday 21 June and have the release party in the #performance channel on June 21, 2022 at 1pm EDT
- Asked for a thumbs up vote to approve this shift; received 8 thumbs ups so release will be moved
Focus group updates
Images
@adamsilverstein @mikeschroder
- @adamsilverstein: Work has continued to bring the Create WebP images on upload #22 core patch completely up to speed with all of the improvements that we’ve made in the plugin. Looking more carefully at how we can leverage the
webp-hero
polyfill for older browsers. - @adamsilverstein: Reviewing the hosting survey results and preparing a summary to share. Also following up on some interesting discussions from WCEU Contributor Day about tests for WebP image quality and how to choose the “best” quality level and the idea of keeping only the smaller generated image by default to address storage concerns.
- @spacedmonkey: @pbearne worked a lot on Add low quality image placeholders using background color #19 at WCEU and it’s ready for merge; @flixos90 will review again today
- @jjgrainger: Been working on proposals for modifying WP core image functions to support multiple mime types and introducing bulk regenerate image sizes functionality into core
- @eugenemanuilov: After reviewing the
webp-hero
polyfill in #341, decided against is since it has very limited functionality, so decided to create a fallback mechanism that uses original images. POC is ready for review in https://github.com/WordPress/performance/pull/360. - @spacedmonkey: Add async decoding attribute as default to the HTML image tags generated by WordPress has been loaded into core thanks to @peterwilsoncc
- @mehulkaklotar: Working on a core patch for adding WebP uploads with multiple mime type support for edit/restore flows and proposals for API to facilitate more accurate “sizes” attribute #140 and the plugin performance checker
- @akshitsethi: Working on adding support for plugin integration with WebP uploads
Feedback requested
- Needs Discussion (8 issues)
- Needs Review (3 issues)
Object Cache
- @spacedmonkey: Committed:
- https://github.com/WordPress/wordpress-develop/commit/aff6a79b27d529b92e499018433d01d695457b09
- https://github.com/WordPress/wordpress-develop/commit/b855e6369302c4e25da717f47cbcb9f15896f06e
- https://github.com/WordPress/wordpress-develop/commit/6d89ea8f09cf21ef0d1e1acd6e1b30fba1a72301
- https://github.com/WordPress/wordpress-develop/commit/219927c11b001fad95e1f2ee6b17d132b8d00af2
- https://github.com/WordPress/wordpress-develop/commit/c2de42b9adec84397b4c3e5895809f01880a241a
- @spacedmonkey: Needs review:
Feedback requested
- See list above
- Needs Discussion (3 issues)
- Needs Review (3 issues)
Site Health
N/A
- We’re seeking 1-2 POCs for this group; if you’re interested, please comment here or ping in Slack
Feedback requested
- Needs Discussion (5 issues)
Measurement
N/A
- We’re seeking 1-2 POCs for this group; if you’re interested, please comment here or ping in Slack
- @flixos90: Update on plugin checker proposal
- Most important decision to make soon is which approach to follow for this project
- Things to consider:
- Focusing on static analysis only is probably a no go, as so many aspects of performance can only be detected at runtime.
- Server-side analysis is a solid approach as it allows for runtime checks, and we could still easily include static analysis as part of that approach.
- Client-side analysis certainly gives the most flexibility to also include e.g. browser optimization related checks, but it also requires either a public site to be spun up or a headless browser setup, which can be tricky to have on certain environments.
- See this as building with two potential use cases in mind:
- For plugin developers to integrate with their own development workflows, e.g. in a GitHub action
- For the wordpress.org plugin repository to run it on plugin submission (potentially in some reduced capacity, i.e. only a subset of all checks that they consider most valuable)
- @spacedmonkey: Wonder if we can use my ideas from a plugin like Query Monitor, like detecting duplicate queries, slowing running queries, or query counting. For example, WooCommerce adds over 100 queries to page load.
- @flixos90: Discovering things like that would definitely be helpful and Query Monitor is a useful tool that we reuse parts from
- @mitogh: Do we have an idea of which metrics would be considered baseline to “pass”?
- @flixos90: Would be less of a general “pass” vs. “fail,” but more a ton of individual checks that can pass, create an error, or create a warning, like PHPCodeSniffer
- @flixos90: One project that we should probably research more is the latest automated theme testing tool mentioned here. Current take is that we should primarily focus on a server-side approach that’s built with client-side extensibility in mind.
- @jonoaldersonwp: Seems like a sensible first step
- @johnbillion: I’ve considered splitting some parts of Query Monitor into Composer packages but don’t have capacity right now, happy to assist though where necessary
- @flixos90: One more step that @mikeschroder pointed out is that we should share this proposal with a wider audience, including the plugin review team; will share shortly and also plan to publish a post on Make
Feedback requested
- Proposal for plugin checker
- Measurement overview doc
- Capturing front-end performance metrics in WordPress doc (for #s 63/64)
- Needs Discussion (5 issues)
- Needs Review (1 issue)
JavaScript
- No updates
Feedback requested
- Tree-shaking block styles on the frontend #41020
- Needs Discussion (2 issues)
- Needs Review (3 issues)
Infrastructure
- @mukesh27: Worked on Introduce plugin uninstaller #345; feedback appreciated
- @flixos90: A few great PRs for infrastructure/documentation were created by first-time contributors at WCEU Contributor Day, e.g. plugin uninstaller above and new Quick Start guide
- @flixos90: For the 1.2.0 release next Tuesday, let’s be sure to have all PRs merged by tomorrow
Feedback requested
- Needs Discussion (5 issues)
Open floor
- @furi3r: Flagging Add support for preload links (similar to resource hints) #42438 – @swissspidy left some concerns and would like some support there, would be great to add this to 6.1
Help wanted
- All issues labeled Needs Discussion
- All issues labeled Needs Decision
- All issues labeled Needs Dev
- All issues labeled Needs Review
- All issues labeled Needs Testing
#core-js, #core-media, #performance, #performance-chat, #summary