Summary, Dev Chat, May 22, 2024

Start of the meeting in 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/., facilitated by @joemcgill. 🔗 Agenda post.

Announcements

  • The scheduled date for WordPress 6.6 Beta 1 is June 4, which is less than 2 weeks away. From this point on, we will focus on testing and fixing bugs discovered during 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. testing. Begin writing 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. and the About page.
  • @ellatrix recently announced that the last GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ release to go into WP 6.6 will have an RCrelease 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). next Friday, May 31.

Forthcoming Releases

Our next major releasemajor release A release, identified by the first two numbers (3.6), which is the focus of a full release cycle and feature development. WordPress uses decimaling count for major release versions, so 2.8, 2.9, 3.0, and 3.1 are sequential and comparable in scope. is WordPress 6.6. See the Roadmap Post for details about what is planned. Also, see the Bug Scrub post for more details on when the 6.6 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 are happening.

@jorbin requested that we discuss the potential of doing a 6.5.4 release to accommodate #61269, and noted:

@hellofromtonya, @costdev and myself have been working through some options to help solve some issues that cropped up from 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 dependencies and are proposing #61269 as a solution that we would like to get in the hands of users as soon as possible.

Our suggestion is that we do a very small focused 6.5.4 on 5 June with an RC on 30 May. I am not currently aware of any other issues but would be open to including other fixes. I know it’s not much time for feedback, but am open to it as far as the schedule goes and also open to other tickets folks want to raise for inclusion.

The feedback that would be most helpful:

  • Testing and review of the proposed 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.
  • feedback on the schedule,
  • proposal of additional issues that should be considered for the release if any

@jorbin also highlighted that we will need someone with MC access, someone with a metaMeta Meta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress. sandbox, someone who can create a helphub page. Please reach out if you can help with any of these tasks.

The next GB release, Gutenberg 18.4, is going out soon and includes these issues. As mentioned during the announcements section of this chat, that means the following GB release (18.5) will be the last one planned to be included in WP 6.6. Now’s a very important time to be testing and reviewing PRs that are being synced from that repo to trunktrunk A directory in Subversion containing the latest development code in preparation for the next major release cycle. If you are running "trunk", then you are on the latest revision..

Discussion

Ahead of the meeting, @annezazu highlighted the following updates on features for 6.6 – please help review and provide feedback as you can!

  • About a 10 minute long video demo of zoomed out view and where things stand, including current challenges with adding it to the pattern insertion experience. As it stands today, it looks like the zoomed out experience to build with patterns won’t be ready but will be an experiment in the plugin.
  • Block bindings latest update including a run down of merged PRs, risks for the release, and next steps. As it stands today, it looks like having the functionality to allow editing of custom fields when connected to blocks will likely not be ready for 6.6.
  • Section styling has a new discussion around CSS specificity which is necessary to resolve for the feature to land. There is potential breakage that might happen with the zero specificity styles and an alternative plan presented to preserve backwards compatibility.

@fabiankaegy and @colorful-tones have been doing great work triaging the WP 6.6 Editor Tasks board as well.

@vcanales mentioned the following issues in the WordPress 6.6 Editor Tasks board that are up for grabs for developers:

Open Floor

@dmsnell mentioned the HTML API: we’re getting nervously close to the deadline but still on task for our two main updates:

  • adding a spec-compliant text decoder
  • refactoring the HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. Processor so that it always presents a normalized “perfect” view of the HTML it’s parsing

@dmsnell mentioned that the best way to support this project is to review the work or share thoughts about how it’s all structured. The WP_Token_Map (Core-60324) is the biggest general thing in view and everyone is invited to share input on it or on the dev note I’ve prepared.

@dmsnell also raised two other tickets:

  • #61009 allows storing the proposed “Bits” syntax, making it possible for experimentation inside Gutenberg.
  • #61052 allows storing custom data attributes containing dashes, which is what the Interactivity APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. relies on.

The first one opens up the ability for Gutenberg to start experimenting with Bits, which are “Shortcodes, 2.0”, or dynamic tokens for externally-sourced data. This could use security review and scrutiny but is quite small in scope. The idea is that these can appear with a name and attributes which denote that something will replace it when rendered, but where Blocks are big, Bits are small, for example:

<//wp:post-meta key="isbn">

The main discussion around this is here.

The second ticketticket Created for both bug reports and feature development on the bug tracker. is about aligning kses with the needs of the Interactivity API. There is more information in this ticket. It would also be helpful to have more eyes and scrutiny on the way that this has been implemented.

For more information about both of these tickets, please read @dmsnell‘s messages during the dev chat from here.

Note: Anyone reading this summary outside of the meeting, please drop a comment in the post summary, if you can/want to help with something.

Props to @joemcgill for proofreading.

#6-6, #core, #dev-chat, #summary

Summary, Dev Chat, May 15, 2024

Start of the meeting in 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/., facilitated by @annezazu. 🔗 Agenda post.

Announcements

A reminder that the WordPress 6.6 roadmap has been published. Please also read and leave feedback on the Server to client data sharing for Script Modules proposal. Feel free to leave feedback either during Dev Chat or on the proposal post.

Forthcoming Releases

We’re currently in the WordPress 6.6 release cycle. You can find out more about the release squad in this post.

@annezazu noted that after a discussion in the public #6-6-release-leads channel, there is an update underway for the remaining roles yet to be filled. This has now been posted here.

For any folks who want to learn more about the release and help contribute back, I want to call attention to this post on Early opportunities to Test WordPress 6.6. Help the release and learn about it at the same time!

Discussion

Release Squad: A lengthy discussion ensued about the fact that 3 weeks from 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. 1 that the full release squad has not been filled. There were questions about why this release has been so hard to fill and what we could do to improve this in the future. Some questioned the size of the release squad making it difficult to fill and others questioned the length of the cycle. Suggestions were made to try to recruit a release squad earlier in the cycle, or even at the end of the previous cycle.

Note: Since the meeting, the WordPress 6.6 release squad is ready.

Canonical 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. plugins proposal: There is an initial issue and discussion here, and a follow-up Gutenberg PR is currently in progress to create a time to read block. Have folks had a chance to catch up here? Any questions or concerns?

  • @jeffpaul questioned what problem this would solve compared with either shipping these blocks in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. or allow them to be maintained as community plugins.
  • @jorbin expressed support for the idea, but identified that there were some questions that need to be answered in addition to what @grantmkin shared in this GitHub comment.
  • @annezazu shared that the difference is useful in that some blocks haven’t been a great fit for Core, for a variety of reasons. This separation allows the base experience to remain the same while offering strong, supported blocks provided by Core that folks can add on.
  • This was a lengthy discussion. Everyone is encouraged to provide feedback on the related issue.

Proposal: Server to client data sharing for Script Modules: This proposal is still looking for feedback.

Open Floor

@kkmuffme requested guidance on several tickets that have stalled, that he is hoping will get picked up in time for the 6.6 release. Following the meeting, @jeffpaul scrubbed the list and pinged relevant core developers who might be able to review and provide feedback.

Note: Anyone reading this summary outside of the meeting, please drop a comment in the post summary, if you can/want to help with something.

Props to @mikachan for proofreading.

#6-6, #core, #dev-chat, #summary

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

Summary, Dev Chat, May 8, 2024

Start of the meeting in 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/., facilitated by @joemcgill. 🔗 Agenda post.

Announcements

The WordPress 6.6 roadmap has been published.

WordPress 6.5.3 was released on Tuesday, May 7. This minor releaseMinor Release A set of releases or versions having the same minor version number may be collectively referred to as .x , for example version 5.2.x to refer to versions 5.2, 5.2.1, 5.2.3, and all other versions in the 5.2 (five dot two) branch of that software. Minor Releases often make improvements to existing features and functionality. features 12 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. fixes in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. and 9 bug fixes for the 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. editor. You can review a summary of the maintenance updates in this release by reading the Release Candidate announcement.

Gutenberg 18.3 was released on Wednesday, May 8. The release highlights include a full page client-side navigation experiment, negative values for margin controls, and adding a publish flow to the editor.

Forthcoming Releases

