Dev Chat Agenda for July 21, 2021

Here is the agenda for this week’s developer meeting to occur at July 21, 2021 at 20:00 UTC.

Blogblog (versus network, site) Post Highlights

5.8 Schedule Review

Components check-in and status updates

  • Check-in with each component for status updates.
  • Poll for components that need assistance.

Open Floor

Do you have something to propose for the agenda, or a specific item relevant to the usual agenda items above?

Please leave a comment, and say whether or not you’ll be in the chat, so the group can either give you the floor or bring up your topic for you accordingly.

This meeting happens in the #core channel. To join the meeting, you’ll need an account on the Making WordPress Slack.

#5-8, #agenda, #core, #dev-chat

A Week in Core – July 19, 2021

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 July 12 and July 19, 2021.

  • 37 commits
  • 35 contributors
  • 53 tickets created
  • 15 tickets reopened
  • 51 tickets closed

Please note that WordPress 5.8 will be released tomorrow on Tuesday July 20, 2021 🌟

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

Application Passwords

  • Improve various user-facing and developer-facing terminology – #53503, #53691

Build/Test Tools

  • Update the caniuse browser data and regenerate CSSCSS Cascading Style Sheets.#53277
  • Clean up skipping conditions and requirements for various tests – #53009
  • Correct the test for autosaving a post with Ajax – #53363
  • Replace assertContains() with assertStringContainsString() when used with strings – #53363, #46149
  • Require the WP_REST_Test_Controller class in WP_REST_Controller tests – #53363
  • Reset $current_screen global between tests to avoid cross-test interdependencies – #53431
  • Use more appropriate assertions in rest_sanitize_request_arg() tests – #53363
  • Use more appropriate assertions in various tests – #53123, #53363
  • Use more appropriate assertions in various tests – #53363
  • Use more appropriate assertions in various tests – #53363
  • Use more appropriate assertions in various tests – #53363
  • Use more appropriate assertions in various tests – #53363
  • Use more appropriate assertions in various tests – #53363
  • Use more appropriate assertions in various tests – #53363
  • Use more appropriate assertions in various tests – #53363

Bundled Themes

  • Revert the [51372] update 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. patterns in bundled themes – #53617

Coding Standards

CustomizerCustomizer Tool built into WordPress core that hooks into most modern themes. You can use it to preview and modify many of your site’s appearance settings.

  • Don’t always set normalizedTransitionendEventName to null#53562

Documentation

  • Correct documentation for wp_get_post_parent_id()#53399
  • Synchronize the $post_id argument description for some post and attachment functions – #53399
  • Various documentation fixes following [51129]#44314

Editor

  • Second round of package updates ahead of RC3
  • Backportbackport A port is when code from one branch (or trunk) is merged into another branch or trunk. Some changes in WordPress point releases are the result of backporting code from trunk to the release branch. fixes targetted for WordPress 5.8 RC4 – #53397
  • Include the fixes targetted for WordPress 5.8 RC3 – #53397

Help/About

  • Update the About page for 5.8 – #52775
  • Update the About section for 5.8 – #52775

Media

  • Document edge cases with the new image_editor_output_format 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.#5366, #53668, #35725
  • Fix JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. error in Media Library when infinite scroll enabled – #53672
  • When resizing WebP images set the compression to “lossy” by default. Fixes a 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. where the compression was set to “lossless” when the uploaded WebP images have extended file format (VP8X) – #53653

Privacy

  • Ensure the copy button actually copies the suggested privacy policy text – #53652, #52891

Upgrade/Install

  • Add additional files to $_old_files for 5.8 – #53367

Widgets

  • Prevent widgets unintentionally being moved to the inactive sidebarSidebar A sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme.#53657
  • Replace wp.editor references in the legacy text 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.#53437
  • Use wp_sidebar_description() to retrieve a sidebar’s description#53646
  • Validate HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. before saving block widgets

Props

