Developer Blog editorial meeting summary, March 7, 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, @magdalenapaciorek, @meszarosrob, @ndiego, and @devmuhib

Last meeting notes: Developer Blog editorial meeting summary, February 1, 2024.

Newly published post since the last meeting:

Project Status

Six posts in progress

10 posts on the to-do list

Three posts 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. Alternatively, 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 or @greenshady in Slack either in the #core-dev-blog channel or in a DM.

Posts in need of review

New topics approved

Open floor

There were a few items brought up in the open floor session of the meeting.

@meszarosrob asked if there should be some type of boilerplate for authors who are writing advanced-level tutorials. Specifically, a list of prerequisites to link to for readers that can be reused. There was no overall consensus, particularly given that topics can be wide-ranging that no single list can cover. But it may be worth exploring.

@ndiego proposed adding a description to the Roundup tag (used for What’s new for developers? posts). This was added after the meeting since it was low-hanging fruit.

@greenshady brought up a topic to discuss async since it was the end of the meeting: Should we approve topics without a specific writer already onboard? We’ve had approved topics linger for months when this has happened in the past (and still have a few with no writers).

Props to @bph for reviewing this recap.

#meeting, #summary

Performance Chat Summary: 12 March 2024

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

Announcements

  • Welcome to our new members of #core-performance
  • Reminder on timezone difference for the next 3 weeks, this chat will remain at 16:00 UTC, then it will switch to 15:00 UTC from April 2

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 discussion
  • 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) discussion
  • Active priority projects
    • Plugin checker
    • Improve template loading
    • INP opportunities research

WordPress Performance Trac Tickets

  • For WordPress 6.5:
    • @joemcgill opened #60749
      • @flixos90 asked if this is mostly a memory win?
      • @joemcgill It does seem to be less of an impact on IWT than what I was measuring on Friday. Still not sure what the difference is there, or if there is some caching in play that I had disabled on Friday. Even so, it does make a positive impact and memory consumption can lead to slower IWT. The other place that could use more eyes is trying to identify opportunities to improve the performance of the Navigation 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., which went through a bigger refactor during this release, which is leading to longer rendering times. I don’t think we’ve identified any particular flaw thus far
    • @flixos90 working on the ongoing research on potential 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. that I think is still unresolved [link]
    • @joemcgill will plan on doing another set of benchmarks for 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). 2 once it has been released, and can continue
  • For Future Releases:
    • We already have 16 items in the 6.6 milestone, but it’s a good time for folks to start thinking about what they are wanting to focus on for the next release.

Performance Lab Plugin (and other Performance Plugins)

Active Priority Projects

Plugin Checker

  • Mostly quiet since the 1.0 release. There is the start of a 1.1 milestone, but I think the folks involved in next steps here have been mostly busy with WC Asia and 6.5 release work.

Improve template loading

INP research opportunities

  • @joemcgill Last item in our active priority projects list: INP opportunities research. I believe @adamsilverstein recently did some research on this, but am unsure if there is anything ready to be shared yet. We can pick this up in a future meeting. That is a good reminder to everyone that INP became a CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Web Vital starting today: https://web.dev/blog/inp-cwv-march-12
    • One of our team goals for this year is to find ways to improve WP this metric, so it’s good to keep in mind.