We are currently in the WordPress 6.6 release cycle and 4 weeks away from 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. 1. The latest update on the release squad is detailed in this post and there are a few TBD roles for Core triagetriage The act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors. and Docs leads. During the meeting, @OGlekler volunteered to be Core Triage Lead for 6.6. @priethor also followed up with a note to say:

  • Would the Core Triage role benefit from a second lead?
  • The Docs lead role is nearly ready too.

@jorbin confirmed that 6.5.3 came out on May 7. Thank you to everyone who helped. We now need to consider whether we should plan a 6.5.4. As of now, there is one potential regressionregression A software bug that breaks or degrades something that previously worked. Regressions are often treated as critical bugs or blockers. Recent regressions may be given higher priorities. A "3.6 regression" would be a bug in 3.6 that worked as intended in 3.5. that is being investigated, so @jorbin suggested that we give it one to two weeks before making a decision. The 6.5.4 milestone has already been added in tracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress..

@annezazu noted that the only other feedback is around this: https://github.com/WordPress/gutenberg/issues/59511: There’s been some feedback from an enterprise client as they can no longer change titles easily. The problem is there’s not an intermediate solution in the works and it will be resolved by 6.6 when the site editor pattern experience comes to classic themes. This will be discussed further in #6-5-release-leads.

Discussion

Here are a couple of follow-ups from previous meetings:

  • New slack channels: #core-interactivity-api was created to help folks working there better organize and collaborate.
  • GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ commits: as a way to bring additional visibility to changes committed in the Gutenberg repo, we’ve started an experiment to show commits to the trunktrunk A directory in Subversion containing the latest development code in preparation for the next major release cycle. If you are running "trunk", then you are on the latest revision. 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". (PR merges) in the #core channel.

We dedicated a lot of discussion time to the 6.6 roadmap and any updates about the major efforts listed on the Roadmap.

@afragen gave an update about Rollback Auto-Update: there have been zero reported issues with the PR. We’re currently just looking at making some of the comments a bit more descriptive. Hopefully Rollback Auto-Update will be committed in the next day or so.

@johnbillion raised #61173: if anyone wants to help with that workflow that would be great.

Open Floor

@azaozz requested for “more eyes” and reviews on https://github.com/WordPress/wordpress-develop/pull/6407#issuecomment-2101275000. This is a PR that properly fixes the infinite loopLoop The Loop is PHP code used by WordPress to display posts. Using The Loop, WordPress processes each post to be displayed on the current page, and formats it according to how it matches specified criteria within The Loop tags. Any HTML or PHP code in the Loop will be processed on each post. https://codex.wordpress.org/The_Loop. as reported on #60652 (the current 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. just hides it, that PR removes the possibility for a loop to happen). It also fixes the possibility for a 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 to completely remove the new font_dir filterFilter 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. which is a pretty nasty thing to do and would break all other plugins that are using that filter.

@kkmuffme requested some final reviews on the following PRs:

@grantmkin also noted: @vcanales and I have started exploring “canonical block plugins,” an idea to have more community developed blocks that are shipped as stand-alone block plugins, for blocks that aren’t a fit in the default block library shipped with Gutenberg/WordPress. The primary issue is at https://github.com/WordPress/gutenberg/issues/58773, in case you’d like to learn more about, follow, discuss, or contribute to the effort. There will likely be a follow-up on make/core to get more feedback.

Note: Anyone reading this summary outside of the meeting, please drop a comment in the post summary, if you can/want to help with something.

Props to @joemcgill for proofreading.

#6-6, #core, #dev-chat, #summary

Performance Chat Summary: 7 May 2024

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

Announcements

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:
    • No updates today, watch out for 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. scrub happening tomorrow

