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

  • 65 commits
  • 120 contributors
  • 49 tickets created
  • 9 tickets reopened
  • 64 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


  • Further update the language in wp-config-sample.php#37199

Build/Test Tool

  • Use deterministic module ids in webpack for media – #53192
  • Use hashed/deterministic moduleIDs in webpack config – #53192
  • Use the new concurrency setting for 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 – #53080
  • Use assertInstanceOf() instead of assertTrue() in some tests – #52625
  • Improve PHPUnit version retrieval – #52625
  • Remove trailing commas in function calls in _wp_array_get() tests – #51461, #51720, #52625
  • Rename classes in phpunit/tests/privacy/ per the naming conventions – #52625
  • Rename some classes in phpunit/tests/theme/ per the naming conventions – #52625
  • Correct description for the Tests_Functions_wpArraySet class – #53175, #52625
  • Add missing tests for the _wp_array_get() function – #51461, #51720, #52625


  • Some documentation and test improvements for WP_Theme_JSON and WP_Theme_JSON_Resolver classes: – #52991, #53175
  • Use 3-digit, x.x.x-style semantic versioning for two _doing_it_wrong() calls – #52628
  • Include @since in register_block_type definition – #53233

Bundled Themes

  • Twenty Twenty: Hide some elements for print that are not useful in that context – #50433
  • Twenty Twenty-One: Re-add px unit to the adminadmin (and super admin) bar height custom property – #52624, #52564
  • Update devDependencies for default themes – #52624
  • Twenty Twenty-One: Update devDependencies#52624
  • Twenty Nineteen: Update theme information in the package.json file – #53196
  • Twenty Twenty: Update theme information in the package.json file – #53196
  • Twenty Twenty: Correct label attribute references to aria_label in get_search_form#51877, #53225
  • Themes: Add an indication of whether a theme is a child themeChild theme A Child Theme is a customized theme based upon a Parent Theme. It’s considered best practice to create a child theme if you want to modify the CSS of your theme. https://developer.wordpress.org/themes/advanced-topics/child-themes/. on networknetwork (versus site, blog) admin Themes screen – #30240


  • Use 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 context in filters that used the editor name – #52920
  • Hide the quicktags toolbar when 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 – #40570
  • Update color merging algorithm – #53175
  • Add Global Styles support using 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. file – #53175
  • Remove gutenberg text domain from Query and Social Links block patterns – #53265, #53248
  • Remove unused param in get_default_block_editor_settings#52920
  • Rename the unit testunit test Code written to test a small piece of code or functionality within a larger application. Everything from themes to WordPress core have a series of unit tests. Also see regression. file for _wp_array_set function – #53175
  • Fix failing unit test for 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. support in theme.json#52991
  • Remove editor type specific filters for block editor configuration – #52920
  • Rename should_load_separate_core_block_assets for consistency – #50328
  • Add Global Settings support using theme.json file – #53175
  • Extend register_block_type to accept the path file or folder with block.json#53233
  • Update WordPress packages published for 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.6 – #52991
  • Update lodash to the latest version 4.17.21 – #52991
  • Add missing class WP_Block_Editor_Context – #52920
  • Extract block_editor_rest_api_preload method for use with different editor screens – #52920
  • Add missing unit tests for block_has_support#53257, #52991
  • Updated the WordPress packages from Gutenberg 10.7.0 RCrelease candidate One of the final stages in the version release cycle, this version signals the potential to be a final release to the public. Also see alpha (beta).#52991
  • Add missing unit tests for construct_wp_query_args#53240, #52991
  • Removed useless block editor render context value – #53250
  • Block Patterns: Include the Query and Social Icons block patterns from Gutenberg 10.7.0 – #53248


  • Combine escaping and translationtranslation The process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. functions – #53153
  • Improve the wording of some error messages – #50382


  • KSES: Allow calc() and var() values to be used in inline CSSCSS Cascading Style Sheets.#46197, #46498
  • KSES: Remove duplicate object-position property – #52991


  • Avoid unnecessary calls to update_user_option()#43339
  • Some documentation and test improvements for the _wp_array_set()#53175, #52625
  • Add _wp_array_set function – #53175
  • Ensure consistent type for integer properties of a bookmark object – #53235
  • Ensure consistent type for integer properties of WP_Post, WP_Term, and WP_User#53235, #52995
  • List Tables: Wrap long search terms onto a new line – #52749


  • Some documentation and test improvements for the 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.: – #52867
  • Introduces image_editor_output_format filter for setting default MIME type of sub size image output – #52867


  • Do not auto-set locations for new menus – #52949


  • Add support for Update URI 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.#14179, #23318, #32101

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

  • add a new filter for revisions to keep by post type – #51550

