A Week in Core – May 31, 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 May 24 and May 31, 2021.

  • 65 commits
  • 98 contributors
  • 48 tickets created
  • 11 tickets reopened
  • 83 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

  • Improve the message about installing the Link Manager pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party to use legacy Links screen – #52669

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

  • Load the classic layout stylesheet conditionallty – #53175
  • Add the layout block support – #53175
  • Declare the wp_template post type as built-in – #53176
  • Only load the WP_Theme_JSON_Resolver class once – #53175, #51104
  • Add support for the pattern directory – #53246
  • Fix logic to enable custom colors, gradients, and font sizes – #53175
  • Update 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/ 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". used to launch Gutenberg e2e tests – #52991
  • Update packages and 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. the latest Gutenberg fixes – #52991
  • Introduce block templates for classic themes – #53176
  • Load theme resolver class in script loader – #53175

Build/Test Tools

  • Update the several dependencies – #52624
  • Minimize the chances of signature conflicts for assertEqualsWithDelta()#52625
  • Use deterministic module ids in webpack for media – #53192
  • Remove the ::append_to_selector() method from Tests_Theme_wpThemeJson#52991
  • Use the Composer-installed version of PHPUnit for Grunt tasks – #53015
  • Use hashed module IDs for minified files – #53192

Bundled Themes

  • Introduce block patterns for Twenty Fourteen – #51103
  • Introduce block patterns for Twenty Fifteen – #51102
  • Update the “Tested up to” value – #53276
  • Introduce block patterns for Twenty Twelve – #51105
  • Twenty Thirteen: Fix missing translations in block patterns, add image credits – #51104

Coding Standards

  • Move assignment out of condition in phpunit/includes/speed-trap-listener.php#52625
  • Further update the code for bulk menu items deletion to better follow WordPress coding standardsWordPress Coding Standards The Accessibility, PHP, JavaScript, CSS, HTML, etc. coding standards as published in the WordPress Coding Standards Handbook. May also refer to The collection of PHP_CodeSniffer rules (sniffs) used to format and validate PHP code developed for WordPress according to the PHP coding standards.#21603
  • Apply some minor coding standards fixes – #21603
  • Simplify a condition in wp-admin/admin-footer.php#53306
  • Use strict comparison in wp-includes/class-wp-customize-nav-menus.php#52627
  • Apply some minor coding standards adjustments – #41683, #53156, #53175

Comments

  • Include a “View Post” link on the Comments screen for a single post – #52353

Documentation

  • Improve documentation for get_option(). Clean up, clarify the returned types and the exceptions, and add few
  • Improve documentation for the wp_resource_hints 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.#52842
  • Document that has_block() does not check reusable blocks – #53140
  • Improve documentation for wp_list_filter() and wp_filter_object_list()#52808
  • Use a duplicate hook reference for widgets_admin_page in wp-admin/widgets-form-blocks.php#51506

External Libraries

  • Update two polyfill libraries to their latest versions – #52854
  • Update the phpass library to version 0.5#51549

Formatting

  • Add ‘main’ 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.) to kses – #53156
  • Introduce the document_title filter – #51643

General

  • Correct the inline code examples for _wp_array_get() and _wp_array_set()#53264
  • Avoid a PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher warning when checking the mbstring.func_overload PHP value – #53282
  • Pass the scheme to the *_url filters – #52813

Media

  • Replace basename() usage on media upload screen with wp_basename() for better multibyte filenames support – #51754
  • Add button in media upload page for copying the media url – #51754

Menus

  • Add bulk delete for menu items – #21603

Posts, Post Types

  • Improve post_exists() query – #34012
  • Speed cached get_pages() calls – #51469
  • Remove some unused strings from built-in post type declarations – #53176

Site Health, Privacy

  • Combine shared CSSCSS Cascading Style Sheets. for Site Health & Privacy Settings – #52429

Themes

  • Display the number of available theme updates in the adminadmin (and super admin) menu – #43697

Toolbar

  • Prevent username from wrapping when avatars are disabled – #26933

Upgrade/Install

  • Update sodium_compat to v1.16.1 – #53274

Users

  • Pass on the user data received by wp_insert_user() to related 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.#53110

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

  • Update “object” strings to use the appropriate nouns – #40720
  • Add 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. endpoints – #41683
  • Revert widget endpoints – #41683
  • Add widget endpoints – #41683
  • Add support for modifying the term relation when querying posts – #41287
  • Remove WP_Test_REST_Widgets_Controller tests – #41683
  • Re-introduce WP_Test_REST_Widgets_Controller tests – #41683
  • Remove duplicates in the widget types endpoint – #53305

Widgets

  • Adds the widgets block editor to widgets.php and customize.php – #51506
  • Ignore CSS files in legacy widgets block – #51506
  • Perform ‘widgets_admin_page’ action in block widget editor – #51506
  • Remove unnecessary enqueue of ‘format-library’ assets – #51506

Props

Thanks to the 98 people who contributed to WordPress Core on Trac last week:

@SergeyBiryukov (7), @peterwilsoncc (7), @audrasjb (6), @melchoyce (6), @isabel_brison (5), @TimothyBlynJacobs (5), @onemaggie (4), @desrosj (4), @nosolosw (4), @kjellr (4), @johnbillion (3), @mukesh27 (3), @kevin940726 (3), @noisysocks (3), @youknowriad (2), @ayeshrajans (2), @jnylen0 (2), @gziolo (2), @francina (2), @lukecarbis (2), @talldanwp (2), @spacedmonkey (2), @beafialho (2), @andraganescu (2), @hareesh-pillai (1), @dd32 (1), @tw2113 (1), @joen (1), @ocean90 (1), @hellofromTonya (1), @david.binda (1), @jorgefilipecosta (1), @zieladam (1), @paaggeli (1), @jeremyfelt (1), @dragunoff (1), @timothyblynjacobs (1), @glendaviesnz (1), @otto42 (1), @maxpertici (1), @wphound (1), @paragoninitiativeenterprises (1), @chaion07 (1), @vladytimy (1), @trejder (1), @lephleg (1), @ryelle (1), @oxyrealm (1), @carlomanf (1), @welcher (1), @bernhard-reiter (1), @boniu91 (1), @sabernhardt (1), @5um17 (1), @bhwebworks (1), @paaljoachim (1), @iandunn (1), @jamil95 (1), @joyously (1), @jeffikus (1), @boonebgorges (1), @apokalyptik (1), @ntsekouras (1), @djbu (1), @thomasplevy (1), @akabarikalpesh (1), @ribaricplusplus (1), @jffng (1), @DrewAPicture (1), @poena (1), @vyskoczilova (1), @Rahmohn (1), @vanyukov (1), @imath (1), @azaozz (1), @ReneHermi (1), @brettshumaker (1), @MikeHansenMe (1), @sannevndrmeulen (1), @Mista-Flo (1), @Boniu91 (1), @pixolin (1), @zodiac1978 (1), @joedolson (1), @shaunandrews (1), @claytoncollie (1), @antpb (1), @ryokuhi (1), @whyisjake (1), @anotia (1), @clorith (1), @notlaura (1), @xkon (1), @sebbb (1), @Clorith (1), @earnjam (1), @dlh (1), and @jrf (1).