Performance Lab Plugin (and other Performance Plugins)

  • @westonruter I think we’re just about done with the PHPStan level upgrades, going from 0 to 6: https://github.com/WordPress/performance/issues/775 
    • The team continued to discuss the number of levels and also #59653
    • @westonruter It would be great for coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. to adopt it with a populated baseline so that all existing issues are ignored but new issues are reported as they arise
    • @joemcgill The PHPStan work will likely cause bumps to all of our plugins, not just the ones with issues in milestones. Are those going to be reflected in changelogs?
    • @westonruter Yeah, we need to bump the versions. Maybe a general changelog entry for improving code quality?
    • @joemcgill That makes sense, we can even add the overarching ticketticket Created for both bug reports and feature development on the bug tracker. to all the project milestones perhaps?
    • @johnbillion RE PHPStan, core ticket #52217 is about fixing issues it identified, but I would be in favour of a follow-up proposing implementing PHPStan at some level.
    • @westonruter will file a ticket
  • @clarkeemily reminder that the next Performance Lab release is May 20 see https://github.com/WordPress/performance/milestones

Active Priority Projects

Improve template loading

  • @joemcgill three issues remaining in this project, #59595, #59600, and #57789
    • #61112 is related to the above, and looks ready for commit to both GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ and Core. I don’t have commit access to GB but can handle the Core merge
  • @joemcgill All this need to make the same change in both repos seems inefficient to me, and is part of the larger conversation about improving the syncing process from GB > WP-dev repos. I’ve started this thread specifically about improving the way the theme.jsonJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. stuff is managed
    • @joemcgill I think we can handle the isGlobalStylesUserThemeJSON change in a follow-up pending discussion in the GB repo
    • @thekt12 Yes. But do we need to fix inconstancy in core PR now or we should do it after the next GB pr?
    • @joemcgill No, that needs to be fixed when the change in the GB repo is synced to Core. That’s why the inconsistency exists, and highlights the problem with maintaining redundant classes in both repos.
  • @thekt12 working on improvements to #59595

INP research opportunities

  • GitHub tracking issue
  • @adamsilverstein I’ve been working a little on adding instrumentation to the Interactivity APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. in a draft PR

Improving the calculation of image size attributes

  • @joemcgill No changes since last week, but are planning to start development on #GH1187 soon

Optimized autoloaded options

  • @joemcgill Yesterday, I committed r58105, which is a follow-up on our previous autoload options changes
    • As a side effect, it revealed that there are some issues with the way we are collecting performance metrics in the codevitals dashboard that I plan to follow up on later today
    • Also @pbearne and I have been collaborating on 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 r57920, which is close to being ready for review.

Open Floor

  • @mukesh27 Is there any plan to merge https://github.com/WordPress/performance/tree/trunk/includes/site-health/audit-autoloaded-options in core?
    • @spacedmonkey The blockerblocker A bug which is so severe that it blocks a release. for the above was at the lack of action to.
    • it is all well and good highlighting that there are 20 options that are very large, but with no way to fix it, a user it out of luck. I had planned to have a way of changing options to be from being autoloaded or not. Think checkbox and rest apiREST API The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/. to update the row in the database. I haven’t had anytime to look at now I am not sponsored.

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

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

Developer Blog editorial meeting summary, May 2, 2024

Summary of the WordPress Developer Blogblog (versus network, site) meeting, which took place in the  #core-dev-blog channel on the Make WordPress 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/.. Start of the meeting in Slack.

Attendees: @greenshady, @ironnysh, @ndiego, @milana_cap @bph (as facilitator), @bcworkz (async)

Last meeting notes: Developer Blog editorial meeting summary, April 4, 2024

Updates on the site

Congrats to our new contributors to get their Documentation Contributor badges: @jsnajdr @beafialho @magdalenapaciorek @ironnysh @jonsurrell @luisherranz @cbravobernal and @flexseth

Newly published post since the last meeting: 

Since the last meeting, we published articles by new writers and received support from more reviewers. (see above)

Huge Thank you to the writer and reviewers! 

Project Status

The project board for Developer Blog content is on GitHubGitHub 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/.

In Progress:

Post on the To-do-list, assigned to writers.

Topics, approved in in need of a writer

If you are interested in taking on a topic from this list or know someone who would be a good person to write about them, comment on the Issue or pingPing The act of sending a very small amount of data to an end point. Ping is used in computer science to illicit a response from a target server to test it’s connection. Ping is also a term used by Slack users to @ someone or send them a direct message (DM). Users might say something along the lines of “Ping me when the meeting starts.” @bph in slack either in the #core-dev-blog channel or in a DM.

