A Week in Core – February 6, 2023

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

  • 86 commits
  • 137 contributors
  • 66 tickets created
  • 14 tickets reopened
  • 91 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

  • Add unit tests for wp_set_password hook – #57436
  • Update json2php package – #57535
  • Update npm dependencies – #57535
  • Update npm dependencies for bundled themes – #57535

Bundled Themes

  • Twenty Fourteen: Correctly reflect text color changes in Pullquote 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.#56006
  • Twenty Sixteen: Fix Gallery block images alignement – #56412
  • Twenty Twenty-Two: Improve spacing for the legacy Post Comments block – #57560

Code Modernization

  • Allow some parameters with reserved keywords in wp-includes/class-wp-text-diff-renderer-*.php#56788
  • Rename parameters that use reserved keywords in wp-includes/formatting.php#56788
  • Fix a PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 5.6.20 or higher 8 deprecation warning in category-template.php uasort() helper – #57358, #56790

Coding Standards

  • Add missing escaping function in Custom_Image_Header::show_header_selector()#57638
  • Rename the $cat_ID variable to $cat_id in wp_update_category()#56754

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.

  • Improve the docs for some cron event and cron schedule related functions – #56792

Docs

  • Capitalize X-Pingback in discover_pingback_server_uri() DocBlockdocblock (phpdoc, xref, inline docs)#54225
  • Document directory support in FTP/SSH2 filesystem ::move() methods – #57604
  • Document the inserter property in WP_Block_Patterns_Registry::register()#56792
  • Fix couple of typos in inline docsinline docs (phpdoc, docblock, xref)#57575
  • Fix typo in the send_auth_cookies 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. DocBlock – #56971, #39367
  • Improve documentation for block pattern properties – #56792
  • Improve the DocBlock for get_attached_file()#51780, #56792
  • Remove a duplicate line in the send_auth_cookies filter DocBlock – #56971, #39367
  • Use consistent format for the @return tags in _wp_object_name_sort_cb() and _wp_object_count_sort_cb()#57358, #56792

Editor

  • Add ID support to block wrapper attributes – #56852
  • Update WP_Theme_JSON_Resolver and improve its performance – #57545
  • Add ‘wp-polyfill’ to _wp_get_iframed_editor_assets() for inert attribute in Firefox – #57552
  • Add Template types to the patterns API
  • Add missing WP_Theme_JSON::process_blocks_custom_css() method – #57621
  • Add missing controls to flex layouts in wp_get_layout_style()#57602
  • Add support for custom CSSCSS Cascading Style Sheets. in global styles – #57536
  • Add support for editing block style variations in global styles – #57583
  • 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. site editor intialization changes 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/ 15.1 – #57480
  • Improve performance of gutenberg_render_layout_support_flag
  • Introduce minimum height dimensions block support – #57582
  • Remove need for template prefix in get_template_hierarchy – #57614
  • Remove unnecessary CSS comments from compiled styles – #56388
  • Separate content styles for iframeiframe iFrame is an acronym for an inline frame. An iFrame is used inside a webpage to load another HTML document and render it. This HTML document may also contain JavaScript and/or CSS which is loaded at the time when iframe tag is parsed by the user’s browser. in __wp_get_iframed_editor_assets() and wp_default_styles() – #57550
  • Support the block_types and viewport_width props for remote patterns fetched from Pattern Directory – #57611
  • Updated the WordPress packages to include Gutenberg 15.1.0 changes – #57471
  • Use WP_HTML_Tag_Processor in wp_render_elements_support()#57642
  • Use a non-persistent object cache instead of transient in wp_get_global_stylesheet()#57568
  • Introduce HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. API with HTML Tag Processor – #57575

Embeds

  • Add oEmbed support for crowdsignal.net surveys – #57543
  • Update YouTube provider for live URLs – #57632
  • Use documented mixcloud.com oembed endpoint – #57376

Emoji

  • Always skip nodes with the wp-exclude-emoji CSS class – #52219
  • Fix emoji feature detection – #57301

External Libraries

  • Update jQuery Migrate to version 3.4.0 – #56743

Filesystem API

  • Add directory support to WP_Filesystem_Direct::move()#57375
  • Add test for uncovered WP_Error in move_dir()#57375
  • Prevent fatal error in move_dir()#57375
  • Simplify two conditionals in move_dir()#57375
  • Update move_dir() to better handle the differences in the WP_Filesystem::move() methods – #57375

Formatting

  • Guard wp_strip_all_tags() against fatal errors – #56434

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

  • Fix a 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. failure found after [55210]#54225
  • Fix request 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. inconsistencies – #54225
  • Restore one instance of the X-Pingback header capitalization – #54225

Help/About

  • Update help tab texts to consistently describe button labels – #57608

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.

  • Improve method names in WP_Locale_Switcher()#57123
  • I18N: Pass $locale parameter to override_load_textdomain filter – #57056

KSES

  • Allow position-related CSS properties – #57504

Media

  • Add a Download row action to the Media List Table – #57574
  • Add argument to get_attached_file() for subsizes – #51780
  • Allow to omit decoding="async" on tags from wp_get_attachment_image()#57086
  • Ensure media IDs are type int in bulk editing – #56170
  • Fix inconsistent font weight in media detail views – #54509
  • Fix upload not visible if added after deleting media – #49178
  • Hide ‘view’ link if empty string passed to attachment_link – #54824
  • Maintain the functionnality of the deprecated WP_Media_List_Table::column_desc() method – #39710
  • Pass $size argument to get_attached_file filter – #51780
  • Properly escape Download row action link in Media List Table – #57574
  • Remove 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. data after restoring w/IMAGE_EDIT_OVERWRITE – #55150
  • Remove unwanted quotation marks for playlist template – #50865
  • Replace consecutive periods in sanitize_file_name()#57242

