Performance Chat Agenda: 11 April 2023

Here is the agenda for this weekโ€™s performance team meeting scheduled for April 11, 2023 at 15:00 UTC.


This meeting happens in the #core-performance channel. To join the meeting, youโ€™ll need an account on the Make WordPress Slack.

#agenda, #meeting, #performance, #performance-chat

A Week in Core โ€“ April 10, 2023

Welcome back to a new issue of Week in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. Letโ€™s take a look at what changed on TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. between April 4 and April 10, 2023.

  • 21 commits
  • 34 contributors
  • 50 tickets created
  • 8 tickets reopened
  • 55 tickets closed

Ticketticket Created for both bug reports and feature development on the bug tracker.ย numbers are based on theย Trac timeline for the period above. The following is a summary of commits, organized by component and/or focus.

Code changes

Bundled Themes

  • Twenty Twenty-One: Replace include_once with require_once for required classes โ€“ #57839
  • Twenty Twenty-Three: Add style-variations tagtag A directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.) in style.css โ€“ #58110

Coding Standards

  • Correct sprintf() calls for messages in wp-admin/upload.php โ€“ #57839
  • Correct the closing PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher tag placement in some adminadmin (and super admin) files โ€“ #58053
  • Replace include_once with require_once for required files โ€“ #57839
  • Use strict comparison in wp-admin/users.php โ€“ #58040
  • Use strict comparison in wp-admin/users.php โ€“ #58056
  • Use strict comparison where count() is involved โ€“ #57839

Comments

  • Add missing arguments for get_comment_time() in comment_time() โ€“ #58064

Docs

  • Fix a typo in wp-includes/rss.php inline comments โ€“ #57467

External Libraries

  • Update the Requests library to version 2.0.6 โ€“ #58079

General

  • Remove Windows Live Writer manifest file โ€“ #41404

HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. 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.

  • Add has_self_closing_flag() to Tag Processor โ€“ #58009

Help/About

  • Fix the Support Forums URLURL A specific web address of a website or web page on the Internet, such as a websiteโ€™s URL www.wordpress.org in wp-admin/includes/class-wp-site-health.php โ€“ #58052, #57726
  • Use the new /documentation/ URLs for links about WordPress version โ€“ #58052, #57726
  • Use the new /documentation/ URLs for links about WordPress version โ€“ #58052, #57726
  • Use the new /documentation/ URLs in options-permalink.php โ€“ #58052, #57726

I18Ni18n Internationalization, or the act of writing and preparing code to be fully translatable into other languages. Also see localization. Often written with a lowercase i so it is not confused with a lowercase L or the numeral 1. Often an acquired skill.

  • Correct translator comments placement in wp-admin/edit-comments.php โ€“ #57839

Networks and Sites

  • Fix incorrect color for Theme enabling admin notices โ€“ #58096

Script Loader

  • Remove unused wp-nux CSSCSS Cascading Style Sheets. dependency โ€“ #57827, #57643

Upgrade/Install

  • Include the removed Windows Live Writer manifest in $_old_files โ€“ #41404

Props

Thanks to the 34 people who contributed to WordPress Core on Trac last week: @sergeybiryukov (5), @audrasjb (4), @sabernhardt (3), @costdev (2), @wildworks (2), @faisalahammad (2), @afercia (2), @flixos90 (2), @ocean90 (2), @lanacodes (1), @peterwilsoncc (1), @joostdevalk (1), @moinrrahmed (1), @ayeshrajans (1), @jhabdas (1), @Frank-Klein (1), @wtranch (1), @dmsnell (1), @youknowriad (1), @tmatsuur (1), @jrf (1), @johnbillion (1), @ugyensupport (1), @wpfy (1), @chiragrathod103 (1), @dhrumilk (1), @marineevain (1), @kausaralm (1), @poena (1), @aristath (1), @mukesh27 (1), @kafleg (1), @nithins53 (1), and @zieladam (1).

Congrats and welcome to our 3 new contributors of the week:ย @moinrrahmed, @marineevain, @kausaralm โ™ฅ๏ธ

Core committers: @sergeybiryukov (10), @audrasjb (9), @peterwilsoncc (1), and @bernhard-reiter (1).

#6-3-2, #core, #week-in-core

X-post: Introducing the Advanced Administration handbook

X-comment from +make.wordpress.org/docs: Comment on Introducing the Advanced Administration handbook

Editor chat summary: Wednesday, 5th April 2023

This post summarizes the latest weekly Editor meeting (agenda, slack transcript), held in the #core-editor 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/ channel, on Wednesday, April 05, 2023, 14:00 UTC.

General Updates

Async key project updates

Read the latest updates directly from the following tracking issues:

Task Coordination

@alexstine

Could use a 2nd technical review on PR attempt to removeย aria-hidden="true"ย from the links in the list view

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.

Read complete transcript

#core-editor-summary, #gutenberg, #meeting-notes, #summary

Preparing for the Next Women & Nonbinary Release Squad

Now that weโ€™ve shipped WordPress 6.2 โ€œDolphy,โ€ itโ€™s time for a little planning for the other major releases this year. Volunteers are needed for the WordPress 6.3 squad (release target mid-July), especially those willing to dedicate time toward mentoring the next round of squad members. I would like to propose that WordPress 6.4 be run entirely by a women and nonbinary squad, a reprise of theย historic WordPress 5.6 release, โ€œSimoneโ€, and training cohorts offered during 6.3 are an excellent opportunity for new contributors to prepare for the 6.4 release.