Topics closed

  • Learnings from two Site Migrations After consulting Jasmine, it was clear that her idea wasn’t suitable for the developer blog. I offered to assist her to publish some place else.

New Topics approved

Topics not approved:

There were no clear approval signals, and it seems the topics still need to narrow down the proposal to clear problem statements and suggested solutions. The discussions continue.

Open Floor

Next meeting: Jun 6, 2024, at 13:00 UTC in the #core-dev-blog channel

Props to @greenshady for review of the post.

#meeting, #meta, #summary

Summary, Dev Chat, May 1, 2024

Start of the meeting in 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/., facilitated by @joemcgill. 🔗 Agenda post.

Announcements

The WordPress 6.5 retrospective survey is now closed. Thank you to everyone who responded! Expect a follow-up post with collected, anonymized results once @priethor@marybaum, and @akshayar have finished processing all of the feedback.

GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ 18.2 was released on April 24. Read about what’s new in this release.

The remaining Phase 3 related overview issues were created for folks to join Phase 3: Block LibraryPhase 3: WorkflowsPhase 3: Revisions, and Phase 3: Collaboration index. Thanks to everyone who worked on creating and updating these Phase 3 issues!

Forthcoming Releases

We’re in the 6.6 release cycle. @annezazu shared that the roadmap draft is well underway, and @ella has already created this tracking issue to coordinate PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher backports.

@fabiankaegy noted that it is worth calling out that there are still a few roles that are looking for volunteers. @priethor added: in particular, the CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Triagetriage The act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors. Lead role is the one with the most in need of volunteers. There are a few inexperienced volunteers for the docs lead role, but it would be great if somebody with experience in the role could participate, too. Please reach out to @priethor directly if you have any questions.

A quick update about the next maintenance release, WP 6.5.3. There are currently 3 open trac tickets and 1 Gutenberg ticket left to resolve. A Release Candidaterelease 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). is planned for May 2 at 17:00 UTC, with a tentative release date planned for May 7. There is more information about this release in this post, including 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. scrub schedule and how you can get involved.

A quick reminder that our next Gutenberg release (18.3) is in progress and the Release Candidate is scheduled for May 2.

Discussion

We dedicated the discussion time to revisiting the conversation that was kicked off last week during our announcements related to recent #core-editor conversations about how we can improve how contributors follow along with editor updates and improve communication within the project.

To kick things off, @joemcgill shared some suggestions that @youknowriad posted on the agenda:

I know a lot of Core contributorsCore Contributors Core contributors are those who have worked on a release of WordPress, by creating the functions or finding and patching bugs. These contributions are done through Trac. https://core.trac.wordpress.org. follow core updates by following the commits that happen on the #core slack channel. I believe that we should be doing the same for editor commits. These commits are already shared on slack on #core-editor-commits channel. That would be IMO a great way for core contributors to keep up with what’s happening on the editor side and potentially interact (even on merged PRs like we do for closed tickets on tracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress.) without waiting for the code to reach Core through backports or anything.

I think we can also consider showing these commits directly in the #core channel in Slack like we do for Core commits because in the end, these are core commits too, they just happen on another repository. Today we have between 10 and 20 commits per day, I think that’s an acceptable number that won’t “flood” the channel that much and would bring more visibility.

We discussed that we could experiment with posting commit summaries to the #core channel for a short period of time, such as a few weeks, and evaluate how it works. We also discussed that the commits from Core provide more detailed summaries compared to the commits to trunk on the Gutenberg repo, so this is a potential improvement for the Gutenberg commits. @audrasjb noted the Core handbook link for Commit message best practices.

@joemcgill said that he will follow up on moving this forward this week.

@azaozz noted:

There was another concern in that discussion: many contributors that cannot contribute very regularly are missing when development starts for (major) new features. That results in not being able to start contributing to them in time, or not providing timely feedback, ideas, being able to test different approaches, etc.
One of the ideas how to fix this was to start announcing when new major features development starts in dev. chat (and in the summaries). Seems most/nearly all contributors follow make/core and that would benefit them.