Plugins

  • Rephrase Add Plugins screen description for better clarity – #57155

Posts, Post Types

  • Add test coverage for _truncate_post_slug()#56868, #56793
  • Deprecate get_page_by_title() in favour of WP_Query#57041

Query

  • Add a search_columns argument to control which fields are searched in a search query – #43867
  • Revert [55169]#56689
  • Use WP_Query in get_page_by_path#56689

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

  • Declare ‘edit_css’ capability in links within WP_REST_Global_Styles_Controller#57526

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 way to filter the revisions considered for deletion – #57320

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.

  • Implement wp_cache_get_multiple in wp_queue_posts_for_term_meta_lazyload#57150

Themes

  • Add caching to WP_Theme::is_block_theme()#57114
  • Add shadow presets support 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.#57559
  • Increase HTTP timeout for Theme API requests – #57315

Upgrade/Install

  • Send language pack updates to copy_dir()#57557
  • Silence Requests deprecations before preloading – #54504
  • Use move_dir() instead of copy_dir() in WP_Upgrader::install_package() when possible – #57557

Users

  • Add context to the send_auth_cookies filter – #56971, #39367
  • Add support for RoboHash GravatarGravatar Is an acronym for Globally Recognized Avatar. It is the avatar system managed by WordPress.com, and used within the WordPress software. https://gravatar.com/. images in default user profile pics – #57493
  • Change parameters order in send_auth_cookies filter – #56971
  • Update get_avatar_url() and get_avatar() to include RoboHash support – #57493

Widgets

  • Preserve classic sidebars when switching to a block theme – #57531

Props

Thanks to the 137 (!) people who contributed to WordPress Core on Trac last week: @costdev (36), @mukesh27 (22), @audrasjb (20), @sergeybiryukov (15), @peterwilsoncc (13), @flixos90 (13), @ntsekouras (9), @afragen (7), @spacedmonkey (7), @mamaduka (7), @oandregal (6), @hellofromtonya (6), @azaozz (6), @adamsilverstein (5), @desrosj (5), @joedolson (5), @robinwpdeveloper (5), @andrewserong (5), @aristath (5), @youknowriad (5), @swissspidy (4), @dd32 (4), @jrf (4), @ironprogrammer (4), @sabernhardt (4), @poena (4), @hellofromTonya (4), @scruffian (3), @joen (3), @ocean90 (3), @Mista-Flo (3), @Mamaduka (3), @joemcgill (3), @isabel_brison (3), @pbiron (3), @aaronrobertshaw (3), @bgoewert (2), @glendaviesnz (2), @jorgefilipecosta (2), @davidbaumwald (2), @kebbet (2), @felixarntz (2), @gziolo (2), @onemaggie (2), @jameskoster (2), @petitphp (2), @noisysocks (2), @johnjamesjacoby (2), @dmsnell (2), @matveb (1), @ryokuhi (1), @paulschreiber (1), @cadic (1), @ndiego (1), @naeemhaque (1), @amin7 (1), @tahmidulkarim (1), @krupalpanchal (1), @jhned (1), @hilayt24 (1), @ellatrix (1), @tellthemachines (1), @maximej (1), @ramonopoly (1), @paaljoachim (1), @madhudollu (1), @timothyblynjacobs (1), @talldanwp (1), @mmtr86 (1), @dsas (1), @antpb (1), @zebaafiashama (1), @rnitinb (1), @iapial (1), @viralsampat (1), @jeawhanlee (1), @mitogh (1), @wildworks (1), @donncha (1), @cbirdsong (1), @eherman24 (1), @ajlende (1), @szaqal21 (1), @ahortin (1), @miguelaxcar (1), @patelhitesh (1), @tanazmasaba (1), @revgeorge (1), @Webrocker (1), @soean (1), @matclayton (1), @Soean (1), @mahbubshovan (1), @adeltahri (1), @stalukder03 (1), @a4jpcom (1), @juliobox (1), @chintan1896 (1), @sergiomdgomes (1), @slieschke (1), @jeherve (1), @ruchirj (1), @chocofc1 (1), @birgire (1), @johnbillion (1), @abidhasan112 (1), @arrasel403 (1), @james-roberts (1), @Presskopp (1), @hvar (1), @10upsimon (1), @umesh84 (1), @amitbarai013 (1), @dlh (1), @arthurshlain (1), @andraganescu (1), @justlevine (1), @get_dave (1), @zieladam (1), @bernhard-reiter (1), @antonvlasenko (1), @bronsonquick (1), @TimothyBlynJacobs (1), @xknown (1), @ArtZ91 (1), @shamayel007 (1), @mhkuu (1), @jigar-bhanushali (1), @otto42 (1), @iandunn (1), @iqbalrony (1), @oh_hello (1), @tahminar27 (1), @ira2910 (1), @zoonini (1), @silicium23 (1), and @justinahinon (1).

Congrats and welcome to our 21 (!!) new contributors of the week: @zebaafiashama, @rnitinb, @iapial, @patelhitesh, @tanazmasaba, @mahbubshovan, @adeltahri, @stalukder03, @slieschke, @ruchirj, @chocofc1, @abidhasan112, @james-roberts, @amitbarai013, @ArtZ91, @shamayel007, @iqbalrony, @oh_hello, @tahminar27, @ira2910, @silicium23 ♥️

Core committers: @audrasjb (24), @sergeybiryukov (13), @flixos90 (9), @hellofromtonya (9), @peterwilsoncc (7), @azaozz (7), @joedolson (7), @jorgefilipecosta (5), @spacedmonkey (3), @desrosj (3), @youknowriad (2), @swissspidy (1), and @johnbillion (1).

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