Congrats and welcome to our 13 new contributors of the week! @dragunoff, @wphound, @trejder, @lephleg, @oxyrealm, @carlomanf, @bhwebworks, @jamil95, @djbu, @brettshumaker, @sannevndrmeulen, @anotia, and @sebbb ♥️

Core committers: @sergeybiryukov (22), @ryelle (8), @desrosj (8), @noisysocks (7), @youknowriad (6), @peterwilsoncc (6), @timothyblynjacobs (2), @joedolson (2), @azaozz (1), @jorgefilipecosta (1), @antpb (1), and @jorbin (1).

#5-8, #week-in-core

CSS Chat Summary: 13 May 2021

The meeting took place here on Slack. @notlaura facilitated and @danfarrow wrote up these notes.

Project updates

Color Scheming (#49999)

CSSCSS Cascading Style Sheets. Deprecation Path (#53070)

  • @tellthemachines is planning to write a Make post about the project to clarify details of the proposed methodology

CSS Audit (#49582)

  • The automated report generation PR needs 1 review – UPDATE: the PR has now been merged

Open floor / CSS link share

Thanks everyone!

#core-css, #summary

CSS Custom Properties Project Update

Based on the discussions in this previous post, a few of us over in #core-css have made some demos and explored the technical details around using custom properties with coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. as part of the larger goal to implement dark mode in WP-Adminadmin (and super admin), and allow for more sophisticated handling of color schemes (see #49999). The following post will summarize those thoughts and lay out a possible roadmap.

Given the IE11 phase-out plan, fallbacks for custom properties are not needed. If for some reason that changes, there are PostCSS tools for automating fallbacks.

Naming the custom properties – some demos to explore different naming schemes were shared in the core-CSSCSS Cascading Style Sheets. meetings (demo 1, demo 2, and demo 3). The aim is to create a consistent and understandable “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.” for interacting with colors (custom properties won’t be used for typography or layout). One formula for creating names was decided on, --[prefix]--[location]--[property]--[state]. Those tokens will be refined further in future Core CSS meetings. The next meeting is Thursday 21:00 UTC.

How it (could) work

In this example, there are 4 screenshots of possible color schemes – default, light high contrast, dark, and dark high contrast. Custom properties would be used to set the background colors, text colors, link, and button colors so that each theme can set just what is needed. For example, the button’s CSS would look like this:

.button {
    background: var(--wp-admin--button--background);
    color: var(--wp-admin--button--color);
}

Then each theme would set those variables, inheriting from the default.

body {
    --wp-admin--button--background: #2371b1;
    --wp-admin--button--color: #fff;
}

body.is-theme-dark {
    /* No change, the same button is used. */
}

body.is-theme-light-high-contrast {
    /* Inherits the text color, but darkens the button. */
    --wp-admin--button--background: #0b4b78;
}

body.is-theme-dark-high-contrast {
    /* Overrides both background and text. */
    --wp-admin--button--background: #68de7c;
    --wp-admin--button--color: #1d2327;
}

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 authors will also be able to use these colors in their CSS without creating separate rules for each color scheme.

.my-fancy-button {
    background: var(--wp-admin--button--background);
    color: var(--wp-admin--button--color);
}

Specific technical details – like how the schemes are registered & loaded, how to work with the existing properties 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/, whether there should be a “default dark” for schemes to inherit from, etc – are still in progress. If this sounds interesting to you, please join the conversation in #core-css!

This project will likely also tie into the CSS deprecation discussion in #53070.

Next Steps

This is just a rough outline, and will depend on support and involvement across different teams.

Phase 1 (eta: early 5.9)

  • Start creating custom properties with an --experimental prefix. This will allow for use in 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. without committing to forever supporting them.
  • This will need more input from designers and UIUI User interface folks to help identify colors and make sure the naming schemes are coherent in the design system of WordPress.
  • Once some color custom properties have been created, use these for the current core color schemes. Maybe make improvements to the color schemes.

Phase 2 (eta: 6.0)

  • Remove the experimental prefix from the custom properties.
  • Create new color schemes for a dark mode, high contrast dark mode, and high contrast light mode.

+make.wordpress.org/design/

Thanks to @melchoyce for quickly mocking up some possible color schemes, and thanks to @danfarrow, @notlaura, & @joyously for reviewing this post.

#color-schemes

A Week in Core – May 3, 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 April 26 and May 3, 2021.

  • 17 commits
  • 28 contributors
  • 57 tickets created
  • 4 tickets reopened
  • 44 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

Build/Test Tools

  • Correctly test grunt clean when built to run from src#52625
  • Improve get_bookmark() test coverage – #52988

Bundled Themes

  • Twenty Twenty-One: Fix “Opening PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 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.) must be on a line by itself” WPCSWPCS The collection of PHP_CodeSniffer rules (sniffs) used to format and validate PHP code developed for WordPress according to the WordPress Coding Standards. May also be an acronym referring to the Accessibility, PHP, JavaScript, CSS, HTML, etc. coding standards as published in the WordPress Coding Standards Handbook. issue – #52938
  • Twenty Twenty-One: Display page title as the H1 heading when a static page is selected as the “Posts page” – #52938

Coding Standards

  • Fix a whitespace at end of line issue in wp-admin/includes/class-wp-comments-list-table.php#52627
  • Use strict comparison in wp-admin/includes/class-wp-posts-list-table.php#52627
  • Update $out in WP_Widget_Pages with a more meaningful name – #53059
  • Fix a precision alignment issue in wp-admin/includes/template.php#52627

Documentation

  • Document the usage of $current_user global in get_user_by()#53088

Editor

  • Fix typo in image default size setting – #52920
  • 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: Update the bundled block patterns – #52846

External Libraries

  • Upgrade PHPMailer to version 6.4.1 – #53114

Posts, Post Types

  • Pass the post object to the_password_form 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.#29008

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

  • Check the results of get_metadata() in WP_REST_Meta_Fields methods – #53099

Toolbar

  • Remove title attribute on pending updates link – #26562, #53031

Upgrade/Install

  • Display 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 update counts on WordPress Updates screen – #53031

Users

  • Share current user instance across functions – #28020

Props

Thanks to the 28 people who contributed to WordPress Core on Trac last week:

@mukesh27 (4), @sabernhardt (3), @audrasjb (3), @peterwilsoncc (2), @hellofromtonya (2), @rmccue (1), @lukecarbis (1), @donmhico (1), @chriscct7 (1), @chaion07 (1), @silb3r (1), @paaggeli (1), @david.binda (1), @gziolo (1), @kjellr (1), @beafialho (1), @melchoyce (1), @onemaggie (1), @mamaduka (1), @ayeshrajans (1), @Mte90 (1), @afercia (1), @Boniu91 (1), @francina (1), @rianrietveld (1), @justinahinon (1), @davidbaumwald (1), and @TimothyBlynJacobs (1).

Congrats to our new contributor of the week: @paaggeli ♥️

Core committers: @sergeybiryukov (10), @peterwilsoncc (2), @joedolson (1), @gziolo (1), @davidbaumwald (1), @desrosj (1), and @youknowriad (1).

#5-8, #week-in-core

A Week in Core – April 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 April 5 and April 12, 2021.

  • 26 commits
  • 42 contributors
  • 54 tickets created
  • 9 tickets reopened
  • 45 tickets closed

Reminder: WordPress 5.7.1 is planned for April 14, 2021. The release candidate is available for testing.

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.

Code changes

Administration

  • Update various background colors for increased contrast – #52760

Build/Test Tools

  • Remove remaining Travis CI references – #52161, #52666
  • Prevent PHPUnit tests on push for forks/private mirrors – #52983
  • Update dependencies in default themes – #52624
  • Update development dependencies from WP packages – #52991
  • Revert package-lock.json change in [50682]#52768
  • Update some dependencies – #52624

Bundled Themes

  • Update the “Tested up to” value – #52859
  • Twenty Twenty-One: Rebuild IE specific editor stylesheet – #52981, #52702

Coding Standards

  • Rewrite a fragment in request_filesystem_credentials() for clarity and to avoid repetition – #52627
  • Use strict comparison in wp-admin/includes/file.php#52627
  • Simplify the check for parent terms in export_wp()#52627
  • Use strict comparison in wp-admin/includes/credits.php#52627
  • Use strict comparison in wp-admin/includes/comment.php#52627
  • Remove unnecessary unset() calls in WP_Importer methods – #52996
  • Use strict comparison in wp-admin/includes/dashboard.php#52627
  • Give a variable in wp-admin/themes.php a more meaningful name – #52627

Customize

  • Set `playsinline` attribute for custom 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. videos – #50111

Editor

  • Use a consistent way to retrieve post ID on Edit Post screens – #52995
  • Ensure wordpress/inteface package is listed as a dependency – #52991

Login and Registration

  • Check if $_GET['login'] is set before using it in wp-login.php#52980

Media

  • Do not lazy load hidden images or embeds – #52768

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

  • Update default color scheme swatch to match CSSCSS Cascading Style Sheets. changes – #52750

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

  • Move the rest_jsonp_enabled 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. before setting the Content-Type header – #52691

Site Health

  • Reduce false reports of HTTPSHTTPS HTTPS is an acronym for Hyper Text Transfer Protocol Secure. HTTPS is the secure version of HTTP, the protocol over which data is sent between your browser and the website that you are connected to. The 'S' at the end of HTTPS stands for 'Secure'. It means all communications between your browser and the website are encrypted. This is especially helpful for protecting sensitive data like banking information. failures – #52783

Themes

  • Remove unused code fragment from wp-admin/themes.php#53005

Props

Thanks to the 42 people who contributed to WordPress Core on Trac last week:

@peterwilsoncc (3), @SergeyBiryukov (3), @mukesh27 (3), @johnbillion (2), @TimothyBlynJacobs (2), @ocean90 (2), @ravipatel (2), @klevyke (1), @annalamprou (1), @AnotherDave (1), @ayeshrajans (1), @bobbingwide (1), @Clorith (1), @dragongate (1), @geoffrey1963 (1), @eatsleepcode (1), @gab81 (1), @ninetyninew (1), @Ipstenu (1), @k3nsai (1), @mmuyskens (1), @nicegamer7 (1), @pwallner (1), @ryelle (1), @swissspidy (1), @desrosj (1), @melchoyce (1), @dd32 (1), @rkradadiya (1), @davidbaumwald (1), @jrf (1), @rachelbaker (1), @kebbet (1), @adamsilverstein (1), @audrasjb (1), @fabianpimminger (1), @flixos90 (1), @jonkastonka (1), @joyously (1), @SirStuey (1), @satrancali (1), and @Toru (1).

Please welcome our 17 (!!) new Core contributorsCore Contributors Core contributors are those who have worked on a release of WordPress, by creating the functions or finding and patching bugs. These contributions are done through Trac. https://core.trac.wordpress.org. of the week ♥️
@klevyke, @annalamprou, @AnotherDave, @dragongate, @geoffrey1963, @eatsleepcode, @gab81, @ninetyninew, @k3nsai, @mmuyskens, @nicegamer7, @pwallner, @rkradadiya, @fabianpimminger, @jonkastonka, @SirStuey, and @satrancali.

Core committers: @sergeybiryukov (11), @desrosj (5), @peterwilsoncc (4), @ocean90 (2), @gziolo (2), @rachelbaker (1), and @ryelle (1).

#5-7-1, #5-8, #week-in-core

What’s new in Gutenberg 10.3? (31 March)

The first quarter of the year is coming to an end, and with it, 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/ 10.3 comes as well! This release brings us some important changes to Global Styles, as well as several improvements to blocks such as the Navigation blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience., enhancements to the inserter, an editor performance boost, and even a few new blocks! As always, many bugbug A bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. fixes are included, too.

Improving the Block toolbar

In order to provide a consistent UIUI User interface across blocks, blocks have seen their toolbars rearranged following a standard grouping layout. While the last release saw the Image block have its toolbar standardized, this time a whole set of blocks have been normalized as well, including blocks such as Button, Buttons, List, Heading, Paragraph, Quote, Audio, File, Media and Text, Video, Site Logo, Cover, and Post 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. blocks.

Introducing layout configuration in 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.

Themes have always had the responsibility of defining alignments in the frontend through CSSCSS Cascading Style Sheets. rules. They also define different widths for both the editor and frontend. The content width, whether they support wide alignments or not, and the CSS to support all these combinations can be very hard to write properly.

With Full Site Editing, the templates are written in blocks and edited in the site editor. This means that the editor has to match the front end as much as possible while allowing theme authors to tweak these alignments and widths in the editor. If this doesn’t happen, it causes confusion and frustration as seen in the feedback from the FSE Outreach Program

To address these requirements and to simplify the way themes define and style alignments, Gutenberg 10.3 introduces the concept of layout and layout configuration, a feature automatically enabled when you rely on a theme.json file (experimental-theme.json file at the moment).

Theme authors should be able to make use of this feature by adding a layout config to their theme.json file and indicating in their block templates which containers inherit that config. The layout config is also automatically applied to the post editor.

If you’re using the experimental theme.json file already, you should be able to follow these two pull requests that update the empty theme and the twenty twenty-one blocks theme to use this feature.

Changes in theme.json block supports and supported styles 

Block supports are no longer used to decide whether the styles in the theme.json file for a block should be used or not. However, block supports are still used to show UI controls in both the block & global styles 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., but themes can now use any theme.json style property that exists in any block:

"core/paragraph": {
  "typography": {
    "fontFamily": "var(--wp--preset--font-family--cambria-georgia)"
  }
}

Improvements to Navigation Block and Navigation Editor

Gutenberg 10.3 brings a number of improvements to the Navigation block and Navigation editor experience, including the list view in the Navigation editor, in-between inserter, and a better flow to build nested menus.

after, editor

Inserter enhancements

This release also brings updates to inserting blocks, including improvements to keyboard navigation and accessibility for the Block Inserter, and a new “theme” category for template parts and their variations. Moreover, the slash inserter now allows typing multiple words when searching for blocks. Each of these enhancements help make it easier to find and use the blocks you want.

More theme blocks

With the goal of providing classic template 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.) features with blocks, up to three new blocks are introduced in this release. The LogIn/Out block is now available to provide login and logout links. Optionally, it can display the login form instead of a link by setting the available block attribute.

Two new blocks for archive pages are also available. The Term Description block displays the description of categories, tags, and custom taxonomies. On the other hand, the Archive Title block displays the title of the archive itself.

Cover block improvements

The Cover block now supports drag and drop for replacing the background image.

Editor performance improvements

In recent releases, the time it took for the editor to load increased slightly due to the growing number of patterns available in the Inserter. Gutenberg 10.3 fixed this so that the editor performs well regardless of the number of available patterns!

10.3

Enhancements

  • Add since versions to the deprecated features. (30072)
  • Blocks: Add “theme” category and better present Template Parts in the inserter. (30020)
  • Block Editor:
    • Add drag handle to select mode. (28815)
    • Improve block inserter keyboard navigation. (26938)
    • Open adminadmin (and super admin) sidebar menu over editor on small screens. (29955)
  • Block Library:
    • Cover: Allow drag and drop media replacement. (29813)
    • File: Make the editor markup match the frontend. (30148)
    • Social Links: Improve selected state of empty block. (29756)
    • Standardize the groups in the block toolbar. (300122924729863)
    • Verse block: Add support for the padding to the verse block. (29820)
  • Components: Allow multiple words in the autocomplete phrase matcher. (29939)
  • Gutenberg 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: Improved cache bust without filemtime for assets. (29775)
  • Icons: Hint the lowercase icon by 0.15px to correct the font weight appearance. (29754)
  • Media: Use image default size from settings. (29966)

New APIs

  • Compose: Add new useCopyToClipboard hook. (29643)
  • Deprecated: Add since option to deprecated function. (30017)

Bug Fixes

  • Block Editor:
    • Ensure that uncategorized block types are properly handled. (30125)
    • Fix mover width/size regressions. (29889)
    • Fix navigation mode focus. (30126)
    • Fix regressionregression A software bug that breaks or degrades something that previously worked. Regressions are often treated as critical bugs or blockers. Recent regressions may be given higher priorities. A "3.6 regression" would be a bug in 3.6 that worked as intended in 3.5. with multi select style. (30128)
    • Fix the issue with block style preview when example missing. (29894)
    • Fix sibling block inserter displaying at end of block list. (29920)
    • Revert showing empty paragraphs on fronted. (29809)
    • Show the active block variation’s icon in Select mode. (30143)
  • Blocks: Adding onRemove event to verse block. (30104)
  • Block Library:
    • Cover: Improve disabled media buttons check for placeholder. (29858)
    • Embed:
      • Fix overzealous aspect ratio scaling for embeds. (29510)
      • Embed: Fix select on focus. (29431)
    • Gallery: Fix gallery item clicking. (29860)
    • Image:
      • Fix block reset sizes on external URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org change. (26879)
      • Fix undo step with temporary URL. (30114)
    • Social Link: More accessible labels. (29659)
    • Video: Fix kind attribute missing subtitle value in video text track. (30040)
  • Components:
    • Don’t display Guide’s page control if there is only one page. (29629)
    • Prevent PanelBody title from being overlapped by arrow. (29914)
  • Compose: Call useMergeRefs when dependency changes after ref change. (29892)
  • Copy:
    • Restore dot at the end of a sentence. (29897)
    • Update the layout alignment description for better clarity. (29974)
  • Gutenberg Plugin: Update “requires at least” value to 5.6. (29646)
  • E2E Tests: Stabilize randomly failing tests in 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.. (29836)
  • Navigation Component: Align item text to the left/right. (30083)
  • Post Editor:
    • Fix post editor layout regression. (30093)
    • Keep post publishing popover open when a date is clicked. (2973829893)
  • RichText: Fix inline display warning. (30193)
  • Themes: Restore the default editor font for the non FSE themes. (30080)
  • Raw Handling: Fix pasting special spaces. (28077)
  • Storybook: Fix block editor shortcuts. (29750)
  • Writing Flow:
    • Fix caretRangeFromPoint. (30031)
    • Fix tab behavior. (30000)
    • Remove arrow nav limitations. (30057)

Performance

  • Block Editor:
    • Optimise multi-selection select calls. (30140)
    • When inserting Block Patterns they get parsed when the browser is idle. (29444)
  • Block Library: Use early return in the Button block to optimize save.js. (29781)

Experiments

  • Components:
    • Add Heading. (29592)
    • Button: Add a default type of button. (29900)
  • 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.: Add widgets customize inspector. (29755)
  • Full-Site Editing:
    • Add a layout configuration to the Group block and theme.json and make alignments declarative. (29335)
    • Add client ID trees selectors in block navigation. (29902)
    • Add description field to Post Content block. (29971)
    • Add Log In/Out block. (29766)
    • Add Query Title block and Archive Title variation. (29428)
    • Add Term Description block. (29613)
    • Add preload_paths 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. for widgets screen and full site editing. (28701)
    • Add support for experimental layout in Post Content block. (29982)
    • Add layout support to the Template Part block. (30077)
    • Add link color option in Site Title block. (29924)
    • Always use full screen mode. (29489)
    • Automatically open the sidebar to the appropriate menu. (2696430098)
    • Close navigation panel after template selection. (29956)
    • Expose Template Part block variations to the Inserter. (30032)
    • First step towards hybrid themes – fallback to PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher templates. (29026)
    • Fix block toolbar from overlapping navigation panel. (29918)
    • Fix different markup in the editor and on the frontend for the Site Title block. (29021)
    • Fix edge case where the default layout could be undefined. (30024)
    • Fix persistence of Preferences in site editor. (30019)
    • Fix Post Comment Count block attribute. (30056)
    • Fix 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. block margin. (30078)
    • Fix Template Part alignments behavior. (30099)
    • Fix template saving issue after switching themes. (29842)
    • Polish site button focus/hover styles in post and site editor. (29888)
    • Prevent navigation panel focus when hidden. (29600)
    • Refactor the Post Content block. (29898)
    • Remove alignments from the root level of the site editor. (30079)
    • Remove 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. toolbar transition in reduced-motion mode. (29764)
    • Remove unused QueryProvider in Query block. (29947)
    • Template Part: Identify template parts in error messages. (28398)
    • Update Post Content icon, unuse justify. (29867)
    • Update Post Title markup so that editor and front match. (29824)
    • Update template details popover. (29439)
  • Global Styles:
    • Allow themes to use any styles in the theme.json whether or not the block supports it. (29941)
    • Better CSS reset style loader order. (30034)
    • Block Supports: Allow skipping serialization of border. (30035)
    • Optimistically continue with empty data when user data for global styles is not a JSON. (30088)
    • Remove kebab-case camelCase transformations. (29986)
    • Skip null when translating settings. (30171)
    • Translate custom templates in theme.json. (29828)
  • Navigation Editor and Block:
    • Add line-height to Navigation block. (30010)
    • Add padding to Navigation Link placeholder. (29832)
    • Allow vertical inserter in the Navigation block. (28833)
    • Consistently provide fallback variations for the block. (30117)
    • Enable list view. (29936)
    • Fix flyout background color in Page List block. (29932)
    • Fix link items in navigation screen. (30009)
    • Fix minor styling issues with nav editor. (30129)
    • Fix Navigation block styles in the navigation editor. (29748)
    • Fix navigation editor link search suggestions. (29707)
    • Fix navigation editor saving. (29749)
    • Fix navigation screen font. (30085)
    • Fix navigation screen inserter horizontal scrollbar. (29930)
    • Fix navigation editor block toolbar not visible on small screens. (29967)
    • Fix padding issues with nav screen. (30183)
    • Fix paragraph margin specificity inside layout containers. (30038)
    • Fix popover anchor in Navigation Link block. (30173)
    • Improve default label of location select. (29908)
    • Increase importance of submenus staying open. (30169)
    • Keep submenus open on select in the editor. (29713)
    • Match editor markup to rendered in Navigation Link block. (29935)
    • Move theme location settings to navigation editor sidebar. (29458)
    • Navigation MenuNavigation Menu A theme feature introduced with Version 3.0. WordPress includes an easy to use mechanism for giving various control options to get users to click from one place to another on a site.: Show submenus only on select in the editor. (29869)
    • Polish navigation screen. (2992630168)
    • Simplify focus style in Site Icon block. (29872)
    • Show all menus in manage locations. (29906)
    • Unset font weight and text decoration inheritance in Navigation block. (30011)
    • Use the interface package for the navigation screen. (30013)
    • Visual and design improvements for List View. (29769)
  • Widgets Editor:
    • Fix warning when widgets block editor is disabled. (30318)
    • Iterate on widgets 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/. endpoints. (29649)
    • Load block editor assets in the navigation and 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. editors. (30076)
    • Unify menu item styles for Navigation Block and Page List blocks. (29975)
    • Use a default sans serif font for the widget screen. (30084)

Documentation

  • Block Editor: Fix renderAppender documentation. (29925)
  • Handbook:
    • Fix broken image link in the documentation main README. (29857)
    • Fix broken link to developer resources in README.md. (#29795). (29796)
    • Fix link to native-mobile.md in pull request template. (29923)
    • Fix rebase error. (29753)
    • Remove superfluous sentence in create block tutorial. (30062)
    • Update block design principles with a new section on how to group controls. (29816)
    • Update broken link to Getting Started for the ReactReact React is a JavaScript library that makes it easy to reason about, construct, and maintain stateless and stateful user interfaces. https://reactjs.org/. Native based Mobile Gutenberg. (30162)
    • Update the quick view image on the documentation homepage. (29808)
  • Editor: Clarify the purpose of the @wordpress/editor package. (30136)
  • 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.: Replace dead link in README.md. (29699)
  • Interface: Fix typos in interface package. (29740)

Code Quality

  • 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. Fetch:
  • Block Editor:
    • Avoid isInsideRootBlock (DOM query) in useFocusFirstElement. (30178)
    • Focus mode: Fix opacity for inner blocks, move classes. (30130)
    • Move class for navigation mode. (30181)
    • Move is-typing and is-outline-mode classes up the tree. (30106)
    • Move nav mode exit from writing flow to block props. (30175)
  • Block Library:
    • Refactor ServerSideRender to use React 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.. (28297)
    • Remove obsolete editor styles for List block. (30094)
    • Rename loginOut variable to logInOut. (29979)
  • Blocks:
    • Ensure theme category is only added when not provided. (30089)
    • Rename getBlockContent to getBlockInnerHTML internally. (29949)
  • Components: Fix React warning in Text Control. (29724)
  • Date: Add types. (29789)
  • DOM:
    • Add types to focusable. (2978730030)
    • Split into smaller modules to facilitate typing. (30044)
  • Gutenberg Plugin:
  • Packages: Add types directive to api-fetch and date packages. (30252)
  • RichText: Remove dead and deprecated setFocusedElement. (29877)

Tools

  • Babel Preset: Update Babel to v7.13.x. (30018)
  • Create block: Require WordPress 5.7 by default and source it from the main plugin file. (29757)
  • E2E Tests:
    • Cover the case when using multiple words in the inserter. (29978)
    • Fix test plugin clash. (2974429745)
    • Set delay to zero in the reduce-motion mixin and tests. (29762)
  • Eslint Plugin: Add TypeScript as peer dependency and make it optional. (29942)
  • GitHubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ Workflows:
    • Release: Allow triggering manually. (28138)
    • Remove path ignore configs from CI. (30090)
    • Use Gutenberg token for version bump, changelog commits. (30212)
  • Packages: Enforce version bump for production packages after WP major. (29903)
  • Unit Testing: Allow TypeScript modules for transpiled packages. (29873)

Performance Benchmark

The following benchmark compares performance for a particularly sizeable post (~36,000 words, ~1,000 blocks) over the last releases. Such a large post isn’t representative of the average editing experience but is adequate for spotting variations in performance.

VersionLoading TimeKeyPress Event (typing)
Gutenberg 10.34.90s31.86ms
Gutenberg 10.25.15s31.41ms
WordPress 5.74.88s25.24ms

Kudos to all the contributors that helped with the release! 👏

Thanks @gziolo for managing the release, and @annezazu and @melchoyce for helping on the release post.

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

A Week in Core – March 22, 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 March 15 and March 22, 2021.

  • 24 commits
  • 21 contributors
  • 92 tickets created
  • 7 tickets reopened
  • 85 tickets closed

Reminder: WordPress 5.7.1 is planned for April 14, 2021, so we are currently in the development cycle of the next 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..

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.

Code changes

Administration

  • Make focus states consistent in adminadmin (and super admin) menu when collapsed – #32579

Build/Test Tools

  • Update some devDependencies#52624
  • Revert [50540]#52843
  • Remove explicit puppeteer dependency – #52843
  • Move the get_current_commenter() method next to the test it’s used in – #52625
  • Correct some newly introduced @covers tags – #39265

Coding Standards

  • Move some translator comments to the correct place – #52627
  • Add missing semicolon to some endif keywords – #52627
  • Use strict comparison for return type checks in a few functions – #52627
  • Use strict comparison in wp-admin/includes/class-wp-upgrader.php#52627
  • Add a space before / character in some self-closing HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. tags – #52870
  • Use strict comparison for JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. fragment in some admin files – #52845, #41988

Documentation

  • Fix typo in pre_term_link 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. description – #52628
  • Correct formatting for the description of some register_post_type() parameters – #52836

Emoji

  • Update the Twemoji library to version 13.0.2 – #52852

External libraries

  • Update generated script loader version hashes – #52850
  • Further fix jQuery deprecations in WordPress core – #51812
  • Update the jQuery Form library – #52685
  • Update Clipboard.js library to version `2.0.8` – #52850
  • Update jQuery Color library to version `2.2.0` – #51405

Internationalization

  • Update list of continents and cities for the timezone selection – #52861
  • Remove duplicate entries from the list of continents and cities – #52861

Media

  • Pass the appropriate reference into wp_getimagesize#52826

Pointers

  • Make pointer border darker to match arrow tip – #52670

Props

Thanks to the 21 people who contributed to WordPress Core on Trac last week:

@SergeyBiryukov (2), @laxman-prajapati (1), @Bueltge (1), @audrasjb (1), @isabel_brison (1), @rnaby (1), @nayanchamp7 (1), @desrosj (1), @hareesh-pillai (1), @Clorith (1), @melchoyce (1), @afercia (1), @wangql (1), @johnjamesjacoby (1), @whyisjake (1), @rinatkhaziev (1), @hellofromTonya (1), @Mista-Flo (1), @terriann (1), @mukesh27 (1), and @jrf (1).

Please join me to welcome our 2 new Core contributorsCore Contributors Core contributors are those who have worked on a release of WordPress, by creating the functions or finding and patching bugs. These contributions are done through Trac. https://core.trac.wordpress.org. of the week ♥️
@nayanchamp7 and @wangql

Core committers: @sergeybiryukov (13), @desrosj (7), @ryelle (2), @whyisjake (1), and @peterwilsoncc (1).

#5-7-1, #5-8, #week-in-core

A Week in Core – March 8, 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 March 1st and March 8, 2021.

  • 20 commits
  • 42 contributors
  • 64 tickets created
  • 9 tickets reopened
  • 81 tickets closed

You might have noticed that the activity on Core is still pretty high this week, as we are very close to release WordPress 5.7.

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.

Code changes

Build/Test Tools

  • Ensure the test_php_and_js_shortcode_attribute_regexes_match() test can run when testing using either the src or build directory – #51734
  • Pin SHA versions to the remaining 3rd party actions – #52625
  • Generalize the NPM test workflow – #52658
  • Add path detection when running GitHubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ Actions on pull_request#52667
  • Change the cancel-workflow-action version to a SHA value – #52625
  • Pin the welcome-action to a specific commit SHA – #52625

Bundled Themes

  • Twenty Twenty-One: Make text readable when dark background is selected for the Media & Text 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.#52702
  • Twenty Twenty-One: Correct inner container background color for Cover Blocks – #52676
  • Twenty Fifteen & Twenty Sixteen: Remove extra space around post editor – #52646

Docs

  • Add a @since note to wp_admin_bar_edit_menu() about the “View Post” link on Comments screen for a single post – #42366

Editor

  • Classic Editor: Make sure word count is hidden if 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/. is disabled – #52662
  • Block Editor: Fix color support for dynamic blocks – #52709

Help/About

  • Clarify two strings – #52347
  • Clarify a string about lazy-loading iframes – #52347
  • Iterate on the 5.7 About Page – #52693

Roles/Caps

  • Return same result from current_user_can and user_can()#52076

Site Health

  • Do not store HTTPSHTTPS HTTPS is an acronym for Hyper Text Transfer Protocol Secure. HTTPS is the secure version of HTTP, the protocol over which data is sent between your browser and the website that you are connected to. The 'S' at the end of HTTPS stands for 'Secure'. It means all communications between your browser and the website are encrypted. This is especially helpful for protecting sensitive data like banking information. request error messages in an option – #52484

Upgrade/Install

  • Display version number on the “Update now” button on WordPress Updates screen – #52513
  • Upgrade/Install: Invalidate OPcache for version.php during update – #36455

XML-RPC

  • Pass an empty array to the xmlrpc_call action in methods that have no arguments – #52524

Props

Thanks to the 42 people who contributed to WordPress Core on Trac last week:

@johnbillion (6), @audrasjb (3), @SergeyBiryukov (3), @paaljoachim (3), @hellofromTonya (3), @desrosj (3), @sabernhardt (2), @peterwilsoncc (2), @davidbaumwald (2), @marybaum (2), @pbiron (2), @flixos90 (1), @tmatsuur (1), @tikifez (1), @lukecarbis (1), @dianeco (1), @mikeschroder (1), @kjellr (1), @sergeybiryukov (1), @cenay (1), @antonlukin (1), @krstarica (1), @stodorovic (1), @francina (1), @clorith (1), @TimothyBlynJacobs (1), @melchoyce (1), @sarahricker (1), @youknowriad (1), @rafhun (1), @nosolosw (1), @mukesh27 (1), @johnjamesjacoby (1), @ryelle (1), @poena (1), @jdy68 (1), @dd32 (1), @alexstine (1), @munyagu (1), @janak007 (1), @afragen (1), and @felipeelia (1).

Please join me to say welcome to our 3 new Core contributorsCore Contributors Core contributors are those who have worked on a release of WordPress, by creating the functions or finding and patching bugs. These contributions are done through Trac. https://core.trac.wordpress.org. of the week ♥️
@tikifez, @cenay, and @rafhun.

Core committers: @sergeybiryukov (6), @desrosj (6), @ryelle (4), @johnbillion (1), @peterwilsoncc (1), @noisysocks (1), and @mikeschroder (1).

Please note: it only includes commits with proper props attribution.

#5-7, #week-in-core

A Week in Core – March 1st, 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 February 22 and March 1st, 2021.

  • 27 commits
  • 44 contributors
  • 92 tickets created
  • 7 tickets reopened
  • 85 tickets closed

You might have noticed that the activity on Core is still pretty high this week, as we entered the WordPress 5.7 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). cycle.

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.

Code changes

Administration

  • Revert the change to click event handler for fly-out submenus – #52638

Bootstrap/Load

  • Check if the error_reporting() function exists in wp-load.php#52226

Build/Tests Tools

  • Add missing `@covers` tags for files in phpunit/tests/load/#39265
  • Add missing `@covers` tags for files in phpunit/tests/link/#39265
  • Split the PHPUnit tests for PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher versions below 7.0 in half, allowing them to run in parallel and reduce the overall test run duration
  • Avoid attempting to redeclare the origin remote prior to sending the test results to the test reporting 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.#51734
  • Switch back to running the PHPUnit test suite against the src directory instead of build#51734
  • Prevent the NPM/Composer caches in GitHubGitHub GitHub is a website that offers online implementation of git repositories that can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ Actions from snowballing – #52660
  • Disable fail-fast for PHPUnit testing – #52612
  • Reset current screen after setting it to dashboard in add_submenu_page() tests – #52607
  • Introduce a CONTRIBUTING.md file – #33043
  • Stop running the restapi-jsclient tests separately – #52608
  • Add a missing word to the CONTRIBUTING.md file – #33043
  • GitHub Actions – #52645

Bundled Themes

  • Twenty Twenty-One: Improve transparent PNG logo visible on focus – #52257

Docs

  • Use correct variable in the style_loader_tag 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. DocBlockdocblock (phpdoc, xref, inline docs)#52673
  • Improve documentation for WP_Block_Type properties – #48640

External Libraries

  • Install jQuery via NPM – #52647
  • Further fix jQuery deprecations in WordPress core – #51812
  • Correct click event handling in the Thickbox library – #52618

Help/About

  • Remove extra space in the 5.7 About page copy – #52632
  • WordPress 5.7 About Page – #52347

Security

  • move Content-Security-Policy script loaders – #39941

Script Loader

  • Prevent wp_localize_script() warnings – #52534

Users

  • Use localized site title for password reset emails – #52605
  • Only include the IP address in password reset email if the user is not logged in – #34281
  • Ensure reset password emails are in the receiving user’s localeLocale A locale is a combination of language and regional dialect. Usually locales correspond to countries, as is the case with Portuguese (Portugal) and Portuguese (Brazil). Other examples of locales include Canadian English and U.S. English.#52605
  • Relocate the Password Reset feature to the Account Management section – #52597

Props

Thanks to the 44 people who contributed to WordPress Core on Trac last week:

@peterwilsoncc (9), @audrasjb (6), @johnbillion (5), @SergeyBiryukov (4), @desrosj (3), @hellofromTonya (3), @jrf (3), @sephsekla (2), @chouby (2), @kraftbj (2), @johbillion (2), @adamsilverstein (2), @hedgefield (1), @davidbaumwald (1), @metalandcoffee (1), @noisysocks (1), @netweb (1), @melchoyce (1), @ad7six (1), @francina (1), @marybaum (1), @lukecarbis (1), @boonebgorges (1), @meher (1), @sarahricker (1), @ediamin (1), @webcommsat (1), @Ipstenu (1), @aristath (1), @Clorith (1), @gmariani405 (1), @carike (1), @ryelle (1), @sabernhardt (1), @poena (1), @tobifjellner (1), @jorbin (1), @gziolo (1), @iandunn (1), @ayeshrajans (1), @fijisunshine (1), @rima1889 (1), and @mukesh27 (1).

Please join me to say welcome to our 2 new Core contributorsCore Contributors Core contributors are those who have worked on a release of WordPress, by creating the functions or finding and patching bugs. These contributions are done through Trac. https://core.trac.wordpress.org. of the week ♥️
@fijisunshine and @rima1889.

Core committers: @sergeybiryukov (12), @desrosj (7), @johnbillion (3), @peterwilsoncc (3), and @ryelle (1).

Please note: it only includes commits with proper props attribution.

#5-7, #week-in-core

A Week in Core – February 22, 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 February 15 and February 22, 2021.

  • 41 commits
  • 63 contributors
  • 91 tickets created
  • 7 tickets reopened
  • 85 tickets closed

You might have noticed that the activity on Core continued to increase this week, as we are close to the end of WordPress 5.7 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. cycle. We’ll enter the 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). cycle on February 23. Worth also noting that WordPress 5.6.2 was released earlier today.

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.