@priethor noted that Dev chat time is not very EU-friendly, asking folks to announce features here can be a big ask depending on the project.

@joemcgill summarised that there are several things to unpack here, primarily:

  1. How can we make it easier for people to contribute to new features
  2. What is the right timing and method for communicating updates at key milestones for a feature (e.g., merges, etc.)

@hellofromtonya suggested: How about a Make/Core post with links to tickets or project board and/or the key labels for tracking?

Open Floor

@afragen gave an update on the Merge Proposal: Rollback Auto-Update, and noted that we haven’t received any issues with testing so @afragen believes that it’s going well and we’re on our way to commit in a week or so. Also, there are 6000+ active users of the feature pluginFeature Plugin A plugin that was created with the intention of eventually being proposed for inclusion in WordPress Core. See Features as Plugins.. Please read the proposal and test the feature plugin in the next week, ideally before the next dev chat.

#6-6, #dev-chat, #summary

Performance Chat Summary: 30 April 2024

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

Announcements

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:
    • @joemcgill For our auto-loading improvents, #42441, I owe @pbearne feedback on a draft of the dev-note (planning to do so this week). I also left some feedback on the follow-up issue (#61045) that needs to be addressed, and then I think that is ready for commit.
      • @pbearne I need feedback on this as I went through coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. and set the autoload for all update_options. If i felt they were adminadmin (and super admin) only options i set them to off
      • @joemcgill I think that’s a useful idea, but we should probably handle that in a separate issue/PR
      • @pbearne in an attempt to reduce options load on the front-end
    • @spacedmonkey I want to try and get https://github.com/WordPress/wordpress-develop/pull/6393 committed in the next couple of days. Just waiting on final feedback from @peterwilsoncc
    • @spacedmonkey also working on https://github.com/WordPress/wordpress-develop/pull/6311. It needs tests.
      • The wp_prime_network_options  function is an example of where it might not have a direct benefit out of the box. It is a developer api and would enable plugins to “do the right thing” I prime multiple networknetwork (versus site, blog) options caches at once.
    • @thekt12 I have started a new PR 6463 for caching #57789 (not ready for review). I was trying to see if we could cache before filterFilter 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. to avoid 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. failures but seems that doing so only give 0.01% improvement.
      • At the moment I am trying to cache inside WP_Theme_JSON_Data::__construct and WP_Theme_JSON::__construct as they are the one with major regressionregression A software bug that breaks or degrades something that previously worked. Regressions are often treated as critical bugs or blockers. Recent regressions may be given higher priorities. A "3.6 regression" would be a bug in 3.6 that worked as intended in 3.5.

Performance Lab Plugin (and other Performance Plugins)

  • @westonruterPR is ready for review which allows performance features to have plugin dependencies. This is needed for Image Prioritizer which depends on Optimization Detective. With this PR merged, the work on Image Prioritizer can press forward full steam.
  • @mukesh27 I worked on Progress indicator is missing when activating a feature and it has been merged! Requires a follow up though from this comment
  • @joemcgill For the 3.1.0 milestone, we have one issue that needs an owner to move forward: https://github.com/WordPress/performance/issues/1032. @westonruter were you planning to pick that up from Felix, or do we need someone else to help move this forward?
  • @westonruter Both Speculative Loading (PR merged) and Optimization Detective (PR pending merge, review please) will be able to be embedded in other plugins or themes to increase adoption. This is more relevant to Optimization Detective since it is lower-level plumbing which optimization plugins can leverage, and Speculative Loading is getting popular.
    • Also for Speculative Loading, there’s a PR open to add a filter for whether speculation rules are printed and default to not printing when the user is logged-in non-admin or PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher session is active. Could use additional eyes to confirm the approach. Should there be a checkbox for whether to enable for logged-in users? Also, perhaps Speculative Loading should add a Site Health check for when PHP sessions are being used on the frontend so a user can be aware why it doesn’t seem to be doing anything?

Active Priority Projects

Improve template loading

  • @joemcgill There are really only three issues remaining in this project, #59595, #59600, and #57789 (which we already discussed and is probably the most important next step).