Thanks to the 35 people who contributed to WordPress Core on Trac last week: @desrosj (6), @SergeyBiryukov (4), @jrf (3), @peterwilsoncc (3), @hellofromTonya (3), @adamsilverstein (2), @javiarce (2), @talldanwp (2), @zieladam (2), @timothyblynjacobs (2), @mikeschroder (2), @antpb (1), @denisco (1), @milana_cap (1), @karmatosed (1), @audrasjb (1), @nao (1), @kevin940726 (1), @noisysocks (1), @jorbin (1), @johnbillion (1), @mukesh27 (1), @kapilpaul (1), @youknowriad (1), @ianmjones (1), @mcsf (1), @get_dave (1), @ellatrix (1), @walbo (1), @dd32 (1), @htmgarcia (1), @linux4me2 (1), @mmxxi (1), @wildworks (1), and @spacedmonkey (1).

Congrats and welcome to our 3 new contributors of the week! @htmgarcia, @linux4me2, and @mmxxi ♥️

Core committers: @sergeybiryukov (16), @desrosj (12), @youknowriad (2), @ryelle (2), @johnbillion (1), @joedolson (1), @azaozz (1), @mikeschroder (1), and @peterwilsoncc (1).

#5-8, #week-in-core

WordPress 5.8 Release Day Process

We’re less than 24 hours away from WordPress 5.8! If you would like to help with the final steps of the release, here is how you can join in.

The current plan is to start the release process at Tuesday, July 20, 2021 1500 UTC in the #core 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.

The major version release process can take a bit more time than the Betas or Release Candidates do, particularly if we run into any last minute issues that need to be addressed.

The Release Process

We will be working through the Major Version Release process for anyone who wants to follow along. Earlier today the pre-final release dry run was coordinated in #core (Slack archive).

How You Can Help

A key part of the release process is checking that the ZIP packages work on all the different server configurations available. If you have some of the less commonly used servers available for testing (IIS, in particular), that would be super helpful. Servers running older versions of PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher and MySQLMySQL MySQL is a relational database management system. A database is a structured collection of data where content, configuration and other options are stored. https://www.mysql.com/. will also need testing.