Code changes

Administration

  • Apply background color to updated message 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 list table – #52452
  • Apply the months_dropdown_results 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. separately from pre_months_dropdown_query#51660

Build/Test tools

  • Tests: Add missing @covers tags for files in phpunit/tests/http/#39265

Bundled Themes

  • Twenty Twenty-One: Add the px unit to the adminadmin (and super admin) bar height custom property – #52564
  • Twenty Nineteen: Add some space between the cookies checkbox and label in comment form – #46601
  • Twenty Twenty-One: Remove background color from Social Links the dark gray style – #52499
  • Twenty Ten: Correct the fallback to the default 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. if the 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. width is narrower than the twentyten_header_image_width setting – #52516
  • Twenty Eleven: Correct the fallback to the default header if the featured image width is narrower than the twentyeleven_header_image_width setting – #52516
  • Twenty Twenty: Make sure the RTL list styles are preserved after npm run build#52401
  • Fix alignment and styles for quote, verse, and code blocks – #52009
  • Support font size option for code 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.#52431
  • Twenty Thirteen: Fix alignment of child blocks within the Cover block – #51224
  • Twenty Twenty-One: Display inline-images inline – #52287
  • Twenty Twenty-One: Match bullets between editor and frontend – #52412
  • Twenty Twenty-One: Add CSSCSS Cascading Style Sheets. source map files to committed files – #52377