Important Note: I short-hand the release to โ€œwomen and nonbinaryโ€ for easy referencing in our day-to-day collaboration, but the release squad will be open to anyone who identifies as a woman, nonbinary, or gender-expansive. All contributions are welcome as always, regardless of how you identify or what groups you feel part of. ๐Ÿ™‚

Whatโ€™s the Goal?

The primary goal of any release cycle is to ship a stable and enhanced version of the WordPress CMS that ships in scope and on time. The release date for WordPress 6.4 is tentatively slated for November, with the exact dates determined as the 6.3 timeline and the 6.4 release squad is confirmed.

Having a release squad comprised of folx we donโ€™t typically see in technology also has a goal of increasing the number of underrepresented people who have experience maintaining, managing, and shipping software in an open sourceOpen Source Open Source denotes software for which the original source code is made freely available and may be redistributed and modified. Open Source **must be** delivered via a licensing model, see GPL. project. All contributions to the release and release process are welcome.

Whatโ€™s the Plan?

I would like to repeat the process we used leading up to WordPress 5.6, with some slight modifications. The WordPress 5.6 release squad had the opportunity to learn the 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. cycle process by acting as understudies to the folx that lead the WordPress 5.5 release. The 5.6 squad was able to progressively level up their skills by watching how the 5.5 squad worked, assisting on things while guided by 5.5 leads, and finally leading a 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. with assistance where needed.

  1. Prepare and Plan
    1. Gather nominations for the 6.4 team and ensure the 6.3 and 6.4 release timing works for each. Participation in 6.3 is optional, but it has been successful when others tried the process before leading the process.
    2. Confirm volunteersโ€™ alignment to release squad roles.
    3. Identify additional volunteers for any remaining release squad roles.
    4. Gather mentors for each release squad group.
  2. Join Release 6.3
    1. Join meetings, triagetriage The act of evaluating and sorting bug reports, in order to decide priority, severity, and other factors. sessions, etc., and ask questions in the public #6-3-release-leads channel to feel comfortable heading into the 6.4 release.
  3. Navigate Release 6.3.x
    1. Collaborate with the 6.3 release squad to navigate aย point 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.ย and ask every question.
  4. Drive Release 6.4
    1. Drive the release while collaborating with some established women and nonbinary contributors as well as the 6.3 mentors.

How Can You Help?

If you would like to learn more about what participating in a release this way would mean (or want to volunteer right away!), please leave a comment letting me know. You can also feel free to DM me or any of these original supporters of WP5.6: @francina @jeffpaul @desrosj. Weโ€™re interested to hear from:

  • Anyone who wants to be a part of the WP6.4 release process.
  • Anyone who wants to be a mentor leading up to or during WP6.4
  • Anyone who has questions about how this will work. ๐Ÿ™‚

Props to the following editors and co-creators of this post: @jeffpaul @cbringmann @daisyo @ironprogrammer @bph @desrosj @priethor

#6-3, #6-4, #planning

Dev Chat Summary, April 5, 2023

The WordPress Developers Chat meeting took place on April 5, 2023 at 20:00 UTC in the core channel of Make WordPress Slack.

Key Links

Announcements

  • WordPress 6.2 โ€œDolphyโ€ was released last week: https://wordpress.org/news/2023/03/dolphy/
  • Gutenberg 15.5 was released today: https://make.wordpress.org/core/2023/04/05/whats-new-in-gutenberg-15-5-05-april/

Highlighted Posts

Between March 20 and April 3, 2023, work in TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. included:

  • 38 commits
  • 76 contributors
  • 120 tickets created
  • 19 tickets reopened
  • 86 tickets closed
  • and 8 new contributors! ๐ŸŽ‰
  • Preferred Languages: Help test the latest version: https://make.wordpress.org/core/2023/04/03/preferred-languages-help-test-the-latest-version/
  • WordPress 6.2 Performance improvements for all themes: https://make.wordpress.org/core/2023/04/05/wordpress-6-2-performance-improvements-for-all-themes/
  • Proposal: The Interactivity API โ€“ A better developer experience in building interactive blocks: https://make.wordpress.org/core/2023/03/30/proposal-the-interactivity-api-a-better-developer-experience-in-building-interactive-blocks/

Release Updates

  • 6.3 alpha is underway, with a focus onย early tickets.
    • 6.3 development cycle: https://make.wordpress.org/core/6-3/
    • early tickets report: https://core.trac.wordpress.org/tickets/early
  • 6.2.1 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. timing discussions are happening in theย #6-2-release-leads channel.
    • Trac tickets in this minor milestone are at https://core.trac.wordpress.org/tickets/minor/workflow
    • Also see Gutenbergโ€™s โ€œPunted to 6.2.1โ€ column: https://github.com/orgs/WordPress/projects/63

Maintainers: Component Help Requests

@afragen shared the Call for Testing for Plugin Dependencies. @pbiron mentioned that feedback about the UXUX User experience is mostly needed and should be added to the post, but that non-UX feedback should be added to ticket #22316.

Open Floor

6.3 early Tickets

@hellofromtonya referred to the handful of current 6.3 early tickets, and asked that anyone with time consider contributing to these.

@howdy_mcgee asked about Trac tickets #24142 and #18408, which relate to WP_Query updates, and if they should be considered early. @hellofromtonya agreed and added the early keyword to both, explaining WP_Query changes should be done early to allow sufficient time for feedback and testing. @howdy_mcgee expressed interest in writing tests for the 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. in #18408 and asked others to DM with suggestions on where to start.