Open Floor

  • @thelovekesh asked Currently when we do a plugin release it triggers two workflows:
    • PL plugin release
    • and Standalone plugin release.
    • Do we always need to trigger the workflow for standalone plugins?
  • @flixos90 By default, new versions of standalone plugins are triggered together with the PL plugin release. Other than that, it would need to be the manual workflow. That’s how it works now. There’s certainly things that can be improved. We need to rethink our release strategy, for instance also whether we want to have releases of the standalone plugins tagged 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 addition, which right now is missing
  • @thelovekesh We might need to streamline release notes for PL and standalone plugins. Currently we are including them for PL plugin. With https://github.com/WordPress/performance/pull/1033, we are attaching all release assets on specific release.
  • @flixos90 Right, the changelog generator also only works for PL right now.
  • @pbearne is working down this list in age order to review/renew [link]
    • @flixos90 I gave your PR for limiting autoloaded options size another review last week, it looks really good, just a few minor things. Have you been able to take a look at that? I’d love to commit this early in the 6.6 cycle
    • @joemcgill Something else that would be helpful is that if you run across an issue that you think should be prioritized because it makes a big impact to improve overall performance for end users, please share it in the channel so we can get more eyes on it and get it into a milestone.
    • @pbearne will start with these tickets 18836 ORDER BY RAND() is slow
      If we can get some modified SQL that works
  • REMINDER: This meeting will continue at 16:00 UTC for the next 3 weeks, then it will switch to 15:00 UTC from April 2 onwards

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

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

Summary, Dev Chat, March 6, 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.

Announcements

WordPress 6.5 RC 1 was released on March 5, 2024. Thanks to everyone involved and those who helped test.

Forthcoming Releases

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.: 6.5

There are several important changes to our normal development process during the 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). stage. For more, see this post: WordPress 6.5 Release Candidate Phase.

Please continue to test the 6.5 release. See this list of key features to test, which was published alongside WP 6.5 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. 3.

During the meeting, @marybaum confirmed the release team for RC2, scheduled for next Tuesday, March 12, 2024. @akshayar will host, @davidbaumwald will run Mission Control (MC), and @audrasjb will be the committercommitter A developer with commit access. WordPress has five lead developers and four permanent core developers with commit access. Additionally, the project usually has a few guest or component committers - a developer receiving commit access, generally for a single release cycle (sometimes renewed) and/or for a specific component. (with @hellofromtonya as a backup).

Next 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: 17.9

Gutenberg 17.9 is scheduled for release on March 13 and will include these issues.

Discussion

The discussion topic for today centered on: how can we make it easier to follow the decision process of major decisions across the project? This was originally raised by @marybaum and there is some background discussion here.

The discussion starts here in Slack. There were no clear next steps identified, but a summary of topics raised include:

  • We could consider having a way to share more regular status updates for primary features in a release in order to surface key decisions, request feedback, get more visibility of concerns raised, etc.
  • When key decisions need to be made, how can we ensure the context is easily accessible?
  • We should be careful about not adding more noise to the CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Team blogblog (versus network, site) during an already busy release period.
  • When key decisions are made, they should be documented in an appropriate place that is easy to reference (e.g., 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/, TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress., Core Team blog, etc.)

Highlighted posts

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

Open floor

Due to time, we did not have time for open floor this week.

Props to @mikachan for reviewing.

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

Performance Chat Summary: 5 March 2024

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

Announcements

  • Welcome to our new members of #core-performance
  • WordCampWordCamp WordCamps are casual, locally-organized conferences covering everything related to WordPress. They're one of the places where the WordPress community comes together to teach one another what they’ve learned throughout the year and share the joy. Learn more. Asia is this week
  • Updated agenda format to match CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. dev chat as suggested in previous chats
  • Reminder on timezone difference for the next 3 weeks, this chat will remain at 16:00 UTC, then it will switch to 15:00 UTC from April 2

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 discussion
  • 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) discussion
  • Active priority projects
    • Plugin checker
    • Improve template loading
    • INP opportunities research

WordPress Performance Trac Tickets

  • For WordPress 6.5:
    • @joemcgill The only open ticketticket Created for both bug reports and feature development on the bug tracker. we still have in the milestone is #60127, which can happen at any time. @thelovekesh was planning on taking a pass at this soon.
      • The only other thing that I think we’ve been aware of is that this release is showing a slightly higher TTFB than 6.4, but we can discuss that in more detail later.
    • @thelovekesh tried to replicate the issue on 6.4 but facing some issues with local setup. Will try to set it up again.
  • For Future Releases:
    • We already have 15 items in the 6.6 milestone, but it’s a good time for folks to start thinking about what they are wanting to focus on for the next release.