INP research opportunities

Improving the calculation of image size attributes

  • @joemcgill I spent some time updating the overview issue for Improving Images sizes, and began filling in some details. This project covers two main efforts to improve the way WP calculates sizes:
    • Improving the default sizes algorithm (accounting for layout)
    • Implement the auto-sizes HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. spec (already handed by the auto-sizes plugin)
  • Rather than creating a whole separate performance feature pluginFeature Plugin A plugin that was created with the intention of eventually being proposed for inclusion in WordPress Core. See Features as Plugins. for developing the improvements to the default sizes algorithm, I think it makes sense to combine all of this into the original auto-sizes plugin.
  • In addition, I created an issue to track the work needed to measure and track the impact of these changes, in which I link to the latest data we were able to query from HTTPArchive as a baseline.
  • @joemcgill has assigned one issue to @mukesh27

Optimized autoloaded options

  • Updates covered in WordPress 6.6 item above

Open Floor

  • @mukesh27 Is there any plan to merge https://github.com/WordPress/performance/tree/trunk/includes/site-health/audit-autoloaded-options in core?
    • @spacedmonkey The blockerblocker A bug which is so severe that it blocks a release. for the above was at the lack of action to.
    • it is all well and good highlighting that there are 20 options that are very large, but with no way to fix it, a user it out of luck. I had planned to have a way of changing options to be from being autoloaded or not. Think checkbox and rest apiREST API The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/. to update the row in the database. I haven’t had anytime to look at now I am not sponsored.

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

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

Summary, Dev Chat, April 24, 2024

Start of the meeting in 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/., facilitated by @mikachan.
🔗 Agenda post

Announcements

An update for the 6.6 release squad has been posted, please note that the release squad is looking for one or two CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Triagetriage The act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors. Leads to focus on triaging TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. and a Documentation Lead with previous experience for the role.

Also, a reminder that the WordPress 6.5 retrospective post has been published, please fill in the survey if you would like to leave feedback or suggestions for improvements to the release process. The form and comments will be open until April 26th, 2024