About Page: โ€œGet Involvedโ€ Improvements

@oglekler raised Trac ticket #23348, which could add a new menu item and/or tab that better represents each Make WordPress team and opportunities to contribute. @hellofromtonya suggested adding the needs-design keyword to start with the design phase, and after a design was established, code work could start. @oglekler added that Marketing could contribute toward the content. Both agreed that this update could be a starting point for new contributors to get involved. @hellofromtonya also suggested that due to the age of the ticketticket Created for both bug reports and feature development on the bug tracker., updating the current proposal could help move it forward.

Promoting WordPress Mobile Apps

@oglekler also brought attention to Trac ticket #56277, which would promote the WordPress Mobile app from the adminadmin (and super admin) dashboard. @oglekler noted that the #mobile channel recently agreed to author a new post explaining the current status of WordPressโ€™s mobile apps and how the widgetWidget A WordPress Widget is a small block that performs a specific function. You can add these widgets in sidebars also known as widget-ready areas on your web page. WordPress widgets were originally created to provide a simple and easy-to-use way of giving design and structure control of the WordPress theme to the user. could help promote them. In response, @hellofromtonya suggested getting feedback on the idea first, and then design proposals would follow.

WordPress PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher 8+ โ€œ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. Supportโ€

@ipajen asked if there had been any discussion about removing the beta support for PHP 8.x in WordPress. @hellofromtonya noted that she and @jrf had a recent call about it, and proposed laying out whatโ€™s needed to remove the โ€œbetaโ€ compatible label for each PHP 8.x version. @hellofromtonya mentioned that very low code coverage and a low percentage of sites running on these PHP versions makes it difficult to know whether WordPress CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. itself is fully compatible or not.

@hellofromtonya shared that some other criteria, like having at least 10% of sites running on PHP 8.x, with all reported issues on that version fixed, could be a method to determine removal of the โ€œbeta supportโ€ label. Current stats show only PHP 8.0โ€™s usage exceeds that threshold (PHP 8.0 reflects 12.5% usage). @hellofromtonya shared a link to open PHP 8.x tickets in Trac, as there are additional compatibilities to be discussed and solved, including named parameters, magic methods and dynamic properties, type validation, etc.

[Editorโ€™s Note] This topic went into โ€œovertimeโ€ following the official Dev Chat time constraints, and that dialog is provided here:

@ipajen expressed hopes that PHP 8.0 could be officially supported soon, and asked if WordPress Tide should be considered under the compatibility criteria for WordPress. @hellofromtonya pointed out that Tide is separate from WordPress Core, so is not a blockerblocker A bug which is so severe that it blocks a release. toward removing the โ€œbeta supportโ€ label, but agreed that it would be great for Tide to add support for PHP 8.1 and 8.2.

@hellofromtonya further shared her opinion that the beta label could be removed once there was consensus on the previously mentioned criteria and named parameters discussions, and that further dialog on these should be conducted on Trac or in a Make/Core post.

@pbiron asked @hellofromtonya if Trac tickets marked php8 applied to all PHP 8+ items, or were specific to version 8.0. Further discussion involving @sergeybiryukov and @ipajen lead to consensus that renaming php8 to php80 would disambiguate the keywordโ€™s use, as it has until this point been used specifically for PHP 8.0. @ipajen further suggested that with this change in place, issues affecting multiple PHP 8 versions could be tagged with each version impacted, presumably for easier searching/filtering in Trac.

Next Meeting

The next meeting will be on April 12, 2023 at 20:00 UTC.

Are you interested in helping draft Dev Chat summaries? Volunteer at the start of the next meeting on the #core Slack channel.

Props @davidbaumwald, @costdev, and @hellofromtonya for peer review of this summary, and to everyone who contributed in todayโ€™s Dev Chat.

#6-3, #6-2, #dev-chat, #meeting, #summary

Whatโ€™s new in Gutenberg 15.5? (05 April)