Cron 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 a missing $wp_error parameter to the pre_reschedule_event filter – #52572

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.

  • Bring admin color schemes back into the customizer – #52230

Editor

  • Additional tests for reusable blocks – #52364
  • Update packages with bugbug A bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. fixes to be included in WP 5.7 beta 3 – #52525

Embeds

  • Allow posts with a public custom post status to be embedded – #47574

External Libraries

  • Upgrade PHPMailer to version 6.3.0 – #52577
  • Revert the change to the tb_click() function in the Thickbox library – #51812
  • Further fix jQuery deprecations in WordPress core – #51812

Feeds

  • Fix the URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org returned by get_feed_link() when pretty permalinks are not in use – #51839

Filesystem API

  • Make sure to only call fread() on non-empty files in the PclZip library – #52018

General

  • Add noindex robots 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. 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.) to search results – #52457

Internationalization

  • Remove extra spaces from translatable strings in Privacy help tabs – #52583

Media

  • Explicitly declare the $pagenow global in wp_get_attachment_url()#52606
  • Associate upload errors and field with controls – #47120

Posts, Post Types

  • Rename the new post parent conditional tag functions for clarity – #33045
  • Prevent duplicates in sticky posts option – #52007
  • Update the styling of the legacy Links editing screen – #48782

