Meeting agenda here and the full chat log is available beginning here on Slack.
Announcements
- Welcome to our new members of #core-performance
- WordPress 6.4 Release Candidate One of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta). 3 is tomorrow
- The Performance Hallway Hangout blog (versus network, site) post has been updated with a recording of the session
Priority Projects
Server Response Time
Link to roadmap projects and link to the GitHub project board
Contributors: @joemcgill @swissspidy @thekt12 @mukesh27 @pereirinha
- @joemcgill One of the focuses for 6.5 will looking at several tickets related to improving template loading: https://github.com/WordPress/performance/issues/746
- @thekt12 As a part of 746, – Created a PoC to test out if persistent cache better than default function for checking
files_exists
#59314 ( PR#5597 ).
Need to get some numbers for that
- @joemcgill As we’ve talked about this exploration, one of the things that came up was the need to come up with a solid approach for cache invalidation, if we do find that the effort is worth pushing forward. Somewhat related, we have #59719 that would be great to get feedback on from anyone interested
- @pereirinha as for #59595 there’s already a PR and some feedback to look into. The proposed solution is to use object caching. The CPU impact and the wall time are greatly improved, but there’s the memory cost. I’ll be circling back on the feedback shortly
Database Optimization
Link to roadmap projects and link to the GitHub project board
Contributors: @mukesh27 @thekt12
- @mukesh27 I’ve been working on #56912, but it appears that this ticket Created for both bug reports and feature development on the bug tracker. is no longer valid. Some options have been autoloaded in WordPress 6.3, while the remaining options are not loaded in WordPress. Therefore, we should proceed to close this ticket. We are awaiting feedback from Jonny before finalizing the decision.
- @joemcgill We can give it a couple days to see if @spacedmonkey has anything to add, but think it’s ok to close if you and @flixos90 agree, since Jonny’s been away
- @brianhenryie On the templates caching, I see it’s using
file_exists()
but elsewhere in WP I see is_readable()
which is more correct, and presumably slightly slower.
- @joemcgill I think the current implementation is simply for testing purposes, but would you mind adding a comment to the ticket so we remember to review that?
JavaScript 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/. & CSS Cascading Style Sheets.
Link to roadmap project and link to the GitHub project board
Contributors: @mukesh27 @10upsimon @westonruter
Images
Link to roadmap projects and link to the GitHub project board
Contributors: @flixos90 @thekt12 @adamsilverstein @joemcgill @pereirinha @westonruter
- @westonruter I’ve got an initial PR open to introduce an “Image Loading Optimization” module for the Performance Lab plugin 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 addition to having scaffolding for the module, this PR also introdues output buffering for template renders as well as a filter 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. manipulating the output buffer prior to flushing. Reviews for this PR would be appreciated so it can be merged. This will then be used in subsequent PRs for the module to optimize the loading of images (and other things). For example, I have an early draft PR for the detection logic to determine which image is LCP and which images should not be lazy-loaded. See overview issue.
Measurement
Link to roadmap projects and link to the GitHub project board
Contributors: @adamsilverstein @joemcgill @mukesh27 @swissspidy @flixos90
- @swissspidy For the metrics stabilization exploration I did share some preliminary findings the other day based on my testing. I’m a bit out of options right now as I don’t think I’ve found a magic bullet that just eliminates any variance, so I’d appreciate some eyes there.
- @joemcgill Related to measurement, I reported here yesterday some observations I made about the automated benchmarking workflow we’ve been experimenting with during this release. Discovering that running benchmarks on the two themes sequentially, was causing the classic theme results to be skewed. I’ve opened a PR on @swissspidy‘s repo that allows you to choose which theme you want to test, as one approach to avoiding that issue.
Ecosystem Tools
Link to roadmap projects and link to the GitHub repo
Contributors: @mukesh27 @swissspidy @westonruter
- @mukesh27 for the plugin checker:
- @swissspidy So I built this GitHub Action for Plugin Check the other day and people on Twitter seemed to really like it. According to GitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ Search 2 repos are using it already
- And that’s before @adamsilverstein actively looking into bringing it to some plugins out there.
- Involves some iterations in improving the CLI Command Line Interface. Terminal (Bash) in Mac, Command Prompt in Windows, or WP-CLI for WordPress. command etc. but the action has already proven to be useful I’d say.
- @adamsilverstein I’ve been working on implementing that action, starting with a personal plugin and reporting issues back to @swissspidy
- @westonruter suggested proposing the action for the Performance Lab plugin
Creating Standalone Plugins
Link to GitHub overview issue
Contributors: @flixos90 @mukesh27 @10upsimon
Open Floor
Our next chat will be held on Tuesday, November 7, 2023 at 16:00 UTC in the #core-performance channel in Slack.
#core-performance, #performance, #performance-chat, #summary