โ€œWhatโ€™s new in 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/โ€ฆโ€ posts (labeled with the #gutenberg-new tag) are posted following every Gutenberg release on a biweekly basis, showcasing new features included in each release. As a reminder, hereโ€™s an overview of different ways to keep up with Gutenberg and the Site Editor project (formerly called Full Site Editing).

Decorative image that reads: "What's new in Gutenberg 15.5"

Gutenberg 15.5 has been released and is available for download!

The latest release brings many user-facing features to improve the creation experience, such as caption styles customization and theme-defined template patterns when adding a new template. Theme creators should enjoy testing the experimental grid layout and template locking support for the Columns 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.. There are many features to cover in this release, so letโ€™s dive right in.

Table of contents

Patterns as template starters

Gutenberg 14.9 added template types support to the Patterns 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.. However, this was only an under-the-hood change, laying the groundwork for future iterations. Version 15.2 introduced a new modal when adding new templates in the Site Editor for users. It only provided two choices: to use a fallback template or start from a blank slate.

In the latest release, those two concepts have been merged to allow users to build a new template from theme-registered template patterns. Theme authors can register custom patterns meant for specific template types (e.g., single post, 404, etc.), and they will appear in the start modal.

WordPress site editor when creating a new 404 template. It shows a grid of patterns to select from.

Style captions via the Styles interface

For a while now, theme authors have been able to create custom styles for <caption> elements directly via theme.json. The latest Gutenberg update brings those design options to the Styles interface, allowing creators and users to customize captions without touching code.

Two images of architecture with captions on the right. To the left is the Styles interface for configuring caption styles.

Experimental grid layout support

Gutenberg 15.5 introduces a new grid layout type. This is still in an early stage and currently only supports a setting for the minimum column width, but it defines the foundation for more configuration options going forward. Theme authors should start testing this now and provide feedback on use cases they envision.

The only coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. block to support the grid layout is Group, and this support is currently marked as experimental. To test it, visit Gutenberg > Experiments screen in the WordPress adminadmin (and super admin) and enable the Grid variation for Group block option.

A 4-column grid with two rows of architecture images. Overlaid is the current Grid layout options from the block editor.

Other Notable Highlights

There is now a Post Modified Date variation for the Post Date block. It allows users to display the postโ€™s most recent updated date.

WordPress post title and meta with title and a last modified date. Overlaid is the block editor settings for using either the published or modified date.

Gutenberg 15.3 introduced a Time to Read block for showing the number of estimated minutes it takes to read a post. The latest update adds spacing and typography support to the block, rounding out its design tools set.

The core Columns block now supports template locking, the Image size setting for the Image block has been renamed to Resolution, and the Media & Text blockโ€™s alignment is set to โ€œnoneโ€ by default.

Change log

Enhancements

Block Library

  • Add Post Date block variation for Post Modified Date. (49111)
  • Add typography support to time to read block. (49257)
  • Allow the time to read block to be inserted multiple times. (49253)
  • Image Block: Donโ€™t render if there is no URLURL A specific web address of a website or web page on the Internet, such as a websiteโ€™s URL www.wordpress.org set. (45220)
  • Media & Text: Switch default alignment to none. (48404)
  • Update alternative text labels and help text. (49416)
  • Navigation Submenu: Refactor to use the block supports function. (48936)
  • Replace โ€œImage sizeโ€ with โ€œResolutionโ€ in image size controls. (49112)
  • Update Gallery block to use consistent 40px components. (49101)
  • columns block: Add support for templateLock attribute. (49132)

Components

  • FormTokenField: Add prop to remove bottom margin. (48609)
  • ImageSizeControl: Remove the โ€œImage Dimensionsโ€ label. (49414)
  • ImageSizeControl: Use large 40px sizes. (49113)
  • Tooltip: Refine existing tests. (48397)
  • Update tests from fireEvent to userEvent. (44952)
  • CustomGradientPicker: Improve initial state UIUI User interface. (49146)
  • Storybook: Declare stylesheet dependencies explicitly. (49099)
  • AnglePickerControl: Style to better fit in narrow contexts and improve RTL layout. (49046)

Design Tools

  • Add spacing tools to time to read block. (49392)
  • Position Panel: Open by default if a position type is set. (49151)
  • Revert: Make sticky block action on template part block. (49219)
  • Sticky Position: Add a โ€œMake stickyโ€ action to the Template Part block. (49085)

Testing

  • Adds focus management test for entity undo. (49236)
  • Adds navigation submenu tests. (49351)
  • Cover block: Add integration tests. (45409)
  • test: Expand mobile end-to-end test helpers. (48978)

Layout

  • Make grid layout Group variation an experiment. (49359)
  • Try adding a grid layout type. (49018)

Icons

  • Add unseen icon to library. (49254)

Plugins API

  • Plugins: Refactor the โ€˜PluginAreaโ€™ component to use the sync store. (49220)

Global Styles

  • Add: Story for the full global styles UI. (49031)
  • Caption element UI controls for color and typography. (49141)

Block Editor

  • Rich text: Only consider a format active if active at every selected index. (48789)
  • Update border color on color panel items. (42283)
  • i18ni18n Internationalization, or the act of writing and preparing code to be fully translatable into other languages. Also see localization. Often written with a lowercase i so it is not confused with a lowercase L or the numeral 1. Often an acquired skill.: Add context to labels related to CSSCSS Cascading Style Sheets. position properties. (49135)

Site Editor

  • Add: Patterns to the template start modal. (47322)

List View

  • Allow the component to show a custom โ€œmoreโ€ menu. (48097)

Block API

  • Block.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.: Refactor and stabilize selectors API. (46496)

Bug Fixes

Block Editor

  • BlockHTML: Use correct type when setting โ€˜htmlHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers.โ€™ state onBlur. (49191)
  • Duotone: Pass filters to the Post Editor. (49239)
  • Duotone: Use WP_Theme_JSON_Resolver_Gutenberg instead of WP_Theme_JSON_Resolver. (49199)
  • Fix typo (overriden -> overridden). (48711)
  • Writing flow: Prevent default browser behaviour on input when editable. (49370)
  • Fix onHover error on patterns tab in mobile. (49450)

General Interface

  • Invalidinvalid A resolution on the bug tracker (and generally common in software development, sometimes also notabug) that indicates the ticket is not a bug, is a support request, or is generally invalid. Page address displayed when a future page is first scheduled. (49092)

Patterns

  • Block patterns: Use WP_Theme_JSON_Resolver_Gutenberg instead of WP_Theme_JSON_Resolver. (49197)

Block Library

  • Buttons: Disable edit as HTML support. (49097)
  • Fix center alignment on the dropdown in the categories block. (44013)
  • Fix sprintf() arguments. (49439)
  • Fix: Navigation block width constricted on large viewports. (49302)
  • Group Block: Allow blocks to be dragged onto it in its placeholder state. (49361)
  • Group: Fix the โ€˜double divโ€™ deprecation โ€˜templateLock โ€˜ attribute. (49250)
  • Group: Fix the โ€˜templateLockโ€™ attribute type in deprecations. (49205)
  • Navigation: Fix 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. in calculating the active menu item. (49195)
  • Post excerptExcerpt An excerpt is the description of the blog post or page that will by default show on the blog archive page, in search results (SERPs), and on social media. With an SEO plugin, the excerpt may also be in that pluginโ€™s metabox.: Fix 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 error and other misc. bug fixes. (48730)
  • Query 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: Constraint list item(li) styles to the direct children of the main list. (49303)
  • Query Loop: Show Featured ImageFeatured image A featured image is the main image used on your blog archive page and is pulled when the post or page is shared on social media. The image can be used to display in widget areas on your site or in a summary list of posts. placeholders in all posts. (49301)
  • Query Title: Changes filters for removing archive title prefixes. (49306)
  • Quote: Disable edit as HTML support. (49426)
  • Revert โ€œMake sure the directly inserted block in the Nav block is a Page linkโ€. (49126)
  • Search block: Fix overflow width. (49192)
  • Changes image size description, as it causes confusion. (48478)
  • Post Excerpt Block: Fix unexpected commas in certain site languages. (49123)

Components

  • CircularOptionPicker: Force swatches to visually render on top of the rest of the componentโ€™s content. (49245)
  • Fix TabPanel initial rendering. (49368)
  • Fix misaligned textarea input control. (49116)
  • LineHeightControl: Make spin buttons adjust from placeholder value. (49150)
  • ToolsPanel: Make menu item order consistent for SlotFill use cases. (49222)

Layout

  • Fix unstableDisableLayoutClassNames in Group block. (49385)
  • Get orientation for Spacer block from parent layout. (49322)
  • Remove inner wrapper for grid Groups in classic themes. (49387)

Post Editor

  • Fix breaking distraction free. (49317)
  • Post Lock: Fix the avatarAvatar An avatar is an image or illustration that specifically refers to a character that represents an online user. Itโ€™s usually a square box that appears next to the userโ€™s name. position. (49421)

Site Editor

  • Fix site editor redirection after creating new template or template part. (49364)
  • Show the created template title in success notice and not the slug. (49366)
  • Template parts: Use WP_Theme_JSON_Resolver_Gutenberg instead of WP_Theme_JSON_Resolver. (49198)
  • Fix typo in utils.js. (49178)

Media

  • Image: Donโ€™t create an external image โ€˜blobโ€™ when a user canโ€™t upload files. (49300)
  • MediaReplaceFlow: Check permissions before displaying the โ€˜Media Libraryโ€™ menu item. (49298)

Global Styles

  • Selectors API: Fix for global styles hook, style variations, and duotone. (49393)
  • Fix typo for the word accross. (49295)
  • Duotone: Limit SVG 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. output to used filters. (49103)
  • Selectors API: Make duotone selectors fallback and be scoped. (49423)

List View

  • Show close button in List View on mobile. (49200)
  • Add private appender prop. (49137)

History

  • Bring back revisionsRevisions The WordPress revisions system stores a record of each saved draft or published update. The revision system allows you to see what changes were made in each revision by dragging a slider (or using the Next/Previous buttons). The display indicates what has changed in each revision. button for template parts. (49163)

Data Layer

  • useSelect: Incrementally subscribe to stores when first selected from. (47243)
  • Data: Refuse to register an already registered store. (49134)

Tools

  • babel-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.-makepot: Fix non-existing translationtranslation The process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. handling. (49431)

Navigation

  • Fix fallback not rendering. (49431)

Performance

Post Editor

  • Avoid UI shifting when selecting blocks. (47177)
  • Lodash: Remove _.groupBy() from buildTermsTree() in editor. (49224)

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 by the repository owner. https://github.com/ Actions

  • Fix performance testing themes installation. (49063)
  • Speed up npm ci by caching node_modules. (45932)

Testings

  • Fix running performance tests locally via CLICLI Command Line Interface. Terminal (Bash) in Mac, Command Prompt in Windows, or WP-CLI for WordPress.. (49068)
  • Refactor performance tests artifacts handling. (48684)

Babel Preset

  • Polyfills: Exclude web.immediate. (49234)

Experiments

Navigation Screen

  • Remove โ€˜edit-navigationโ€™ package leftovers. (49183)

Documentation

  • Add a missing filter documentation. (44342)
  • Add missing pseudo-selectors to theme.json schema and documentation. (49202)
  • Add readme.txt FAQ entry for filing security bugs. (49148)
  • Adds issue template for the plugin release process. (49345)
  • Adds message about usage of block-editor components. (49400)
  • Block Editor Handbook: Improved the readability and phrasing and corrected mistakes. (48756)
  • Docs: Fix incorrect import of apiFetch. (49432)
  • Docs: Put more structure to Architecture page. (49184)
  • Fix failing CI documentation check. (49378)
  • Fix/missing template headerHeader The header of your site is typically the first thing people will experience. The masthead or header art located across the top of your page is part of the look and feel of your website. It can influence a visitorโ€™s opinion about your content and you/ your organizationโ€™s brand. It may also look different on different screen sizes.. (49348)
  • FlexItem: Fix typo line 19 of README. (49284)
  • Mention โ€œtestsPortโ€ .wp-env.json setting. (49388)
  • Remove errant line break in versions-and-building documentation. (49353)
  • Theme JSON schema: Add defaultPresets property to shadow. (49204)
  • Theme JSON schema: Add position.sticky and dimensions.minHeight properties to settings. (49335)
  • Update @api-fetch README.md with query args. (49318)
  • Update README.md for wordpress/element. createRoot not available until WordPress 6.2. (49309)
  • docs: Update end-to-end test device documentation. (49441)

Code Quality

Components

  • Animate: Refactor to TypeScript. (49243)
  • ColorPicker: TypeScript refactor. (49214)
  • CustomGradientPicker: Refactor to TypeScript. (48929)
  • DuotonePicker, DuotoneSwatch: Convert to TypeScript. (49060)
  • GradientPicker: Refactor to TypeScript. (48316)

Block Library

  • Home Link Block: Remove leading spaces in class names. (49397)
  • Add column-gap and row-gap as allowed CSS properties for compatibility with WP 6.0. (49118)

Block Editor

  • Duotone: Remove Safari rerender hack. (49232)
  • Replace regex with tagtag A directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.) processor for duotone class render. (49212)
  • Use immutableSet utility to set style properties. (49365)