Performance Lab Plugin (and other Performance Plugins)

  • @flixos90 There has been a lot of progress on the unbundling of Performance Lab (see overview issue)
  • https://github.com/WordPress/performance/pull/1011 and https://github.com/WordPress/performance/pull/1019 are close to being merged into trunk
  • While that would in principle set us up to ship the 3.0 release, there have been a few conversations on the UXUX User experience of the new screen that deserve more attention. There is a lot to unpack, but it falls into 2 categories at a high level:
    • The migrationMigration Moving the code, database and media files for a website site from one server to another. Most typically done when changing hosting companies. from modules to plugins is a confusing user experience.
    • The PL screen itself, with the plugins and modules to activate, is a confusing user experience.
  • The first point affects a one-time functionality, as it was recently decided that the concept of modules will be permanently removed. In other words, this migration will never need to happen again. As it’s already released and users are already migrating, it is not worth investing time to improve it
  • For the screen itself though, there is things we can do.
    • Most importantly, it would be more intuitive to make the experience about the features, rather than the plugins. As in, each card should describe a feature, instead of focusing on the technicality that it’s a plugin. We shouldn’t pull down .org information, but instead provide more solution driven feature descriptions. Things like the star ratings and other things related to the underlying plugin don’t need to be shown.
      • Under the hood, enabling a feature will still install and activate the corresponding plugin. But that shouldn’t matter for the user, their focus should be on the actual features.
    • We need to think about a better onboarding experience, e.g. a step which allows enabling all recommended features at once. There used to be modules which are activated by default, which is no longer possible now that the features are in the form of standalone plugins. So we need a solution to make that intuitive, which goes hand in hand with a better onboarding experience.
  • @thelovekesh suggested Maybe showing some on-boarding wizard? Where user can select what they want to improve in terms of performance on their site?
    • @flixos90 Potentially. I usually think of multiple steps when I think “onboarding wizard”, so not sure that’s needed here. But at least it would need to be a dedicated screen, or a customized version of the regular
  • @joemcgill I’m definitely in favor of the first point above, and see the second as a “nice to have”. Do we already have a GH issue to track this discussion?
  • The most immediate course of action because of those additional points regarding the Performance Lab plugin unbundling: Because of the additional discussion and engineering required, I think we should postpone the 3.0 release. Hopefully only to April. We need to make sure the UX is good enough before we ship it, but at the same time we want to minimize the time we remain in this limbo where the 2.x 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". and trunk are so diverged, as that complicates shipping potential fixes in the existing code.

Active Priority Projects

Plugin Checker

  • No updates this week

Improve template loading

INP research opportunities

  • No updates this week

Open Floor

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

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

Summary, Dev Chat, February 28, 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/..

Announcements

WordPress 6.5 Beta 3 was released on February 27, 2024. Thanks to everyone involved and who came to help test.

Forthcoming Releases

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.: 6.5

WordPress 6.5 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). 1 is scheduled for next week (see release schedule). A call for testing for 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. 3 was posted earlier today. See: Help test WordPress 6.5 Beta 3.

During open floor, @marybaum asked for confirmation on roles for the release party for next week:

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/: 17.8.0

Gutenberg 17.8.0 released earlier today. The What’s new in Gutenberg 17.8? (28 February) post was published following the meeting.

Discussions

With this being the last Dev Chat before WP 6.5 RC1, the discussion focused on issues related to the release. Specifically, the Font Library, and organizing release squads for 6.6 (and 6.5 minors).

Font Library

This discussion begins here.

@swissspidy noted that some concerns were raised about the upload location, capabilities, and use (or not use) of attachments for storing metadata.

Background conversation starting in Slack, and following on these 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/ issues (props @jorbin):

@youknowriad identified this as the next step:

I’d love if we can get an agreement on this https://github.com/WordPress/gutenberg/issues/59417 at this point it doesn’t seem like a consensus is possible, so I’m unsure how a decision like that is made.