There are two ways to help test the package:

  • Use WP-CLIWP-CLI WP-CLI is the Command Line Interface for WordPress, used to do administrative and development tasks in a programmatic way. The project page is http://wp-cli.org/ https://make.wordpress.org/cli/ to test: wp core update https://wordpress.org/wordpress-5.8.zip
  • Directly download 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./RC version (e.g., https://wordpress.org/wordpress-5.8.zip)

In particular, testing the following types of installs and updates would be much appreciated:

  • Does a new WordPress install work correctly? This includes running through the manual install process, as well as WP-CLI or one-click installers.
  • Test upgrading from 4.0.33, 4.9.18, 5.7.2, and 5.8 RC 4 as well as any other versions possible
  • Remove wp-config.php file and test fresh install
  • Test single site and 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/networknetwork (versus site, blog) (both subdirectory and subdomain) installs
  • Does it upgrade correctly? Are the files listed in $_old_files removed when you upgrade?
  • Does Multisite upgrade properly?

Finally the following user flows, on desktop and mobile, would be great to validate work as expected:

  • Publish a post, including a variety of different blocks.
  • Comment on the post.
  • Install a new 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/theme, or upgrade an existing one.
  • Change the site language.
  • If you’re a plugin developer, or if there are complex plugins you depend upon, test that they’re working correctly.

You can even start this early, by running the WordPress 5.8 RC4 packages, which are built using the same method as the final packages.

#5-8, #release-process

WordPress 5.8 Release Candidate 4

In preparation for the final release of WordPress 5.8 on July 20, 2021, an RC 4 has been packaged and released to fix some late-discovered blocking issues. The following changes have been made since RC 3:

  • BlockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. Editor: Backportbackport A port is when code from one branch (or trunk) is merged into another branch or trunk. Some changes in WordPress point releases are the result of backporting code from trunk to the release branch. fixes targeted for WordPress 5.8 RC4 ([51445] for #53397).
  • Media: When resizing, WebP images set the compression to “lossy” by default. It Fixes a 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. where the compression was set to “lossless” when the uploaded WebP images have extended file format (VP8X) ([51437] for #53653).
  • Media: Fix JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. error in Media Library when infinite scroll enabled ([51441] for #53672).
  • Media: Document edge cases with the new image_editor_output_format 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. ([51444] for #53667, #53668, #35725).
  • Privacy: Ensure the copy button actually copies the suggested privacy policy text ([51433] for #53652).
  • Widgets: Prevent widgets unintentionally being moved to the inactive sidebarSidebar A sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme. ([51439] for #53657).
Continue reading

#5-8

Dev Chat Agenda for July 14, 2021

Here is the agenda for this week’s developer meeting to occur at July 14, 2021 at 20:00 UTC.

Blogblog (versus network, site) Post Highlights

5.8 Schedule Review

  • RC 2 released last week and RC 3 yesterday, now under hard string freeze
  • Email to 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/theme authors on 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. went out last week
  • No further 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 scheduled, so please highlight issues of concern directly in #core
  • 5.8 release in SIX days on Tuesday, July 20th

Components check-in and status updates

  • 5.8 plans and help needed
  • Check-in with each component for status updates.
  • Poll for components that need assistance.

Open Floor

Do you have something to propose for the agenda, or a specific item relevant to the usual agenda items above?

Please leave a comment, and say whether or not you’ll be in the chat, so the group can either give you the floor or bring up your topic for you accordingly.

This meeting happens in the #core channel. To join the meeting, you’ll need an account on the Making WordPress Slack.

#5-8, #agenda, #dev-chat

A Week in Core – July 12, 2021

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 July 5 and July 12, 2021.

  • 49 commits
  • 44 contributors
  • 67 tickets created
  • 28 tickets reopened
  • 62 tickets closed

Please note that the WordPress Core team released WordPress 5.8 RC 2 last week. Everyone is welcome to help testing the 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. of WordPress 🌟

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

Build/Test Tools

  • Add assertions to ensure version-controlled files are not modified during CI, and fix the grunt clean command – #53606
  • Replace assertInternalType() usage in unit tests – #53491, #46149
  • Use caching built into actions/setup-node#53584
  • Add missed file update in [51370]#53497
  • Expand tests for get_block_editor_settings()#53458
  • Move loading compatibility layers for PHPUnit 6+ and 7.5+ closer together – #53363
  • Update the wp-api-generated.js fixture – #53606
  • Use more appropriate assertions in various tests – #53123, #53363
  • Use more appropriate assertions in various tests – #53363
  • Use more appropriate assertions in various tests – #53363
  • Use more appropriate assertions in various tests – #53363
  • Use more appropriate assertions in various tests – #53363
  • Use more appropriate assertions in various tests – #53363

Bundled Themes

  • Correct customzier typo – #53598
  • Correct comment formatting in inc/block-patterns.php#53359, #52627
  • Update 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. patterns to match the latest versions of core/* blocks – #53617
  • Remove inline comment that is not relevant in WordPress Core – #53576
  • Remove mention of “FSE” in Core – #53497
  • Twenty Fifteen: Use strict comparison in inc/custom-header.php#53359

Coding Standards

  • Only check collation in wpdb methods if the query is not empty – #53635
  • Add missing semicolon to endforeach keywords in media templates – #46103
  • Fix WPCSWordPress Coding Standards A collection of PHP_CodeSniffer rules (sniffs) to validate code developed for WordPress. It ensures code quality and adherence to coding conventions, especially the official standards for WordPress Core. issue in [51404]#53363
  • Fix WPCS issues in [51367]#53363
  • Remove wrapping HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. tags from translatable strings – #53359
  • Rename the $ID variable to $user_id in wp_insert_user() and wp_update_user()#53359

CustomizerCustomizer Tool built into WordPress core that hooks into most modern themes. You can use it to preview and modify many of your site’s appearance settings.

  • Skip animations when they have no duration – #53562, #53542

Documentation

  • Correct the @since 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.) for the user_erasure_fulfillment_email_headers 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.#44314, #53461
  • Miscellaneous docblockdocblock (phpdoc, xref, inline docs) improvements – #53399
  • Some documentation improvements for wp_check_widget_editor_deps()#53437, #53569
  • Update the IRCIRC Internet Relay Chat, a network where users can have conversations online. IRC channels are used widely by open source projects, and by WordPress. The primary WordPress channels are #wordpress and #wordpress-dev, on irc.freenode.net. link from Freenode to Libera.chat – #53590

Editor

  • Merge conflicting wp.editor objects into single, non-conflicting object – #53437
  • Fix for 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.: color.duotone and spacing.units should allow empty sets – #53175
  • Update packages with latest fixes for 5.8 RC2 – #53397
  • Update packages with latest fixes for 5.8 RC2 – #53397
  • TinyMCE: ensure initialization runs in all cases on ‘interactive’ and ‘complete’ readyState. Fixes a rare 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. when the init code is inserted in the DOM after the page has finished loading – #53632

Help/About

  • Update placeholder links on About page – #52775
  • Update the About section for 5.8 – #52775

Internationalization

  • Correct recurring lenghts typo – #53600
  • Translate _doing_it_wrong() messages in wp_check_widget_editor_deps()#53437, #53569

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

  • Log error/warnings/notices from ms-files.php#53493

Posts

  • Allow the list of wrapper blocks to be filtered – #53604
  • Fix Spelling in inline docsinline docs (phpdoc, docblock, xref)[23105], [51375], #53604
  • Prevent an empty 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. when groups and nested column blocks are present – #53604

REST APIREST API The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/.

  • Add the $request parameter to methods checking permissions – #53593
  • Ensure a sidebarSidebar A sidebar in WordPress is referred to a widget-ready area used by WordPress themes to display information that is not a part of the main content. It is not always a vertical column on the side. It can be a horizontal rectangle below or above the content area, footer, header, or any where in the theme.’s widgets property is a list – #53612

Script Loader

  • Update jQuery version to 3.6.0 following the update in [50520]#52707

Users

  • Return earlier from wp_update_user() in case of error – #53627

Widgets

  • Use wp_sidebar_description() to retrieve a sidebar’s description#53646

Widgets

  • Warn when wp-editor script or wp-edit-post style is enqueued in widgets editor – #53437, #53569

Props

Thanks to the 44 people who contributed to WordPress Core on Trac last week: @audrasjb (4), @SergeyBiryukov (4), @desrosj (4), @aristath (3), @zieladam (3), @johnbillion (2), @ntsekouras (2), @jorbin (2), @nosolosw (2), @andraganescu (2), @TimothyBlynJacobs (2), @spacedmonkey (2), @timothyblynjacobs (2), @sabernhardt (2), @kapilpaul (2), @jrf (2), @isabel_brison (1), @johnjamesjacoby (1), @pbearne (1), @empatogen (1), @gziolo (1), @mikaelmayer (1), @spytzo (1), @hellofromTonya (1), @alanjacobmathew (1), @ryokuhi (1), @javiarce (1), @kellychoffman (1), @chanthaboune (1), @stevehenty (1), @iandunn (1), @peterwilsoncc (1), @kevin940726 (1), @felipeelia (1), @Collizo4sky (1), @walbo (1), @azaozz (1), @youknowriad (1), @vishitshah (1), @dlh (1), @mukesh27 (1), @nielslange (1), @mikeschroder (1), and @dd32 (1).

Congrats and welcome to our 2 new contributors of the week! @mikaelmayer and @spytzo ♥️

Core committers: @sergeybiryukov (19), @desrosj (13), @johnbillion (3), @noisysocks (2), @jorbin (2), @ryelle (2), @azaozz (1), @mikeschroder (1), @jorgefilipecosta (1), @ocean90 (1), @timothyblynjacobs (1), @peterwilsoncc (1), @iandunn (1), and @youknowriad (1).

#5-8, #week-in-core

Miscellaneous block editor API additions in WordPress 5.8

WordPress 5.8 brings several additions and tweaks to the blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. editor 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..

Contextual patterns for easier creation and block transformations

We’ve all been there. Staring at a blank page sometimes with an idea of what you want to create; often with a mind as blank as the page. To make the creation process easier, there is now a way to suggest patterns based on the block being used. This is now implemented for the Query block and includes some coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. patterns to start with.

In addition, there is an API to suggest pattern transformations that are contextual to the currently selected blocks. So how this is different to the patterns current behaviour? Previously, patterns insert demo content that must be updated after insertion. With this feature, it’s possible to use some patterns and retain existing attributes or content.

So it’s for existing blocks!

An important thing to note here is that a pattern transform can result to adding more blocks than the ones currently selected. You can see this with an example like the below where we have a Quote block but the pattern consist of more blocks:

This is the first iteration of the feature that covers most simple blocks (without innerBlocks). A new experimental API has been created where we can mark what block attributes count as content attributes. You can see more details in the PR.

In the long run as this work continues and spreads to more blocks, it will be easier to create content and get inspired without leaving the editor.

Pattern Registration API

if you’re creating your own custom block patterns, there’s a new blockTypes property that will allow your patterns to show up in other contexts like the transform menu. blockTypes property is an array containing the block names.

/register_block_pattern(
     'heading-example',
     array(
         'title'         => __( 'Black heading' ),
         'categories'    => array( 'text' ),
         'blockTypes'    => array( 'core/heading' ),
         'viewportWidth' => 500,
         'content'       => ' <!-- wp:heading {"level":3,"backgroundColor":"black","textColor":"white"} -->
    <h3 class="has-white-color has-black-background-color has-text-color has-background">Demo heading</h3>
<!-- /wp:heading -->',
     )
 );

To learn more about block patterns, see this WordPress News article: So you want to make block patterns.

BlockControls group prop

In WordPress 5.8, core blocks toolbars have been updated and made more consistent across blocks by splitting them into 4 areas like shown in the following screenshot.

To do so a new group prop has been added to the wp.blockEditor.BlockControls component. Third-party block authors are encourage to use this prop in their block code to follow the core blocks design pattern.

<BlockControls group="block">
    <ToolbarButton onClick={ doSomething }>{ __( 'My button' ) }</ToolbarButton>
</BlockControls>

#5-8, #core-editor, #dev-notes

Dev Chat summary, July 7, 2021

With just two weeks left in the 5.8 release cycle, @jeffpaul led the devchat on this agenda.

Announcements

RC 2 has landed! And it needs you, to help test it in as many ways as possible and chase down any last-minute bugs. For details, check out the RC 2 release post here.

As it happens, @desrosj reported in and said the release is in great shape:

The milestone only has three 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. tickets remaining that may require changes (excluding release related task tickets and two tickets needing only to be backported). We are in great shape heading into RC3 and final release. 

@desrosj

Blogblog (versus network, site) Post Highlights

In the afternoon chat, @jeffpaul led off with the RC 2 release post above, and it is indeed worth a second read, if you’re so inclined.

Other posts of note:

The 5.8 Field Guide is out. Docs lead @milana_cap has done a masterful job of pulling it all together. So if you’re getting a theme or a pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party ready for 5.8, the Guide is your most reliable source of timely, topical information on the changes that will affect your products and the processes you use to get them out the door.

Catch up on the latest feedback the Full Site Editing crew has received with this post from @annezazu. And while we’re at it, here’s the FSE team’s latest chat summary.

And @audrasjb is back with another Week in Core, celebrating 52 contributors (five who are brand-new!) and nine committers who got things going this week.

@jeffpaul thanked the authors and everyone who commented or otherwise helped share news or knowledge this past week and shared this reminder:

We are now in the RC period. That means we’re in a hard string freeze, and the final planned 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)., RC 3, is now just FIVE days away, on July 13. The 5.8 release is TWELVE days away, on July 20.

(Ed. note: Where has the year gone?)

With no seemingly urgent business connected to the release (see @desrosj on the state of the milestone, above) @jeffpaul referred the group to a post from @mapk on care and influence in the WordPress community.

Components check-in

@sergeybiryukov reported in on Build/Test Tools. Referring the community to this ticket on PHPUnit 8.x, he described the challenges that come with adding support for PHPUnit 8.x and 9.x, since they’re not compatible with versions of PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher older than 7.1.

@marybaum commented that Help/About is looking good and then took a minute to thank all the people involved with the About page.

Open Floor

Pivoting from @sergeybiryukov‘s discussion of PHPUnit 8.x and 9.x, @azaozz opened a discussion of when WordPress might stop supporting PHP versions earlier than 7.1. The upshot, according to @sergeybiryukov: WordPress ends support for a PHP version when it’s running fewer than 5% of sites. At the moment, 8.83% of WordPress sites run PHP 5.6, and 5.23% are running on PHP 7.0.

Marketing Rep and Help/About co-maintainer @webcommsat would like to know what your favorite 5.8 feature is, so the Marketing team can write some social-media posts about it. You can share your favorites with her or @marybaum directly or in threads on this week’s marketing meeting, which run asynchronously through Friday.

@webcommsat would also like some more posts on key features in the release. To add one or more, use the commenting feature in this Google Doc.

#5-8, #core, #dev-chat, #summary

Dev Chat Agenda for July 7, 2021

Here is the agenda for this week’s developer meetings to occur at July 7, 2021 at 20:00 UTC.

Blogblog (versus network, site) Post Highlights

5.8 Schedule Review

  • RC 1 released last week and RC 2 yesterday, now under hard string freeze
  • Working on 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. email to 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/theme authors
  • No further 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 scheduled, so please highlight issues of concern directly in #core
  • RC 3 in 6 days on Tuesday, July 13th
  • 5.8 release in 13 days on Tuesday, July 20th

Components check-in and status updates

  • 5.8 plans and help needed
  • Check-in with each component for status updates.
  • Poll for components that need assistance.

Open Floor

Do you have something to propose for the agenda, or a specific item relevant to the usual agenda items above?

Please leave a comment, and say whether or not you’ll be in the chat, so the group can either give you the floor or bring up your topic for you accordingly.

This meeting happens in the #core channel. To join the meeting, you’ll need an account on the Making WordPress Slack.

#5-8, #agenda, #dev-chat

A Week in Core – July 5, 2021

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 June 28 and July 5, 2021.

  • 64 commits
  • 52 contributors
  • 65 tickets created
  • 16 tickets reopened
  • 67 tickets closed

Please note that the WordPress Core team released WordPress 5.8 RC 1 last week. Everyone is welcome to help testing the 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. of WordPress 🌟

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

Build/Test Tools

  • Add the 5.8 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". to the workflow for testing branches
  • Add the artifacts directory to svn-ignore and .gitignore#53549
  • Replace assertInternalType() usage in unit tests – #53491, #46149
  • Revert [51259-51256,51265] – #53397
  • Split packages and blocks to their webpack configs – #53397

Bundled Themes

  • Correct @since tags 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. patterns – #52628, #53461
  • Remove mention of “FSE” in Core – #53497
  • Twenty Seventeen: Avoid JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. errors when displaying legacy widgets – #53512
  • Twenty Twenty-One: Add missing documentation for some filters – #52628, #53461
  • Twenty Twenty-One: Ensure Duotone images are displayed correctly in Dark Mode – #53531
  • Twenty Twenty-One: Ensure the dropdown arrow displays for <select> elements when focused – #53560
  • Twenty Twenty-One: Improve documentation per the documentation standards: – #52628, #53461
  • Twenty Twenty: Add missing documentation for some filters – #52628, #53461

Coding Standards

  • Add missing visibility keywords to WP_Theme, WP_Theme_JSON, and WP_Theme_JSON_Resolver tests – #52627
  • Apply an alignment fix after composer format#53375
  • Remove redundant type casting to array in WP_Query::get_posts()#53359

Documentation

  • Add @since tags for WP_Theme class properties – #53399
  • Add @ticket references to some WP_Theme_JSON tests – #52628, #53461
  • Add and correct examples of common names for various dynamic hooksHooks In WordPress theme and development, hooks are functions that can be applied to an action or a Filter in WordPress. Actions are functions performed when a certain event occurs in WordPress. Filters allow you to modify certain functions. Arguments used to hook both filters and actions look the same.#53581
  • Add missing @since tags for some REST APIREST API The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/. methods added in 5.8 – #52628, #53461
  • Add missing @since tags for some WP_Theme_JSON methods
  • Adjust wp_dashboard_browser_nag() DocBlockdocblock (phpdoc, xref, inline docs) per the documentation standards – #52628, #53461
  • Correct @see references for hooks in the get_option() description – #52628, #53461
  • Correct @since annotation for WP_Block_Type->view_script#53397
  • Correct description for the $image parameter of the wp_save_image_file 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.#53399
  • Correct description for the upgrader_pre_install filter – #53546
  • Correct documentation for rest_{$post_type}_query and rest_{$taxonomy}_query filters – #53568
  • Corrections and improvements to types used in docblocks for symbols, properties, and filters – #53399
  • Descriptive improvements and corrections for various docblocks – #53399
  • Document common names for dynamic hooks relating to metadata – #53581
  • Document the globals used in WP_REST_Widget_Types_Controller and WP_REST_Widgets_Controller#52628, #53461
  • Document the globals used in some REST API methods – #53399
  • Fix the documentation for the $tests parameter of the site_status_tests filter – #53399, #46573
  • Further Improve documentation for wp_should_load_separate_core_block_assets() – #53505
  • Further type corrections and improvements for various docblocks – #53399
  • Improve documentation for wp_should_load_separate_core_block_assets()#53505
  • Improve documentation for optional parameters in WP_Theme_JSON_Resolver methods per the documentation standards – #52628, #53461
  • Improve documentation for optional parameters in WP_Theme_JSON methods per the documentation standards – #52628, #53461
  • List the expected type first instead of WP_Error in some REST API methods added in 5.8 – #52628, #53461
  • Miscellaneous docblock improvements – #53399
  • Miscellaneous formatting corrections for docblocks – #53399
  • Remove an empty line between @param and @return tags in some newly added REST API methods, per the documentation standards – #52628, #53461
  • Undo the accidental revert of [51299] made in [51300]#53399
  • Update documentation for WP_Widget_Block per the documentation standards – #52628, #53461
  • Update syntax for multi-line comments per the documentation standards – #52628, #53461
  • Update the IRCIRC Internet Relay Chat, a network where users can have conversations online. IRC channels are used widely by open source projects, and by WordPress. The primary WordPress channels are #wordpress and #wordpress-dev, on irc.freenode.net. link from Freenode to Libera.chat – #53590

Editor

  • Ensure global styles are loaded in the footer when loading core assets individually – #53494
  • Ensure the Query block pattern categoryCategory The 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. is translatable – #53577
  • Prevent block stylesheets from loading when they do not exist – #53375
  • Remove the experimental experimental-link-color feature – #53175
  • Include the latest fixes targetted for 5.8 RC1 – #53397
  • Package updates including fixes from 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/ for WordPress 5.8 RC1 – #53397
  • Remove unnecessary function_exists check in get_the_block_template_html – #53578, #53176

Help/About

  • WordPress 5.8 About Page – #52775

Query

  • Check each post-type’s capabilities when querying multiple post-types – #48556

REST API

  • Allow multiple widgets to be deleted in a single batch request – #53557

Script Loader

  • Add file block assets to the svn-ignore list – #53397
  • Fix PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher notice caused by the viewScript for the core/file block – #53397
  • Revert [51267] – #53397
  • Use the provided block version when registering styles – #53507

Security

  • Add 5.8 to the list of versions receiving security updates

Site Health

  • Improve readability of site titles – #53535

Upgrade/Install

  • Notify users of deactivated plugins during upgrade – #53432
  • Widgets REST API: Fix non-multi widgets not appearing in wp_inactive_widgets – #53534

Props

Thanks to the 52 people who contributed to WordPress Core on Trac last week: @desrosj (9), @walbo (6), @aristath (5), @jorbin (5), @SergeyBiryukov (4), @audrasjb (3), @peterwilsoncc (3), @hellofromTonya (3), @gziolo (3), @nosolosw (2), @swissspidy (2), @isabel_brison (2), @zieladam (2), @pbiron (2), @nalininonstopnewsuk (1), @meher (1), @yvettesonneveld (1), @femkreations (1), @oglekler (1), @alanjacobmathew (1), @milana_cap (1), @courane01 (1), @annezazu (1), @matveb (1), @shaunandrews (1), @javiarce (1), @ryokuhi (1), @Jorbin (1), @Clorith (1), @Boniu91 (1), @ryelle (1), @empatogen (1), @melchoyce (1), @noisysocks (1), @pbearne (1), @jrf (1), @dd32 (1), @ilovecats7 (1), @mcsf (1), @poena (1), @dlh (1), @andraganescu (1), @marybaum (1), @leogermani (1), @jeffpaul (1), @ipstenu (1), @azaozz (1), @youknowriad (1), @chanthaboune (1), @cbringmann (1), @webcommsat (1), and @timothyblynjacobs (1).

Congrats and welcome to our 5 new contributors of the week! @femkreations, @courane01, @javiarce, @empatogen, and @ilovecats7 ♥️

Core committers: @sergeybiryukov (26), @desrosj (20), @johnbillion (8), @youknowriad (3), @jorbin (2), @peterwilsoncc (2), @ryelle (1), @clorith (1), and @noisysocks (1).

#5-8, #week-in-core