Plugins API

  • Plugins: Add unit tests for the โ€˜PluginAreaโ€™ component. (49138)

Global Styles

  • Extract a ColorPanel component as a reusable component between Global Styles and Block Inspector. (48893)
  • Lodash: Refactor away from _.groupBy() from compileCSS(). (49227)

Webfonts

  • Tests: Fix typos in fonts API. (47288)

Compose

  • Refactor useMediaQuery with useSyncExternalStore. (48973)

Patterns

  • Add gutenberg_get_remote_theme_patterns function. (49307)

Element

  • Element: Narrow createInterpolateElement param type. (49182)

Tools

Testing

  • Fix flaky Site Editor title end-to-end tests. (49203)
  • Upgrade Playwright to 1.32. (49296)

Build Tooling

  • Upgrade wp-prettier to 2.8.5. (49258)

First time contributors

The following PRs were merged by first time contributors:

Contributors

The following contributors merged PRs in this release: @aaronrobertshaw @ajlende @andrewserong @aristath @brookewp @carolinan @chad1008 @ciampo @corentin-gautier @dcalhoun @draganescu @ellatrix @enderandpeter @felixarntz @fluiddot @glendaviesnz @gziolo @hareesh-pillai @helgatheviking @janboddez @jeryj @jhnstn @johnbillion @jorgefilipecosta @jsnajdr @kevin940726 @madhusudhand @MaggieCabrera @Mamaduka @mburridge @mirka @ntsekouras @oandregal @renintw @richiecarey @richtabor @ryanwelcher @scruffian @sgomes @shreyasikhar @SiobhyB @Soean @sque89 @stokesman @t-hamano @talldan @tellthemachines @tomdevisser @tyxla @WunderBart @youknowriad @ZebulanStanphill