The next step identified in the meeting is for the release tech leads (@davidbaumwald, @swissspidy, @get_dave, and @youknowriad) to make a decision about the next steps for this feature’s inclusion in this release based on the input that has already been given on the relevant tickets.

Organizing release squads for upcoming releases

As we’re nearing the end of the 6.5 release cycle, it’s a good time to start getting squads in place for the 6.6 and 6.5.x releases.

A previous Call for Volunteers was made, which included all three major release for the year. @marybaum volunteered to follow up an help wrangle a followup effort for the 6.6 release cycle.

@jorbin agreed to help identify folks who could help with release responsibilities for 6.5 minor releases, since he’s helped lead the minor releases during the 6.4 cycle.

Highlighted posts

The full list of posts from the last week in coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. can be read on the agenda at this link.

Open floor

See the previous note in Future Releases section about coordinating roles for the RC1 release, that was raised during open floor.

@poena pointed out that we did not discuss one topic on the agenda: “Should we reduce the number of leads?”. @joemcgill agreed to include this discussion in a future meeting agenda.

Following the meeting, @costdev asked for feedback on #60504. Mainly: Whether this is a blockerblocker A bug which is so severe that it blocks a release. and if so, how can we unblock it for the long term?

Props to @mikachan for reviewing.

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

Performance Chat Summary: 27 February 2024

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

Announcements

  • Welcome to our new members of #core-performance
  • WordPress 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. 3 is today
  • Discussion around any WordPress 6.5 tickets [link]
    • 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. for this release were discussed
    • Please check https://github.com/orgs/WordPress/projects/154?query=is%3Aopen+sort%3Aupdated-desc for progress on all dev notes

Priority Projects

Server Response Time

Notes from today’s meeting:

  • @joemcgill #59532 was fixed last week and some 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. improvements were added thanks to @thekt12
  • @thekt12 Working on implementing caching using transient for non-persistant cache website #59719 I have drafted an initial PR for just 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. pattern  PR – https://github.com/WordPress/wordpress-develop/pull/6137
  • @joemcgill The past couple weeks, I’ve been mostly profiling the 6.5 betas against 6.4.3 to see why were are seeing a net server-timing 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 spite of the improvements we’ve made. So far, I haven’t found a clear cause or opportunity to avoid the regression but am continuing to look. More eyes would be helpful for sure.
  • @spacedmonkey There are 1020 matches for register_block_pattern in the 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 repo – https://wpdirectory.net/search/01HQNNQ2VPN4CKBQYKCQEC7Y87

Database Optimization

Notes from today’s meeting:

  • @flixos90 I’m planning to get back to looking at the PR for #42441 later this week

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 the GitHub project board
  • Contributors: @mukesh27 @flixos90 @westonruter @thelovekesh
  • Projects from the 2024 roadmap:
    • INP opportunities research
    • 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.
    • Speculative prerendering
    • Embed Optimizer

Notes from today’s meeting:

  • @westonruter the Embed Optimizer is ready for initial submission to the directory
  • @thelovekesh Web Worker offloading aka Partytown module is ready for final review. Since INP date is coming soon and it provides a good opportunity to offload 3P scripts, I think we can move forward with it

Images

  • Link to the GitHub project board
  • Contributors: @flixos90 @adamsilverstein @joemcgill @westonruter
  • Projects from the 2024 roadmap:
    • Optimization Detective (formerly Image loading optimization)
    • API to facilitate more accurate “sizes” attribute
    • Land AVIF support in coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.
    • Client side image compression

Notes from today’s meeting:

  • @westonruter For Optimization Detective (formerly Image Loading Optimization), this PR needs review: https://github.com/WordPress/performance/pull/988
  • @adamsilverstein AVIF support is landed a while back and the dev note published. also in 6.5 we’ll have progressive image support (which will be mentioned in the field guideField guide The field guide is a type of blogpost published on Make/Core during the release candidate phase of the WordPress release cycle. The field guide generally lists all the dev notes published during the beta cycle. This guide is linked in the about page of the corresponding version of WordPress, in the release post and in the HelpHub version page.)