Security

  • Fix bug in wp_is_local_html_output()#52542

Site Health

  • Update loopback test to POST to wp-cron – #52547
  • Use home page for loopback test – #52547

Script Loader

  • Prevent wp_localize_script() warnings – #52534
  • Explicitly declare the $pagenow global in wp_deregister_script()#52566

TaxonomyTaxonomy A taxonomy is a way to group things together. In WordPress, some common taxonomies are category, link, tag, or post format. https://codex.wordpress.org/Taxonomies#Default_Taxonomies.

  • Optimize wp_delete_term() for large object counts without a default term – #52549
  • AccessibilityAccessibility Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility): Correct keyboard navigation for the Tags meta box in classic editor – #52408

Users

  • Correctly display an error message after clicking the “Send Reset Link” button – #52573

XML-RPC

  • Pass the method arguments and the XML-RPC server instance to the xmlrpc_call action – #52524

Props

Thanks to the 63 people who contributed to WordPress Core on Trac last week:

@peterwilsoncc (10), @poena (10), @sabernhardt (7), @audrasjb (7), @mukesh27 (5), @SergeyBiryukov (5), @jrf (3), @paaljoachim (3), @talldanwp (2), @johnbillion (2), @macmanx (2), @ayeshrajans (2), @TimothyBlynJacobs (2), @melchoyce (2), @dd32 (2), @afragen (2), @kjellr (2), @kburgoine (1), @antonlukin (1), @tobifjellner (1), @cristinasoponar (1), @pbiron (1), @burnuser (1), @ryelle (1), @grzim (1), @DavidAnderson (1), @yakimun (1), @fierevere (1), @hauvong (1), @afercia (1), @anevins (1), @antpb (1), @adamsilverstein (1), @jeroenrotty (1), @mahfuz01 (1), @tejwanihemant (1), @patopaiar (1), @desrosj (1), @joedolson (1), @hellofromTonya (1), @abagtcs (1), @johnjamesjacoby (1), @lukecarbis (1), @tmatsuur (1), @clorith (1), @nico23 (1), @bernhard-reiter (1), @Levdbas (1), @rahmohn (1), @archon810 (1), @burtrw (1), @ryokuhi (1), @jonoaldersonwp (1), @goaroundagain (1), @xkon (1), @bordoni (1), @garrett-eclipse (1), @monikarao (1), @Boniu91 (1), @almendron (1), @jose64 (1), @alexstine (1), and @isabel_brison (1).

Please join me to say welcome to our 10 new Core contributorsCore Contributors Core contributors are those who have worked on a release of WordPress, by creating the functions or finding and patching bugs. These contributions are done through Trac. https://core.trac.wordpress.org. of the week ♥️
@cristinasoponar, @burnuser, @grzim, @mahfuz01, @tejwanihemant, @abagtcs, @nico23, @goaroundagain, @almendron, and @jose64.

Core committers: @sergeybiryukov (18), @peterwilsoncc (9), @ryelle (7), @johnbillion (4), @flixos90 (1), @joedolson (1), and @youknowriad (1).

Please note: it only includes commits with proper props attribution.

#5-6-1, #5-7, #week-in-core