Props to @welcher for co-managing this release and @jameskoster for the release assets.

#block-editor, #core-editor, #gutenberg, #gutenberg-new

Performance Chat Summary: 4 April 2023

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

Announcements

  • 2.2.0 release date will be Mon April 17

Priority Projects

Server Response Time

Link to roadmap projects

Contributors: @joemcgill @spacedmonkey @aristath

  • @aristath shared an update ahead of time:
    • Autoloader: Work continues onย https://github.com/WordPress/wordpress-develop/pull/3470ย to add a PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher autoloader in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. The results so far are encouraging and all tests (both manual and automated) has shown that performance is better and there are no apparent drawbacks. There are still a few minor things to polish, but itโ€™s looking good so far.
    • L10nL10n Localization, or the act of translating code into one's own language. Also see internationalization. Often written with an uppercase L so it is not confused with the capital letter i or the numeral 1. WordPress has a capable and dynamic group of polyglots who take WordPress to more than 70 different locales.: Experimenting with different approaches and methods to refactor the way localization works in WP, in collaboration with @sergeybiryukov, @afercia and @poena. Still in the early stages of exploration, trying to find ways and methods to make the process more performant.
  • @joemcgill One thing that I wanted to bring up, wasย this postย by @swisspidyย about the new translations functionality heโ€™s been working on. He has specifically asked for some performance help in that post, and I think itโ€™s something that our team should take a look at. In the server timing research that I have been doing, I have found that processing translations can be a performance bottleneck for classic themes, specifically, so it would be nice if we could both help with this effort and improve performance overall for translated sites.

Database Optimization

Link to roadmap projects

Contributors: @aristath @spacedmonkey @olliejones @rjasdfiii

JavaScriptJavaScript JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a userโ€™s browser. https://www.javascript.com & CSSCSS Cascading Style Sheets.

Link to roadmap project

Contributors: @mukesh27 @10upsimon @adamsilverstein

  • @10upsimon for Enhancing the Scriptsย 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.ย with a loading strategy
    • All work is now contained within our base feature 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".
    • An holistic code review process is underway, where weโ€™re going over all code contributed as part of this work and reviewing it in a single PR against 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.
    • Functional testing to follow on from the code review completion
    • Inline documentation review will follow from that

Images

Link to roadmap projects

Contributors: @flixos90 @thekt12 @adamsilverstein @joemcgill

  • @flixos90 No major updates from my side, still working on assessing the best path forward for enhancing the lazy-loading logic in core, which will also benefitย fetchpriority. I feel Iโ€™m close to opening TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. tickets, but also noting that Iโ€™ll be AFK next week, so itโ€™ll probably only in ~2 weeks from now