Measurement

Notes from today’s meeting:

  • @joemcgill The only thing currently in progress related to this is the fixes to the 6.4 performance tests, which @thelovekesh volunteered to work on recently.

Ecosystem Tools

Notes from today’s meeting:

  • @mukesh27 for Creating standalone plugins milestone 2b:
    • PRs that have been merged:
      • PR #999 – Move Auto Sizes plugin assets to plugins folder
      • PR #1014 – Fix unit test for Multisitemultisite Used to describe a WordPress installation with a network of multiple blogs, grouped by sites. This installation type has shared users tables, and creates separate database tables for each blog (wp_posts becomes wp_0_posts). See also network, blog, site
    • PRs ready for Review:
      • PR #1000 – Implement publishing workflow for standalone plugins that aren’t modules
      • PR #1002 – Separate phpcs.xml.dist Files for Each Plugin to Isolate Text Domains
      • PR #1011 – Move published modules to standalone plugins (Another contributor @thelovekesh is working on this)
  • @thelovekesh Aside, I have started a discussion on improving the DX in new monorepo setup – https://github.com/WordPress/performance/issues/1012

Open Floor

  • @pbearne I have been working on the old core performance tickets. Clearing out won’t fix and refreshing the code as needed. if anybody wants me to jump to a later ticketticket Created for both bug reports and feature development on the bug tracker., 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.” me
  • @johnbillion What’s the process for adding the [Focus] ... label to an issue? Is that for categorisation or only for issues that are an active focus for each team?
    • @flixos90 It’s categorization primarily. We have never had anything (at least as far as I remember) that didn’t fit in one of the existing focus groups
    • @joemcgill I believe that they used to align to the original project boards that were set up on the repo, which have evolved over the past few years, so they probably need a refresh at some point. Currently, I agree we’re not really using them for any reason

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

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

Summary, Dev Chat, February 21, 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/..

Curated agenda and facilitation: props to @joemcgill

Announcements

WordPress 6.5 Beta 2 was released on February 20, 2024. Thanks to everyone involved and who came to help test.

Gutenberg 17.8 release is planned for Feb 28, 2024. Please help test.

Forthcoming Releases

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.: 6.5

@marybaum shared that there is a Hallway Hangout planned for the same day as the 6.5 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. 3 release, next week. To help with a smooth release process in order to avoid a scheduling conflictconflict A conflict occurs when a patch changes code that was modified after the patch was created. These patches are considered stale, and will require a refresh of the changes before it can be applied, or the conflicts will need to be resolved., she asked for volunteers for committing and Mission Control (MC). @audrasjb, @swissspidy, @davidbaumwald all agreed to be available with @hellofromtonya saying that she’ll be available to help during RCs

@joemcgill reminded everyone that we are 2 weeks away from 6.5 RC1, and dev-notes should be published as soon as possible to be included in the Field GuideField guide The field guide is a type of blogpost published on Make/Core during the release candidate phase of the WordPress release cycle. The field guide generally lists all the dev notes published during the beta cycle. This guide is linked in the about page of the corresponding version of WordPress, in the release post and in the HelpHub version page..

  • The documentation team has this this project board that is being used to track dev-notes.
  • This report on Trac shows that there are additional tickets marked with needs-dev-note.
  • @swissspidy expressed concern that the process for 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. is not clear this release, which led to some further discussion. @joemcgill pointed out that we should be following the process included in the handbook, or making sure that it is updated to be accurate.

Discussions

Check in on the recent experimental format for Dev Chats, specifically to not share highlighted posts during the meeting and instead focus on discussion of an open proposal. (Slack link)