There was also a recent discussion in the #core-editor channel around several topics linked to how we can improve how contributors follow along with editor updates and improve communication within the project. There were several potential actions discussed, including:

  • Create more high-level tracking issues that are not tied to a major releasemajor release A release, identified by the first two numbers (3.6), which is the focus of a full release cycle and feature development. WordPress uses decimaling count for major release versions, so 2.8, 2.9, 3.0, and 3.1 are sequential and comparable in scope..
  • Create Slack channels for high-level features, such as navigation (#feature-website-navigation) and the grid 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. (#feature-grid).
  • Create teams on GitHubGitHub 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/ for high-level features to create an easy point-of-contact and discussion space for these features.

@annezazu called out that she did some recent work cleaning up the GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ repo, which should help with this, including getting high-level overview issues in place for all phase 3 items.

Tied to this, 6.6 is the start of having set iteration labeled issues that are targeted for the release and should make it easier to follow release-specific, in-progress work: https://github.com/WordPress/gutenberg/labels/%5BType%5D%20Iteration

@jorbin suggested a make/core post outlining more specifics about the intended process for the iteration issues, to make sure things stay up to date.

@mikachan believes that a summary post is being written to help summarize the next steps from the discussion that happened over in #core-editor.

@johnbillion and @priethor both expressed concerns about potential siloing if we experiment with adding more feature channels.

Forthcoming releases

Next major release: 6.6

We are currently in the WordPress 6.6 release cycle.

Next maintenance release: 6.5.3

There are currently 15 open tickets in the 6.5.3 release milestone. There is more information about this release in this post, including 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. scrub schedule and how you can get involved.

@jorbin gave the following update:

6.5.3 is still on target for 7 May. Scrubs have been moving things forward. There are a couple of at risk tickets so if you see something towards the bottom of https://core.trac.wordpress.org/tickets/minor/workflow, it would be good to jump in to help.

There are also a few tickets on GitHub so look towards the left there to see tickets you can help move forward https://github.com/orgs/WordPress/projects/186

Next Gutenberg release: 18.2

Gutenberg 18.2 is scheduled for April 24 and will include these issues. During the meeting, @colorful-tones asked for support with a problem encountered while publishing.

Discussion

@peterwilsoncc previously raised that we should consider syncing the editor packages earlier in the release cycle. Could this be attempted for 6.6? Slack reference.

  • This process is documented here, but @youknowriad warned that a lot of that work is also manual for the PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher part and not something that doesn’t have a clear workflow.
  • @johnbillion noted a related issue, #60967, which could help with this process.
  • @joemcgill suggested that we put some focus on reducing friction of the PHP syncing during this release and will follow up with @youknowriad and tech leads @ellatrix, @vcanales, and @audrasjb about some next steps.

@afragen published the Merge Proposal for Rollback Auto-Update and asked for more testing and feedback in order to commit this early during the cycle.

Highlighted posts

The full list of posts from the last week in Core can be read on the agenda at this link.

Open floor

There was no time for the open floor section during this dev chat, but @drivingralle did mention a potential ticketticket Created for both bug reports and feature development on the bug tracker. for 6.6 on the agenda post:

Would be great if ticket #55184 could be included in 6.6.

Props to @mikachan for reviewing.

#6-6, #dev-chat, #summary

Performance Chat Summary: 23 April 2024

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

Announcements

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

Performance Lab Plugin (and other Performance Plugins)

  • @westonruter the Speculative Loading plugin is already at 9000+ active installs! I expect it to tip into the 10k+ range today as the counts have been increasing about 1k per day
    • @joemcgill One of the important things for us to understand with Speculative Loading is what the impacts are on the sites that are using it, that includes performance impact, obviously, but also how it effects things like server resource usage, integration with analytics or other things that may not expect some requests to come from non-users.
    • @westonruter Yes, the readme has been updated to note that. However, people don’t always read the readmes
  • @westonruter planning to kick off the Image Prioritizer plugin this week which will split out the image-specific logic from Optimization Detective, leaving that plugin as an APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. dependency. We can then feature Image Prioritizer in the PL plugin to promote to users.

Active Priority Projects

Improve template loading

  • @joemcgill For the ongoing template loading epic we’ve been working on (https://github.com/WordPress/performance/issues/746) there are 3 main tickets we’re tracking for 6.6:
  • @joemcgill On #59600, I just committed r58025, which covers 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 patterns on Friday. As @thekt12 has looked into improvements for block templates and template parts, it seems that most of the cost is related to the underlying Theme JSONJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. processing, which is covered by #57789
    • @joemcgill did some cleanup, and added some updates to #57789 on that ticketticket Created for both bug reports and feature development on the bug tracker. yesterday
  • @spacedmonkey Is anyone looking into #59596
    • Call file size on every css file results in multiple file operations. Might be a good one to pickup, there is already a PR, should be simple to get across the line.
  • @thekt12 most of this is repeat to what @joemcgill said above-
    • #59600 Performance regressionregression A software bug that breaks or degrades something that previously worked. Regressions are often treated as critical bugs or blockers. Recent regressions may be given higher priorities. A "3.6 regression" would be a bug in 3.6 that worked as intended in 3.5. in block tempalte part was related to get_theme_data ( this will be handled in #57789 )
    • #59595 Current implementation (PR#6392) was found to have benefit but need to resolve circular dependency – a bit complex scenerio (this)
    • #57789 So far we have observed benefits of caching WP_Theme_JSON_Resolver::get_theme_data – I am checking any side effects if we do so.
    • We will be caching WP_Theme_JSON_Resolver::get_core_data data inside WP_Theme_JSON_Resolver::get_merged_data , we believe it will result in 3-4% improvement alone and is not subjected to much change.

INP research opportunities

Improving the calculation of image size attributes

  • @joemcgill noted that he worked with @adamsilverstein and started looking into creating a Colab to capture and compare metrics for this, which is what I’m planning to focus on this week

Optimized autoloaded options

  • @joemcgill I created a follow-up ticket last week to update the default auto load option values that get set by coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. to use the new schema we introduced in #42441@pbearne also started a draft of the dev-note for that change, which I owe a review on.

Open Floor

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

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