Measurement

Link to roadmap projects

Contributors: @adamsilverstein @olliejones @joemcgill @mukesh27

  • @mukesh27 No major updates, @joemcgill I and started brainstorm on next step for Automated Performance Tests

Ecosystem Tools

Link to roadmap projects

Contributors: @joegrainger

  • @joegrainger We have completed the initial infrastructure for 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. and have moved onto testing!ย This week we have started reviewing the infrastructure holistically and begun QA testing. Once testing is complete we will start work improving upon the initial architecture and moving towards building out the additional checks. Progress can be seen on theย GitHubย here. As always, feel free to take a look and leave any thoughts/ideas you may have in the repo. Thanks!

Creating Standalone Plugins

Link to GitHub overview issue

Contributors: @flixos90 @mukesh27 @10upsimon

  • @mukesh27 We finished engineering forย Milestone 1ย tasks and allย PRs in final review. If anyone has some capacity please review. We are plaining to release our first WebP Uploads plugin soon.
  • @flixos90 +1, if we can get those final PRs merged tomorrow, the idea would be to publish the WebP Uploads standalone plugin on Thursday with the new automated workflow (which deploys the plugin based on the same codebase that the module uses)
    • Hopefully that all works out. Once the plugin is successfully released, we can proceed with the other ones (Dominant Color, Fetchpriority), and last but not least unify the currently 2 codebases from the SQLite plugin

New Projects / Proposals

  • No updates

Open Floor

  • No updates

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

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

WordPress 6.2 Performance improvements for all themes

With the latest WordPress release out in the world, this post seeks to recap the performance improvements available for all sites. According to this analysis done by @flixos90 that youโ€™re encouraged to dig into, WordPress 6.2 loads 14-18% faster for blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. themes and 2-5% faster for classic themes. Server-side performance is seeing a major boost of 17-23% for block themes and 3-5% for classic themes. These changes demonstrate WordPressโ€™s continued commitment to ensuring that websites built on the platform are optimized for performance.

This builds on efforts done in the past that you can read about in the following posts: Need for Page/Post Speed and Performance Matters.

Thank you to @oandregal and @flixos90 for collaborating on this post!

Whatโ€™s changed

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. APIs

Leading up to WordPress 6.2, theme.json related code received more performance related attention partially thanks to an understanding that this newer configuration file has an important role to play in the future of themes. This work aimed to improve Time To First Byte (TTFB), a metric related to server-side performance. It focused on three aspects:

According to this analysis, caching wp_get_global_settings had the most impact in the release, improving classic themes by 9% and block themes by 24%. For context, while wp_get_global_settings was introduced in WordPress 5.9, itโ€™s usage expanded to cover many more use cases, including querying data for rendering front-end blocks. As a result, it benefitted immensely from caching the response.

Lazy-loading images for block themes

While Time To First Byte (TTFB) was a big focus of the 6.2 release, there was also a major change to Largest Contentful Paint, the main user-perceived performance metric: the first image or iframeiframe iFrame is an acronym for an inline frame. An iFrame is used inside a webpage to load another HTML document and render it. This HTML document may also contain JavaScript and/or CSS which is loaded at the time when iframe tag is parsed by the userโ€™s browser. of the post will no longer be lazy loaded for block themes.

As a reminder, lazy-loading images landed in WordPress 5.5. After an analysis reported that lazy loading images above the fold negatively impacted user-perceived performance, a fix landed in WordPress 5.9 with WordPress 6.2 following up to ensure block themes wonโ€™t lazy load the first image or iframe.

Front-end metrics

Outside of the work done to directly improve performance, there was also a focus on making front-end metrics readily available to all. The aim being to ensure developers have the necessary information to make new features performant and catch regressions earlier, all aiding in creating performant future major releases. All Pull Requests in the Gutenberg and wordpress-develop repositories now include front-end performance information. This information is also reported in the following places for a more comprehensive look:

  • The Gutenberg dashboard now collects a number of front-end metrics:
    • Largest Contentful Paint (LCP): tracks the overall user-perceived performance.
    • Time To First Byte (TTFB): tracks server-side performance.
    • LCP-TTFB: tracks client-side performance.
  • There is a new WordPress core dashboard that reports the following server-side metrics:
    • Total: tracks server-side performance. Equivalent to TTFB in 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/ dashboard.
    • Before template: tracks the time it takes to dispatch the template_redirect hook.
    • Template: the difference between total time and the time it took to dispatch the tempate_redirect hook.

Get involved

If youโ€™re interested in working on improving performance across the project, make sure to join #core-editor, #core-performance, and attend meetings for both.ย 