To summarize the main topics that were raised during that discussion:

  1. Overall, response to the new format is positive.
  2. @jorbin suggested “for Alpha time, it was fantastic. I wonder if it would make sense to move more towards a focus of “How can we help the next release” during beta/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). and then come back to the proposals”.
    • @joemcgill agreed to prioritize release discussion over proposals during the rest of this release cycle.
  3. @joemcgill asked for feedback on how to ensure we’re choosing the most useful topics for discussion
    • @jeffpaul: Seems there’s a backlog of things we could continue to pull from the Community Summit posts?
    • Action: propose a way for us to collect and nominate priorities for future discussions.

If you have additional ideas for topics that should be discussed in future meetings, or ideas for how to better organize/prioritize topics for discussion, please share in the comments.

Highlighted posts

The full list of posts from the last week in coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. can be read on the agenda at this link.

Also, from last week’s agenda, this section provides updates on the core-editor and the Developer blog, including the latest topics that need writers.

Open floor

@costdev provided an update on the 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 feature for 6.5.

Key updates:

  1. Auto-deactivation of plugins with unmet dependencies, all bootstrapping logic, and the plugin_data option have been removed, and Plugin Dependencies now mostly runs on plugins.php and plugin-install.php.
    • This significantly reduces the footprint of Plugin Dependencies, removes the risk of the database and cache becoming out-of-sync on high traffic sites, and resolves a concern about consent-less deactivation of plugins.
  2. An accessibilityAccessibility Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility) issue has been fixed.
  3. Plugin updates on plugins.php were failing due to some JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. that I had not guarded correctly. This has been fixed.
  4. Most of the remaining work is on messaging, and is making steady progress (PRs in re-review stage).

Here’s a summary of where things stand with each ticketticket Created for both bug reports and feature development on the bug tracker., which we’ll also be posting the meeting summary on Make/Core following this evening.

Props to @azaozz for reviewing.

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

Upgrade/Install Chat Summary: 21 February 2024

The full chat log is available beginning here on Slack.

Highlighted Posts

Priority Projects

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

Notes from today’s meeting:

When Plugin Dependencies landed, @costdev posted a comment on the ticket to ask if there are any bugs or enhancements, to open a new ticketticket Created for both bug reports and feature development on the bug tracker.. While this was partially influenced by the sheer size of the original ticket, the main aim was to make sure each issue could be tracked, discussed, investigated and patched more easily. This is a big feature, and we anticipated that increased testing could reveal some additional issues or ideas.

Progress since commit:

Please join the discussion on #60504 to help reach consensus on whether to support Must-Use plugins as dependencies and if so, how best to achieve it.

We’ll also continue working on 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. for Plugin Dependencies to get it ready for review by the Documentation Team ahead of RC1.

Rollback Auto-Update

Notes from today’s meeting:

@afragen reminded everyone that the PR for Rollback Auto-Update (#58281) would benefit from further testing.

Testing instructions can be found in this comment on the ticket.

@costdev proposed that we prepare a post for Make/CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. to outline the feature and draw more feedback and testing.

Our next chat will be held on Wednesday, 28 February 2024 at 18:00 UTC in the #core-upgrade-install channel in Slack.

#core-upgrade-install, #summary, #upgrade-install

Summary, Dev Chat, February 14, 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/..

Curated agenda: props to @webcommsat

Facilitator dev chat: props to @joemcgill

Forthcoming Releases

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.: 6.5

@marybaum made another request this week for contributors to fulfill roles of Mission Control, Committercommitter A developer with commit access. WordPress has five lead developers and four permanent core developers with commit access. Additionally, the project usually has a few guest or component committers - a developer receiving commit access, generally for a single release cycle (sometimes renewed) and/or for a specific component., Security, and MarComms for the release parties.

@webcommsat asked if there was an update on scheduled 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 during the 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. period of 6.5. In the meantime, she marked the current schedule post as sticky as requested by @oglekler.

  • Action: The triagetriage The act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors. leads for 6.5 can update the post with scheduled dates for 6.5

Maintenance releases

There is one ticket in the 6.4.4 milestone that is ready for back-porting. However, @jorbin advised that he does not currently expect another maintenance release before 6.5.

Discussions

Proposal: Implement a PHP autoloader in WordPress Core (Slack link)

To summarize the main topics that were raised during that discussion:

  1. A decision needs to be made about how to handle early loading/overriding of coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. classes. This seems to be the primary concern to address.
  2. There is some concern about the implementation requiring manual updating of the class file, though it’s acknowledged that this change that can be addressed in the future.
  3. A request was made that the previous blocking concerns raised in the original proposal ticket should be summarized and addressed in the new ticket, or the new one closed as duplicate unless there is substantive differences in what is being proposed beyond implementation details.

This will likely need to be included early in a release cycle (WordPress 6.6 at the earliest) and will likely need support of a core committer to help shepherd into the project.

Highlighted posts

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

Also, from last week’s agenda, this section provides updates on the core-editor and the Developer blog, including the latest topics that need writers.

Open floor

@costdev provided an update on the 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 feature for 6.5.

We’ve been triaging and resolving some issues since commit, many of them minor and we’ve discussed some of the larger issues and are on the path to resolving those.

After the meeting concluded, the team published the following post:
Merge Announcement: Plugin Dependencies

Props to @webcommsat for reviewing.

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

Performance Chat Summary: 13 February 2024

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

Announcements

  • Welcome to our new members of #core-performance
  • Release 2.9.0 of 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 is scheduled for Monday February 19
  • Call for opinions on the naming of the ‘Image Loading Optimizations’ plugin [see here]

Priority Projects

Server Response Time

Notes from today’s meeting:

  • @thekt12 This is something I was working on https://github.com/WordPress/wordpress-develop/pull/5941, new changes has caused some test to fail. The issue is with older test cases. I’ll give a final look tomorrow
  • @joemcgill I ran some profiling on the improvements we made to 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. varations (#59969) and am showing that this has made a noticeable reduction to server response times, e.g. ~5-7%
  • @joemcgill Yesterday, I also identified an issue with the new Plugin Dependencies feature that was negatively impacting server timing. #60518 is fixed for 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 and it looks like we’ve mostly recovered from the regressions that were previously discovered, but we’ll take new benchmarks after Beta 1 is released today

Database Optimization

Notes from today’s meeting:

  • No updates this week

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 the GitHub project board
  • Contributors: @mukesh27 @flixos90 @westonruter @thelovekesh
  • Projects from the 2024 roadmap:
    • INP opportunities research
    • 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.
    • Speculative prerendering
    • Embed Optimizer

Notes from today’s meeting:

Images

Notes from today’s meeting:

Measurement

Notes from today’s meeting:

  • @joemcgill Nothing specific to report against those milestones. Now that we’re getting into the part of the release cycle where we’ll be doing lots of benchmarks, I suspect we’ll identify some opportunities to streamline things a bit. I also think that @oandregal was working on some improvements to the GB tests that would have caught some regressions that were not caught until after the sync. I’d be curious to know if there are ways we can support that work for the future?
  • @joemcgill Some initial performance benchmarks for 6.5-beta1 against 6.4.3, for anyone interested:

Ecosystem Tools

  • Link to the GitHub repo for Plugin Checker
  • Contributors: @mukesh27 @swissspidy
  • Projects from the 2024 roadmap:
    • Creating standalone plugins milestone 2
    • Plugin checker
    • Reusable testing environment

Notes from today’s meeting:

Open Floor

  • Suggestion from @joemcgill and @swissspidy to rethink the structure of the chat to align with the Core Dev Chat
    • For the past couple of weeks, the Core Dev-chat has attempted to spend more time synchronously discussing a proposal or pending issue, and having most updates linked in the agenda with the expectation that folks are reading the information ahead of the meeting. So far, it’s led to more engaging chats. Perhaps there are ways to do something similar here?
  • @clarkeemily is away on holiday next week, so @joemcgill will run the chat

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

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