Script Loader

  • Stop loading polyfills specific to Internet Explorer – #53078

Site Health

  • Make sure the submit_button() function is available in request_filesystem_credentials()#53206
  • Skip REST tests during scheduled events – #52112


  • Make sure WP_Widget constructor creates a correct classname value for a namespaced 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. class – #44098
  • Make sure WP_Widget constructor creates a correct id_base value for a namespaced widget class – #44098


  • Set HTTPHTTP HTTP is an acronym for Hyper Text Transfer Protocol. HTTP is the underlying protocol used by the World Wide Web and this protocol defines how messages are formatted and transmitted, and what actions Web servers and browsers should take in response to various commands. status code in accordance with the spec – #52958


Thanks to the 120 (!) people who contributed to WordPress Core on Trac last week:

@SergeyBiryukov (9), @youknowriad (6), @poena (5), @ntsekouras (5), @nosolosw (5), @johnbillion (5), @desrosj (4), @mukesh27 (4), @peterwilsoncc (3), @audrasjb (3), @williampatton (3), @joyously (3), @jorgefilipecosta (3), @sabernhardt (3), @Boniu91 (2), @azaozz (2), @gziolo (2), @jorbin (2), @hermpheus (2), @hellofromTonya (2), @justinahinon (2), @ocean90 (2), @hareesh-pillai (2), @chrisvanpatten (2), @timothyblynjacobs (2), @nhuja (1), @mweichert (1), @DavidAnderson (1), @meloniq (1), @miqrogroove (1), @afragen (1), @markjaquith (1), @apedog (1), @DrewAPicture (1), @markparnell (1), @JeroenReumkens (1), @design_dolphin (1), @filosofo (1), @grapplerulrich (1), @sean212 (1), @earnjam (1), @rmccue (1), @infolu (1), @dingdang (1), @jdgrimes (1), @crazycoders (1), @Ipstenu (1), @nvartolomei (1), @chriscct7 (1), @mordauk (1), @knutsp (1), @GaryJ (1), @benoitchantre (1), @TJNowell (1), @gMagicScott (1), @Otto42 (1), @mikejolley (1), @juliobox (1), @aspexi (1), @Rarst (1), @ryno267 (1), @lev0 (1), @jb510 (1), @gregorlove (1), @jamesbonham (1), @GeekStreetWP (1), @khromov (1), @georgestephanis (1), @joostdevalk (1), @damonganto (1), @dd32 (1), @davidbaumwald (1), @olafklejnstrupjensen (1), @jeremyfelt (1), @Mte90 (1), @ariskataoka (1), @kjellr (1), @Presskopp (1), @karmatosed (1), @Travel_girl (1), @helen (1), @jacklenox (1), @bradt (1), @seanchayes (1), @welcher (1), @Mista-Flo (1), @dpik (1), @Clorith (1), @lakrisgubben (1), @DeusTron (1), @obenland (1), @zkancs (1), @johnjamesjacoby (1), @jrf (1), @rogerlos (1), @dlh (1), @displaynone (1), @grantmkin (1), @aristath (1), @arkrs (1), @mcsf (1), @matveb (1), @dimadin (1), @jeremy80 (1), @kishanjasani (1), @ipulc2 (1), @sergiomdgomes (1), @Chouby (1), @dartiss (1), @TimothyBlynJacobs (1), @szaqal21 (1), @sahilmepani (1), @sumitsingh (1), @antpb (1), @mikeschroder (1), @spacedmonkey (1), @adamsilverstein (1), @schlessera (1), @swissspidy (1), and @dougwollison (1).

Congrats and welcome to our 11 (!) new contributors of the week! @jeremy80, @hermpheus, @ariskataoka, @dpik, @lakrisgubben, @DeusTron, @zkancs, @grantmkin, @arkrs, @ipulc2, and @sahilmepani. ♥️

Core committers: @sergeybiryukov (26), @gziolo (16), @desrosj (8), @youknowriad (5), @jorgefilipecosta (2), @peterwilsoncc (2), @davidbaumwald (2), @adamsilverstein (1), @antpb (1), @ryelle (1), and @clorith (1).

#5-8, #week-in-core