These โ€œCoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. Editor Improvementโ€ฆโ€ posts (labeled with the #core-editor-improvement tagtag A directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.)) are a series dedicated to highlighting various new features, improvements, and more from Core Editor related projects.ย 

#block-themes, #core-editor-improvement, #performance, #themes

Two Weeks in Core โ€“ April 3, 2023

Welcome back to a new issue of Week in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress.. Letโ€™s take a look at what changed on TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress. between March 20 and April 3, 2023. Sorry for not being able to publish a post last week, this one will cover two weeks!

  • 38 commits
  • 76 contributors
  • 120 tickets created
  • 19 tickets reopened
  • 86 tickets closed

Ticketticket Created for both bug reports and feature development on the bug tracker.ย numbers are based on theย Trac timeline for the period above. The following is a summary of commits, organized by component and/or focus.

Code changes

Administration

  • Update dashboard welcome panel colors, remove broken link โ€“ #57759

Build/Test Tools

  • Fix issue with add method in object-cache.php โ€“ #57963
  • Add a@ticketreference forwp_list_pages()CSSCSS Cascading Style Sheets. classes test โ€“ #57841
  • Consistently sanitize expiration in the test suiteโ€™s Memcached implementation โ€“ #57841, #57963
  • Fix tests introduced in [55612] โ€“ #57814
  • Improveget_pages()tests organization โ€“ #57841
  • Movewp_dropdown_pages()tests to their own file โ€“ #57841
  • Move thewp_list_pages()test for CSS classes to a more appropriate place โ€“ #57841
  • Rename test class and improve tests for wp_get_global_stylesheet() โ€“ #57841, #57958
  • Split the tests frompost/template.phpinto individual test classes โ€“ #57841

Code Modernization

  • Fix dynamic properties in WP_Admin_Bar โ€“ #56876, #56034

Coding Standards

  • Apply various alignment corrections fromcomposer formatโ€“ #57994
  • Correct the closing PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher tagtag A directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.) placement in some adminadmin (and super admin) files โ€“ #58053
  • Escape some variables inwp-admin/includes/nav-menu.phpโ€“ #57110
  • Escape the whole attributes inwp-admin/includes/nav-menu.phpโ€“ #57110
  • Remove unused variable inWP_Plugins_List_Table::single_row()โ€“ #55132
  • Use strict comparison inwp-admin/includes/nav-menu.phpโ€“ #57318
  • Use strict comparison inwp-admin/includes/user.phpโ€“ #57317
  • Use the correct variable โ€“ #57318

Comments

  • Use correct escaping function inget_cancel_comment_reply_link()โ€“ #58025
  • Use wp_cache_get_multiple inWP_Comment_Queryโ€“ #57803

Date/Time

Docs

  • Add missing@returntag forWP_Automatic_Updater::is_disabled()โ€“ #57680
  • Clarify the::hide_process_failed()return value in 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 theme installer โ€“ #57680
  • Document default values for optional parameters inwp_insert_attachment()โ€“ #58043
  • Use typed array notation forsearch_columnsinWP_Query::parse_query()โ€“ #57996

Editor

  • Update wordpress packages for 6.2 RC3 โ€“ #57471, #57929

General

  • Remove Windows Live Writer manifest file โ€“ #41404

HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. 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.

  • Addhas_self_closing_flag()to Tag Processor โ€“ #58009

Help/About

  • Add 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. link โ€“ #57998
  • Make Field Guide link translatable โ€“ #57477
  • Updates to About page โ€“ #57477

Login and Registration

Options, 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. APIs

  • Improve the lazy loading meta API to include current object id โ€“ #57901

Posts, Post Types

  • Use WP_Query internally in get_pages โ€“ #12821

Script Loader

  • Return early in _wp_theme_json_webfonts_handler if 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. not present โ€“ #57814

Upgrade/Install

  • Include the removed Windows Live Writer manifest in$_old_filesโ€“ #41404

Props

Thanks to the 76 people who contributed to WordPress Core on Trac last week: @sergeybiryukov (9), @spacedmonkey (6), @costdev (6), @hellofromTonya (6), @jrf (5), @mukesh27 (4), @flixos90 (4), @peterwilsoncc (4), @audrasjb (3), @desrosj (3), @ocean90 (3), @patelmohip (2), @jenilk (2), @johnbillion (2), @sabernhardt (2), @davidbaumwald (2), @laurlittle (2), @richtabor (2), @akmelias (2), @sakibmd (2), @ankitmaru (1), @wlindley (1), @ayeshrajans (1), @azouamauriac (1), @mikeschinkel (1), @nacin (1), @scribu (1), @filosofo (1), @jane (1), @garyc40 (1), @markoheijnen (1), @grandslambert (1), @kevinB (1), @dbernar1 (1), @ryokuhi (1), @atimmer (1), @mdawaffe (1), @helen (1), @benjibee (1), @joemcgill (1), @andraganescu (1), @get_dave (1), @mamaduka (1), @ntsekouras (1), @scruffian (1), @talldanwp (1), @jhabdas (1), @ironprogrammer (1), @tillkruess (1), @francina (1), @chintan1896 (1), @zenaulislam (1), @javiercasares (1), @oglekler (1), @clorith (1), @eboxnet (1), @wpfy (1), @vladytimy (1), @reputeinfosystems (1), @Rarst (1), @priethor (1), @nekojonez (1), @markjaquith (1), @codingchicken (1), @cbringmann (1), @tmatsuur (1), @joostdevalk (1), @faisalahammad (1), @zieladam (1), @dmsnell (1), @wtranch (1), @polevaultweb (1), @azaozz (1), @Frank Klein (1), @antonvlasenko (1), and @thomask (1).

Congrats and welcome to our 8 new contributors of the week:ย @patelmohip, @akmelias, @wlindley, @grandslambert, @benjibee, @wpfy, @reputeinfosystems, @wtranch โ™ฅ๏ธ

Core committers: @sergeybiryukov (20), @spacedmonkey (6), @hellofromtonya (6), @audrasjb (2), @ryelle (2), @bernhard-reiter (1), and @dd32 (1).

#6-2, #core, #week-in-core