A Week in Core – February 26, 2024

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 19 and February 26, 2024.

  • 53 commits
  • 100 contributors
  • 73 tickets created
  • 5 tickets reopened
  • 71 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

  • Bump the Node.js version for Codespaces – #60555
  • Fix docblocks in a couple of test files to use two asterisks – #60513
  • Revert r57684#59647
  • Update JSHint config to remove deprecated options – #28236
  • Mock 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. response 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 Dependencies tests – #59647
  • Query mariadb.org instead of mariadb.com in README test – #59647
  • Synchronize 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. 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. between Core and 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/#60387
  • Use assertSame() in WP_REST_Navigation_Fallback_Controller tests – #59655
  • Use assertSame() in comment_exists() tests – #59655
  • Use assertSame() in new_admin_email_subject 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. test – #59655
  • Use assertSame() in wp_insert_post() tests – #59655
  • Use assertSame() in wp_read_image_metadata() tests – #59655

Bundled Themes

  • Twenty Twenty-Three: Update XX-large font-sizes for 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)#58603

Coding Standards

  • Fix alignment in tests – #34668
  • Correct alignment in wp_get_attachment_image_src()#59650

Docs

  • Add a @since note for $preferred_ext parameter in wp_mime_type_icon()#31352
  • Correct the URLs that document the available images for MySQLMySQL MySQL is a relational database management system. A database is a structured collection of data where content, configuration and other options are stored. https://www.mysql.com/. and MariaDB for the local development environment – #59930
  • Improve docblockdocblock (phpdoc, xref, inline docs) for $x_redirect_by param in wp_redirect()#60209
  • Use more inclusive term in rest_filter_response_fields docblock – #59651

Editor

  • Add fallback for blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. version when registering block script module – #60233
  • Add id to the supported Image’s binding attributes – #60577
  • Allow symlinks in directories provided to get_block_asset_url()#59175, #58525
  • Ensure font collection metadata can be properly localized – #60509
  • Fix instance element styles for links applying to buttons – #60557
  • Format and sanitize font family names according the CSSCSS Cascading Style Sheets. spec – #60537
  • Improve PHPUnit tests for block pattern registration – #59532
  • Load pattern content only when used – #59532
  • Update Packages with the latest 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 for 6.5 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. 2 (Round 2) – #60315
  • Update Packages with the latest bug fixes for 6.5 beta 2 – #60315
  • Block 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.: Allow hooked_block filters to return null – #60580
  • Block Hooks: Fix actual/expected order in test assertions – #60506
  • Block Hooks: Introduce a new hooked_block filter – #60574
  • Block Hooks: Make test a bit easier to read – #60580

Export

  • Include 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. for posts or pages – #17379

General

  • Handle missing field in WP_List_Util::pluck() – #59774

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.

  • Do not set translationtranslation The process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. controller 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. in bootstrap – #59656

Media

  • Ensure wp_mine_type_icon() returns expected file type – #31352
  • Fix broken media modal following [57688]#58973
  • Prevent Media Library 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. from showing with no actions – #58973

Plugins

  • Plugin Dependencies: Remove auto-deactivation and bootstrapping logic – #60457, #60491, #60510, #60518
  • Output plugin card elements in the order they’re displayed – #60488

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

  • Pass correct context to embedded items – #43439

Script Loader

  • Add hooks for script modules and interactivity API only on after_setup_theme#60411
  • Fix small typo in wp_remove_surrounding_empty_script_tags docblock – #60591
  • Inject wp_remove_surrounding_empty_script_tags function name in returned error string using sprintf – #60590

Shortcodes

  • Fix small typo in inline documentation – #60603

Themes

  • Use original template paths when switching blogs – #60290

Toolbar

  • Accessibility: Keyboard navigation for screen readers – #34668, #43633

Upgrade/Install

  • Fix upgrade count decrement on Updates page – #60589
  • Improve plugin install button appearance – #60494
  • Normalize major versions in is_wp_version_compatible()#59448

Props

Thanks to the 100 (!) people who contributed to WordPress Core on Trac: @swissspidy (16), @costdev (8), @joedolson (6), @mukesh27 (6), @joemcgill (5), @youknowriad (5), @gziolo (4), @huzaifaalmesbah (4), @afragen (3), @hellofromTonya (3), @shailu25 (3), @SergeyBiryukov (3), @sabernhardt (2), @afercia (2), @netweb (2), @azaozz (2), @kkmuffme (2), @thekt12 (2), @Ankit-K-Gupta (2), @zunaid321 (2), @antpb (2), @poena (2), @dhruvishah2203 (2), @mmaattiiaass (2), @spacedmonkey (2), @jghazally (2), @audrasjb (2), @aaronrobertshaw (2), @get_dave (2), @scruffian (2), @abletec (1), @Cheffheid (1), @alexstine (1), @sparklingrobots (1), @danieltj (1), @dionysous (1), @jorbin (1), @sessioncookiemonster (1), @wazeter (1), @oglekler (1), @kevin940726 (1), @naoki0h (1), @kirasong (1), @iamarunchaitanyajami (1), @davidbinda (1), @helgatheviking (1), @nendeb55 (1), @mikachan (1), @ryokuhi (1), @sruthi89 (1), @nithi22 (1), @ivanzhuck (1), @ukdrahul (1), @grantmkin (1), @flixos90 (1), @manfcarlo (1), @metropolis_john (1), @jeremyfelt (1), @aristath (1), @billseymour (1), @nateallen (1), @petitphp (1), @duck_ (1), @jane (1), @rcain (1), @smub (1), @batmoo (1), @axwax (1), @creativeslice (1), @dlocc (1), @nacin (1), @wonderboymusic (1), @ganon (1), @hlashbrooke (1), @chriscct7 (1), @fischfood (1), @hifidesign (1), @bosskhj (1), @antonlukin (1), @maxpertici (1), @peterwilsoncc (1), @joshuatf (1), @tomjcafferkey (1), @itschristiandale (1), @mahnewr (1), @rudlinkon, @kraftbj (1), @freewebmentor (1), @ajlende (1), @dennysdionigi (1), @bgardner (1), @westonruter (1), @bernhard-reiter (1), @mamaduka (1), @timothyblynjacobs (1), @dd32 (1), @desrosj (1), @pbiron (1), @nithins53 (1), @kafleg (1), and @vivekawsm (1).

Congrats and welcome to our 14 (!) new contributors of the week: @jghazally, @abletec, @sessioncookiemonster, @wazeter, @iamarunchaitanyajami, @sruthi89, @ukdrahul, metropolis_john, @billseymour, @rcain, @axwax, @creativeslice, @ganon, @hifidesign ♥️

Core committers: @swissspidy (13), @sergeybiryukov (7), @joedolson (6), @youknowriad (5), @costdev (4), @joemcgill (3), @hellofromtonya (3), @bernhard-reiter (3), @audrasjb (3), @gziolo (2), @peterwilsoncc (1), @kadamwhite (1), @johnbillion (1), and @desrosj (1).

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

A Week in Core – February 12, 2024

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 5 and February 12, 2024.

  • 71 commits
  • 245 contributors
  • 82 tickets created
  • 11 tickets reopened
  • 82 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 contrast and consistency of focus styles – #51870

Bundled Themes

  • Twenty Fifteen: Add top margin to the File 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. button styles – #58498
  • Twenty Nineteen: Add border-radius to avatarAvatar An avatar is an image or illustration that specifically refers to a character that represents an online user. It’s usually a square box that appears next to the user’s name. images in the editor – #59285
  • Twenty Nineteen: Correct line height for Button block – #58443
  • Twenty Nineteen: Restore transition property to a single line – #58443
  • Twenty Sixteen: Add border-radius to avatar images in the editor – #59253
  • Twenty Twenty-Four: Add missing translationtranslation The process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. functions to text strings – #60298
  • Twenty Twenty-Four: Prefix the block pattern categoryCategory The 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. name – #59839
  • Twenty Twenty-Three: Include Latin-extended characters in DM Sans font files – #59008
  • Twenty Twenty-Two: Prefix the pages block pattern category name – #59839
  • Twenty Twenty: Fix Table block default and custom border colors – #58022
  • Twenty Twenty: Scope .privacy-policy styles to the footer only – #60469
  • Improve focus outline in Twenty Twenty-Four – #60334
  • Cast font URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org functions to string for add_editor_style()#59704

Build/Test Tools

  • Fix bugbug A bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. pulling local environment containers on Apple silicone – #59930
  • Generate a human-readable HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. coverage report – #60476
  • Make the props bot message shorter – #60417
  • Pin a specific commit for Hosting Test Reporter – #59647
  • Revert [57551]#59647
  • Unpin PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher 7.4 from the test coverage workflow – #59647
  • Adjust the 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. key time in wp_scheduled_delete() tests – #59938

Canonical

  • Introduce admin_canonical_url 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.#59545

Coding Standards

  • Add missing fullstop to docblocks in wp-includes/vars.php#41877
  • Replace alias join() in WP_Font_Utils#60473

Editor

  • Add viewScriptModule handling to block.json metadata – #60233
  • Add wakeup magic method to the block bindings registry – #60282
  • Avoid double escaping on value passed for attribute in HTML tagtag A directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.) processor
  • Expand Block Bindings for button block – #60481
  • Fix block style variation selector generation – #60453
  • Fix typo in FontUtils doc block – #59166
  • Improve code documentation for block bindings – #60282
  • Introduce WP_Block_Bindings_Source class – #60447
  • Make asset file optional for block scripts – #57234
  • Refactor block binding processing and attribute computation – #60282
  • Register the Google Font collection – #59166
  • Show the patterns page for classic themes – #58827
  • Update PHPDocPHPDoc (docblock, inline docs) for block bindings’s context arg – #59743
  • Update pattern overrides attribute format – #60456
  • Update the WordPress packages to 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/ 17.7RC1 – #60315
  • Block 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.: Inject hooked blocks into modified templates and parts – #59646
  • Blocks: Allow reading the script handle from asset files – #60485
  • Interactivity 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.: Integrate Server Directive Processing – #60356
  • Interactivity API: Remove empty file – #60356

Filesystem API

  • Fix typo in ftp_base::restore()#60497

General

  • Add an option to configure the site icon in general settings – #54370, #16434
  • Remove ableist language from code comments – #60247

HTML API

  • Add subclassed has_bookmark() and fix seek() – #60474
  • Join text nodes on invalidinvalid A resolution on the bug tracker (and generally common in software development, sometimes also notabug) that indicates the ticket is not a bug, is a support request, or is generally invalid.-tag-name boundaries – #60385

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

  • Add Translator comments for Planet URLs – #58010

Media

  • Update progress spinner position on small screens – #33049
  • enable control of progressive image output – #21668

Networks and Sites

  • Improve switch_to_blog() docblockdocblock (phpdoc, xref, inline docs)#60332

Permalinks

  • Detect Caddy web server support – #41877

Plugins

  • Store 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 deletion results in temporary option – #59433

Quick/Bulk Edit

  • Pre-fill category fields with their status – #11302

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

  • Add featured_media field to attachments endpoint – #41692
  • Improve error handling in REST meta fields – #48823
  • Introduce the necessary endpoints for the font library – #59166
  • Provide detailed error data in REST API response – #60014

Script Loader

  • Add a timezone offset display value to wp.date.setSettings – #60105
  • Improve translators comments for wp.date.setSettings in compat file – #60412
  • always output core block global styles after base global styles – #60280
  • Add deregister module function – #60463

Shortcodes

  • Always return an array in shortcode_parse_atts()#59249

Themes

  • Add ‘theme_files’ cache group to block pattern cache operations – #60120
  • update add_theme_support docblock – #60221

Toolbar

  • Add adminbar link for new sites in networknetwork (versus site, blog) installs – #41104

Upgrade/Install

  • Avoid update_option() calls during bootstrap – #60461, #60457, #60491
  • Upgrade/Install: Introduce Plugin Dependencies – #22316
  • Micro-optimizations for getting plugin_file in plugins loader 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.#60510
  • Remove unnecessary individual subfiles from $_old_files array – #58995

Users

  • Replace table tags for color palettes in profiles – #53157

Props

Thanks to the 245 (!!) people who contributed to WordPress Core on Trac: @gziolo (14), @mukesh27 (13), @swissspidy (13), @sabernhardt (13), @poena (12), @shailu25 (11), @huzaifaalmesbah (9), @youknowriad (8), @oglekler (7), @joedolson (7), @jorbin (7), @audrasjb (7), @spacedmonkey (6), @SergeyBiryukov (6), @dmsnell (6), @get_dave (6), @hellofromTonya (5), @afercia (5), @kebbet (5), @harshgajipara (5), @johnbillion (5), @costdev (4), @nicolefurlan (4), @jonsurrell (4), @czapla (4), @TimothyBlynJacobs (3), @karmatosed (3), @pbiron (3), @desrosj (3), @afragen (3), @azaozz (3), @luisherranz (3), @dingo_d (2), @mikeschroder (2), @andraganescu (2), @johnjamesjacoby (2), @rajinsharwar (2), @nidhidhandhukiya (2), @cbravobernal (2), @dd32 (2), @wildworks (2), @pooja1210 (2), @wasiur195 (2), @scribu (2), @ajmcfadyen (2), @peterwilsoncc (2), @pitamdey (2), @santosguillamot (2), @isabel_brison (2), @bernhard-reiter (2), @mcsf (2), @ocean90 (2), @aaronrobertshaw (2), @sadpencil (1), @cfinnberg (1), @viliamkopecky (1), @ecc (1), @rcorrales (1), @cvorko (1), @flixos90 (1), @joemcgill (1), @adamsilverstein (1), @_ck_ (1), @markoheijnen (1), @Japh (1), @pmeenan (1), @derekspringer (1), @buley (1), @ericlewis (1), @bahia0019 (1), @born2webdesign (1), @kushang78 (1), @timothyblynjacobs (1), @wonderboymusic (1), @dlh (1), @obenland (1), @jameskoster (1), @kjellr (1), @stacimc (1), @h71 (1), @krupajnanda (1), @jordesign (1), @monzuralam (1), @hrrarya (1), @fnpen (1), @mhshohel (1), @bedas (1), @jeremyfelt (1), @prionkor (1), @matveb (1), @benniledl (1), @jsnajdr (1), @mnydigital (1), @onemaggie (1), @luminuu (1), @pouicpouic (1), @ugyensupport (1), @jivygraphics (1), @sumitbagthariya16 (1), @kkmuffme (1), @talldanwp (1), @dartiss (1), @upadalavipul (1), @manfcarlo (1), @mayur8991 (1), @panchalhimani711 (1), @itpathsolutions (1), @thakordarshil (1), @Ankit-K-Gupta (1), @darshitrajyaguru97 (1), @pavelevap (1), @chasedsiedu (1), @helen (1), @joshcanhelp (1), @ubernaut (1), @Cyberchicken (1), @laumindproductscomau (1), @Marcoevich (1), @tomybyte (1), @thinkluke (1), @virtality-marketing-solutions (1), @Michalooki (1), @itecrs (1), @pannelars (1), @WHSajid (1), @samba45 (1), @Mte90 (1), @tomluckies (1), @soulseekah (1), @francina (1), @webcommsat (1), @balub (1), @sarathar (1), @glendaviesnz (1), @up1512001 (1), @zodiac1978 (1), @davidbinda (1), @westonruter (1), @retrofox (1), @joefusco (1), @colorfultones (1), @acosmin (1), @alh0319 (1), @beafialho (1), @javiercasares (1), @mmaattiiaass (1), @grantmkin (1), @oandregal (1), @ajlende (1), @ahoereth (1), @alanfuller (1), @alexkingorg (1), @amykamala (1), @anonymized_10690803 (1), @apeatling (1), @ashfame (1), @atimmer (1), @aristath (1), @batmoo (1), @beaulebens (1), @blobaugh (1), @bobbingwide (1), @boonebgorges (1), @brianhenryie (1), @chanthaboune (1), @chrisdavidmiles (1), @coolmann (1), @courane01 (1), @danielbachhuber (1), @davidperez (1), @Denis-de-Bernardy (1), @DJPaul (1), @dougal (1), @DrewAPicture (1), @ethitter (1), @filosofo (1), @georgestephanis (1), @giuseppemazzapica-1 (1), @goldenapples (1), @griffinjt (1), @husobj (1), @ideag (1), @jarednova (1), @jbobich (1), @jbrinley (1), @jltallon (1), @johnciacia (1), @joppuyo (1), @jsmoriss (1), @knutsp (1), @kraftbj (1), @kraftner (1), @kurtpayne (1), @lkraav (1), @logikal16 (1), @man4toman (1), @markjaquith (1), @matt (1), @mbijon (1), @megphillips91 (1), @mikeschinkel (1), @mordauk (1), @morehawes (1), @mrwweb (1), @mte90 (1), @mzaweb (1), @nacin (1), @norcross (1), @nvwd (1), @nwjames (1), @obliviousharmony (1), @paaljoachim (1), @pauldewouters (1), @pbaylies (1), @Philipp15b (1), @pogidude (1), @retlehs (1), @rmccue (1), @ryan (1), @sabreuse (1), @sc0ttkclark (1), @sereedmedia (1), @ShaneF (1), @shidouhikari (1), @soean (1), @stephenh1988 (1), @taylorde (1), @tazotodua (1), @threadi (1), @TJNowell (1), @tollmanz (1), @toscho (1), @tropicalista (1), @Viper007Bond (1), @westi (1), @whiteshadow (1), @williamsba1 (1), @wpsmith (1), @ZaneMatthew (1), @noisysocks (1), @kevin940726 (1), and @fabiankaegy (1).

Congrats and welcome to our 28 (!!) new contributors of the week: @sadpencil, @cfinnberg, @viliamkopecky, @ecc, @cvorko, @pmeenan, @derekspringer, @born2webdesign, @kushang78, @hrrarya, @fnpen, @mhshohel, @benniledl, @mnydigital, @up1512001, @alh0319, @anonymized_10690803, @blobaugh, @chrisdavidmiles, @giuseppemazzapica-1, @jltallon, @johnciacia, @logikal16, @pbaylies, @Philipp15b, @pogidude, @tropicalista, @whiteshadow ♥️

Core committers: @gziolo (11), @youknowriad (10), @sergeybiryukov (8), @audrasjb (7), @joedolson (7), @swissspidy (5), @desrosj (5), @spacedmonkey (3), @jorbin (3), @costdev (3), @hellofromtonya (2), @dmsnell (2), @isabel_brison (2), @adamsilverstein (1), @davidbaumwald (1), and @bernhard-reiter (1).

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

Four Weeks in Core – October 9, 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 September 4 and October 9, 2023.

Please note that exceptionally and because of personal vacations, this Week in Core issue covers 4 weeks 😊

  • 269 commits
  • 337 contributors
  • 295 tickets created
  • 43 tickets reopened
  • 277 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.

Continue reading

#6-4, #core, #week-in-core

Two Weeks in Core – September 4, 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 August 21 and September 4, 2023.

  • 75 commits
  • 150 contributors (!)
  • 25 new contributors (!)
  • 129 tickets created
  • 13 tickets reopened
  • 117 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

  • Escape post type output as field attribute – #59190

Build/Test Tools

  • Avoid doing copy:dynamic when running grunt watch when using --dev option – #59196
  • Change the version of Node.js in the Codespaces container – #56658
  • Compare results in performance measurement workflow – #58358, #58359
  • Enable running the tests on PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher 8.3 – #59231
  • Ensure database containers are prepared for commands – #30462, #58867
  • Expand database testing to account for all supported versions and types – #30462
  • Implicitly pass secrets to the called workflow – #30462
  • Merge pre-commit changes missed in [56439]#30462
  • Revert unintentional .env change in [56449]#56594
  • Tests_Formatting_MakeClickable should use data providors – #57660
  • Correct uses of ReflectionProperty::setValue() for static properties – #59231
  • Fix coding standards for Tests_Admin_wpUserSearch#41125
  • Remove webfonts tests – #59165

Bundled Theme

  • Twenty Nineteen: Improve social media icon dimension attributes – #45950
  • Ensure that pull quotes are able to use the correct font size – #57854

Coding Standards

  • Remove unused global variables in various /wp-admin/includes/ files – #59254
  • Use strict comparison in wp-includes/class-wp-hook.php#58831
  • Use strict comparison in wp-includes/class-wp-widget.php#58831
  • Use strict comparison in wp-includes/ms-files.php#58831
  • Use strict comparison in wp-includes/ms-site.php#58831

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.

  • use the correct X-Robots-Tag 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.#58865

Database

  • Improve the documentation for various methods in the wpdb class – #58833
  • Remove support for the mysql extension – #59118

Docs

  • Add missing param description in WP_Comment class – #58890
  • Clarify post_date_column_time 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 – #59029
  • Correct default post type in page_template_dropdown() docblockdocblock (phpdoc, xref, inline docs)#58972
  • Docblock improvements in _deprecated_class() function, as per docblocks standards – #58833
  • Fix typo in a translator comment in _deprecated_class()#58833
  • Improve PHPCSPHP Code Sniffer PHP Code Sniffer, a popular tool for analyzing code quality. The WordPress Coding Standards rely on PHPCS. comments general consistency – #58833
  • Use third-person singular verbs in various function descriptions, as per docblocks standards – #58833
  • Wrap inline @see tags in curly braces – #58858

Editor

  • Add relative time strings for the wp-date inline script output – #59219, #47373
  • Don’t use fluid layout value in typography – #58754
  • Ensure main 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. is entered for singular content in blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. themes – #58154
  • Optimize wp_get_block_css_selector to remove array_merge calls for better performance – #59178
  • Preserve block style variations when securing theme – #59108
  • Introduce font-face styles generator and printer – #59165

External Libraries

  • Update jQuery to version 3.7.1 – #59227
  • Upgrade PHPMailer to version 6.8.1 – #59238 – #58833

General

  • Fix coding standards for translatable _deprecated_class() message strings – #41125
  • Introduce a _deprecated_class() function – #41125
  • Replace two esc_url_raw() calls in core with sanitize_url()#59247
  • Use regular core button styles for page header actions – #41986

HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.

  • Stop processing HTML when encountering unsupported markup – #59167
  • Update WP_Http class to avoid PHP deprecation warnings – #58876

Help/About

  • Match icon and text in Help for bulk edit button – #58785

Login and Registration

  • Improve test coverage for sign on related functions – #36476

Media

  • Add a filter to the get_available_post_mime_types() function to allow overriding its database query – #52759
  • Prevent warning if shortcodeShortcode A shortcode is a placeholder used within a WordPress post, page, or widget to insert a form or function generated by a plugin in a specific location on your site. is used without attributes – #59206
  • Remove unused $is_IE and $is_opera globals in media_upload_form()#59254

Menus

  • Fix proximity of controls to Save and Delete menus – #56594
  • Revert unintentional changes in [56449]#56594

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

  • Introduce prime_options() to load multiple options with a single database request – #58962
  • Introduce wp_set_option_autoload_values()#58964

Performance

  • Add fallback for $script_uri to prevent firing plugins_url() unnecessarily – #59181

Plugins

  • Correctly display spaces in new plugins search results – #59143

Posts, Post Types

  • Avoid redundant SQL query in get_pages() – #59224
  • Reinstate missing sort_column options in get_pages() – #59226
  • Remove redundant function calls in get_body_class()#43661

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

  • Remove misleading comment in WP_REST_Blocks_Controller->get_item_schema – #59193

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 missing escaping function for $post_edit_link in wp-admin/revision.php#59141

Rewrite Rules

  • Prevent stampedes when flush_rewrite_rules() is called – #58998

Site Health

  • Show correct debug value for file uploads – #58737
  • fix check name used for REST API permission checks – #59236

Upgrade/Install

  • Add missing escaping function for get_option( 'home' ) in upgrade.php#59199
  • Remove unused globals in core_upgrade_preamble()#59254

Upload

  • Add a MIME type exception for .docx generated by Google Docs – #57898
  • Correct duplicate MIME type for .xlsx files generated by Google Docs – #57898

Users

  • Call add_user_meta() instead of update_user_meta() when adding metadata to a new user – #59212
  • Properly deprecate both constructors in WP_User_Search#41125
  • Remove unused wpdb global in check_password_reset_key()#59185

Widgets

  • Improve performance of has_content method in WP_Widget_Media_Gallery class – #58757

XML-RPC

  • Remove unused wpdb global in wp_xmlrpc_server::mw_newMediaObject()#59185

Props

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

@mukesh27 (14), @costdev (11), @sergeybiryukov (10), @joemcgill (8), @flixos90 (7), @jrf (7), @poena (6), @aristath (5), @afercia (5), @upadalavipul (5), @spacedmonkey (5), @rajinsharwar (4), @desrosj (4), @azaozz (4), @Presskopp (4), @jorbin (3), @oglekler (3), @ramonopoly (3), @swissspidy (3), @david.binda (3), @westonruter (2), @hellofromTonya (2), @oandregal (2), @boonebgorges (2), @tabrisrp (2), @gziolo (2), @daxelrod (2), @johnbillion (2), @hztyfoon (2), @davidbaumwald (2), @sabernhardt (2), @jeffpaul (2), @nidhidhandhukiya (2), @niravsherasiya7707 (1), @michelleblanchette (1), @dhruvishah2203 (1), @matthewfarlymn (1), @elrae (1), @DrewAPicture (1), @rmccue (1), @ohryan (1), @wvega (1), @ahardyjpl (1), @nekojonez (1), @dilipbheda (1), @TobiasBg (1), @Synchro (1), @aslamdoctor (1), @maltfield (1), @szepeviktor (1), @bvreeman22 (1), @johnregan3 (1), @johnjamesjacoby (1), @iammehedi1 (1), @jordanpak (1), @adhun (1), @nithi22 (1), @huzaifaalmesbah (1), @deepakvijayan (1), @zunaid321 (1), @olliejones (1), @laurelfulford (1), @maxinacube (1), @l1nuxjedi (1), @pento (1), @netweb (1), @nacin (1), @crstauf (1), @armondal (1), @tahmidulkarim (1), @crunnells (1), @TimothyBlynJacobs (1), @JordanPak (1), @emailjoey (1), @melchoyce (1), @michaelarestad (1), @danieltj (1), @helen (1), @viralsampat (1), @adamsilverstein (1), @iCaleb (1), @maciejmackowiak (1), @archon810 (1), @rcorrales (1), @varjodesigns (1), @jivygraphics (1), @whyisjake (1), @90lines (1), @sc0ttkclark (1), @jakariaistauk (1), @djcowan (1), @arena (1), @askdesign (1), @bph (1), @bradley2083 (1), @colorfultones (1), @dingo_d (1), @domainsupport (1), @annezazu (1), @dryanpress (1), @elmastudio (1), @francina (1), @garrett-eclipse (1), @gigitux (1), @grantmkin (1), @antonvlasenko (1), @andraganescu (1), @ironprogrammer (1), @Michi91 (1), @youknowriad (1), @jastos (1), @aurooba (1), @dsas (1), @jonoaldersonwp (1), @grapplerulrich (1), @jb510 (1), @annashopina (1), @soean (1), @wildworks (1), @zaguiini (1), @winterstreet (1), @mujuonly (1), @mi5t4n (1), @audrasjb (1), @simison (1), @mikeschroder (1), @manzoorwanijk (1), @adrianduffell (1), @ipajen (1), @dmsnell (1), @skorasaurus (1), @shiloey (1), @jeremyyip (1), @mburridge (1), @jffng (1), @joostdevalk (1), @jorgefilipecosta (1), @juanmaguitar (1), @mamaduka (1), @matveb (1), @mitogh (1), @scruffian (1), @ndiego (1), @ntsekouras (1), @ocean90 (1), @paaljoachim (1), @pagelab (1), @peterwilsoncc (1), @priethor (1), and @mattkeys (1).

Congrats and welcome to our 25 (!) new contributors of the week: @niravsherasiya7707, @michelleblanchette, @matthewfarlymn, @wvega, @ahardyjpl, @aslamdoctor, @maltfield, @bvreeman22, @iammehedi1, @jordanpak, @maxinacube, @l1nuxjedi, @JordanPak, @emailjoey, @varjodesigns, @jivygraphics, @90lines, @djcowan, @askdesign, @Michi91, @jastos, @winterstreet, @mi5t4n, @adrianduffell, @shiloey ♥️

Core committers: @sergeybiryukov (15), @audrasjb (13), @johnbillion (6), @desrosj (5), @swissspidy (4), @drewapicture (4), @jorbin (3), @peterwilsoncc (3), @joedolson (3), @joemcgill (3), @flixos90 (2), @isabel_brison (2), @hellofromtonya (2), @timothyblynjacobs (1), @davidbaumwald (1), @antpb (1), @kadamwhite (1), @spacedmonkey (1), @westonruter (1), @adamsilverstein (1), @bernhard-reiter (1), @costdev (1), and @whyisjake (1).

#6-4, #core, #week-in-core

A Week in Core – July 17, 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 July 10 and July 17, 2023.

  • 78 commits
  • 135 contributors
  • 61 tickets created
  • 12 tickets reopened
  • 70 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

  • Add a missing closing `span> tagtag A directory in Subversion. WordPress uses tags to store a single snapshot of a version (3.6, 3.6.1, etc.), the common convention of tags in version control systems. (Not to be confused with post tags.) for column sorting indicators – #32170, #57839

Bootstrap/Load

  • Require wp-includes/compat.php in src/index.php#58206

Build/Test Tools

  • Remove outmoded jsvalidate task from Gruntfil – #58645, #26615
  • Prevent 404 errors in the E2E tests – #58777
  • Reset main query object after each test – #58776
  • Suppress E2E test suite SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. notifications – #58779
  • Add tests to ensure the contribute Toolbar node is added when appropriate
  • Use assertSame() in Tests_Comment – #57855

Bundled Theme

  • fix height of featured images in Twenty Twenty Three – #58766
  • Twenty Seventeen: Use wp_register_script() to register HTML5 Shiv script – #56699
  • Twenty Twenty-Three: Add a border to Quote 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.#57506
  • Twenty Twenty-Three: Remove the perPage attribute where the query inherits from the global query. The global attribute should be used instead – #58581
  • Twenty Twenty-Three: Revert [55898]#58485

Code Modernization

  • Use str_contains() in a few more places – #58206

Coding Standards

  • Use single quotes for a string in Tests_Comment#57855
  • Use strict comparison for static strings in wp-admin/includes/class-wp-list-table.php#32170, #57839
  • Use strict comparison in wp-includes/class-wp-network.php#57839
  • Use strict comparison in wp-includes/class-wp-rewrite.php#57839
  • Use strict comparison in wp-includes/load.php#57839
  • Use strict comparison in wp-includes/rewrite.php#57839

Docs

  • Clarify where the wp_get_development_mode() value is retrieved from – #57487, #57840
  • Fix incorrect type for $crop param is various WP_Image_Editor classes and methods – #58271, #57840
  • Fix various incorrect @since mentions – #58834, #57840
  • Replace multiple single line comments with multi-line comments – #58459
  • Replace multiple single line comments with multi-line comments – #58459
  • Replace multiple single line comments with multi-line comments – #58459
  • Replace multiple single line comments with multi-line comments – #58459
  • Replace multiple single line comments with multi-line comments – #58459
  • Replace multiple single line comments with multi-line commentsProps costdev, audrasjb – #58459
  • Use consistent wording for development mode – #57487, #57840
  • Various docblocks corrections – #57840

Editor

  • Add test for context setting in Comment Template block – #58839
  • Fix a PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher notice appearing when adding a new template part – #57851
  • Fix bugbug A bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. where it was not possible to style custom block elements in theme.json#57868
  • Fix layout of no-js state in site editor – #56228
  • Fix open_basedir warnings on the classic Edit Post screen when additional TinyMCE plugins are use – #54354
  • Lazily load Duotone settings only when needed – #58673
  • fix duotone filters in classic themes – #58734#46132
  • fix since annotation in rest blocks controller class – #58677
  • opt out of Navigation fallback – #58750
  • remove one preloaded navigation endpoint – #58749
  • trim footnote anchors from post excerpts – #58805
  • update npm packages with bug fixes and blessed tasks – #58745
  • update npm packages with first round of bug fixes for 6.3 RC1 – #58804
  • update npm packages with second round of bug fixes for 6.3 RC1 – #58804
  • update string incorrectly marked for translationtranslation The process (or result) of changing text, words, and display formatting to support another language. Also see localization, internationalization. in Chrome – #58716

External Libraries

  • Update deprecated jQuery code in Farbtastic lib – #57946

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

  • Ensure wp_tempnam() does not produce file names longer than 255 characters as this is the limit on most filesystems – #35755

General

  • Escape nonce used for block theme activation – #58712
  • Introduce all development mode – #57487
  • Rename wp_in_development_mode() to wp_is_development_mode()#57487
  • add nonce for block theme preview activation – #58712
  • fix botched file move in r56199#58712

Help/About

  • Add a “Get Involved” tab to the About page – #23348
  • Adjust horizontal padding on the tabs under 960 pixels width – #23348
  • Fix closing contextual help when scrolled – #55342
  • Fix typo in [56171]: support forumSupport Forum WordPress Support Forums is a place to go for help and conversations around using WordPress. Also the place to go to report issues that are caused by errors with the WordPress code and implementations. “topic”, not “ticket”
  • String changes in the Contribute screen – #23348
  • Update the About page for 6.3 – #58067
  • Update “Get Involved” tab content with the latest edits – #23348

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 the use of dashicons-external icon for external links – #47303
  • Move translator comments inside sprintf for tagline field description – #57675

Media

  • Fix adminadmin (and super admin) image editor layout at intermediary widths – #58692
  • Fix responsive views in image editor – #58692
  • Improve layout of image rotation options panel – #58756
  • Optimize images created in shortcodes – #58681
  • Set default state for image rotation button – #58800
  • Stop using and deprecate set_imagick_time_limit(). Seems it causes more problems than it solves – #58202

Menus

  • Fix critical errors when the page_on_front and/or page_for_posts options contain references to non-existing posts – #58345

Script Loader

  • Improve test coverage for wp_print_scripts()#58648

Toolbar

  • Make the ‘Edit site’ link open the editor with the current template – #58746

Upgrade/Install

  • Add correct parameters to add_option in upgrade_630 – #58821

Props

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

@costdev (24), @mukesh27 (13), @audrasjb (13), @sergeybiryukov (12), @ramonopoly (9), @poena (9), @sabernhardt (8), @spacedmonkey (8), @flixos90 (8), @swissspidy (8), @joemcgill (7), @peterwilsoncc (7), @oglekler (7), @afercia (6), @joedolson (6), @azaozz (5), @mrinal013 (4), @aristath (4), @desrosj (3), @wildworks (3), @westonruter (3), @mikinc860 (3), @davidbaumwald (3), @richtabor (3), @eidolonnight (3), @andrewserong (3), @jpantani (2), @nithi22 (2), @annezazu (2), @priethor (2), @tobifjellner (2), @marybaum (2), @dunhakdis (2), @vivekawsm (2), @robinwpdeveloper (2), @meher (2), @mikeschroder (2), @get_dave (2), @SeReedMedia (2), @antpb (2), @Presskopp (2), @ryelle (2), @nithins53 (2), @jameskoster (2), @alexstine (2), @ajlende (2), @scruffian (2), @isabel_brison (2), @jorbin (2), @mikachan (2), @nacin (1), @jeffmora (1), @bridgetwillard (1), @jenmylo (1), @boemedia (1), @davidmusnik (1), @lukecavanagh (1), @mehdi01 (1), @hugobaeta (1), @TacoVerdo (1), @joostdevalk (1), @johnbillion (1), @markoheijnen (1), @helen (1), @bacoords (1), @fierevere (1), @skorasaurus (1), @andraganescu (1), @dhrumilk (1), @zoonini (1), @akrocks (1), @nidhidhandhukiya (1), @syamraj24 (1), @jomonthomaslobo1 (1), @Toro_Unit (1), @eric.7186 (1), @thunderdw (1), @paaljoachim (1), @courane01 (1), @clubkert (1), @Shelob9 (1), @beckej (1), @abitofmind (1), @Mamaduka (1), @thekt12 (1), @antonvlasenko (1), @mohiuddinomran (1), @estelaris (1), @webcommsat (1), @cathibosco1 (1), @deepakvijayan (1), @mt_suzette (1), @Malae (1), @soulseekah (1), @matt_fw (1), @ekazda (1), @densityapps (1), @mtxz (1), @hberberoglu (1), @dsar (1), @onemaggie (1), @TobiasBg (1), @Rahmohn (1), @oandregal (1), @glendaviesnz (1), @gudmdharalds (1), @saxonafletcher (1), @joen (1), @markoserb (1), @cbringmann (1), @clarkeemily (1), @peterwilson (1), @youknowriad (1), @karmatosed (1), @MadtownLems (1), @brasofilo (1), @jeryj (1), @nazmul111 (1), @Chouby (1), @suzettefranck (1), @ugyensupport (1), @ibrahimmonir (1), @njsamsatli (1), @rembem (1), @mcsf (1), @josklever (1), @wplindavantol (1), @hbhalodia (1), @dansoschin (1), @Heiko_Mamerow (1), @piotrek (1), @mai21 (1), @studionashvegas (1), @mikecho (1), and @doems (1).

Congrats and welcome to our 23 (!!) new contributors of the week: @jeffmora, @davidmusnik, @mehdi01, @beckej, @mohiuddinomran, @mt_suzette, @matt_fw, @ekazda, @densityapps, @mtxz, @hberberoglu, @dsar, @gudmdharalds, @saxonafletcher, @nazmul111, @suzettefranck, @ibrahimmonir, @njsamsatli, @rembem, @wplindavantol, @Heiko_Mamerow, @mikecho ♥️

Core committers: @audrasjb (17), @sergeybiryukov (17), @isabel_brison (13), @joedolson (7), @azaozz (6), @joemcgill (5), @peterwilsoncc (5), @davidbaumwald (2), @spacedmonkey (2), @ryelle (1), @bernhard-reiter (1), @flixos90 (1), @kadamwhite (1), @jorbin (1), and @mikeschroder (1).

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

Two Weeks in Core – April 3, 2023

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

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

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

Code changes

Administration

  • Update dashboard welcome panel colors, remove broken link – #57759

Build/Test Tools

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

Code Modernization

Coding Standards

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

Comments

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

Date/Time

Docs

  • Add missing@returntag forWP_Automatic_Updater::is_disabled()#57680
  • Clarify the::hide_process_failed()return value in pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party and theme installer – #57680
  • Document default values for optional parameters inwp_insert_attachment()#58043
  • Use typed array notation forsearch_columnsinWP_Query::parse_query()#57996

Editor

General

  • Remove Windows Live Writer manifest file – #41404

HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways.

  • Addhas_self_closing_flag()to Tag Processor – #58009

Help/About

  • Add Field GuideField guide The field guide is a type of blogpost published on Make/Core during the release candidate phase of the WordPress release cycle. The field guide generally lists all the dev notes published during the beta cycle. This guide is linked in the about page of the corresponding version of WordPress, in the release post and in the HelpHub version page. link – #57998
  • Make Field Guide link translatable – #57477
  • Updates to About page – #57477

Login and Registration

Options, MetaMeta Meta is a term that refers to the inside workings of a group. For us, this is the team that works on internal WordPress sites like WordCamp Central and Make WordPress. APIs

  • Improve the lazy loading meta API to include current object id – #57901

Posts, Post Types

  • Use WP_Query internally in get_pages – #12821

Script Loader

  • Return early in _wp_theme_json_webfonts_handler if theme.jsonJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML. not present – #57814

Upgrade/Install

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

Props

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

Congrats and welcome to our 8 new contributors of the week: @patelmohip, @akmelias, @wlindley, @grandslambert, @benjibee, @wpfy, @reputeinfosystems, @wtranch ♥️

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

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

A Week in Core – March 20, 2023

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

  • 30 commits
  • 70 contributors
  • 51 tickets created
  • 4 tickets reopened
  • 46 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

  • Define the $title global on the Menus screen for classic themes – #57918
  • Update dashboard welcome panel colors, remove broken link – #57759

Build/Test Tools

  • Fix issue with add method in object-cache.php – #57963
  • Revert [55553]#57864
  • Add test class for wp_enqueue_stored_styles()#57841
  • Add test class for wp_script_is()#57841, #57958
  • Improve documentation and variable names in some formatting tests – #57841
  • Rename test class and improve tests for wp_get_global_stylesheet() – #57841, #57958
  • Use the data_ prefix for various data provider methods – #57841

Cache 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 warning when calling _get_non_cached_ids with invalidinvalid A resolution on the bug tracker (and generally common in software development, sometimes also notabug) that indicates the ticket is not a bug, is a support request, or is generally invalid. ids – #57593
  • Correct the second parameter’s name in _get_non_cached_ids()#40420

Code Modernization

Coding Standards

  • Remove unused variable in WP_Plugins_List_Table::single_row()#55132
  • Remove unused variables in WP_Comment_Query#57482
  • Use single quotes for strings without variables in register_block_style_handle()#57903

Date/Time

  • Remove usage of mysql2date in generate_postdata method – #57683

Docs

  • Fix typo in _validate_cache_id() description – #57593

Editor

  • Correctly load RTL stylesheets for non-core blocks – #57903
  • Show scheduled text when changing to new future dates – #31040
  • Update wordpress packages for 6.2 RC2 – #57471#57895
  • Update wordpress packages for 6.2 RC3 – #57471, #57929

External Libraries

  • Upgrade PHPMailer to version 6.8.0 – #57873

Filesystem API

  • Return false for empty paths in FTPFTP FTP is an acronym for File Transfer Protocol which is a way of moving computer files from one computer to another via the Internet. You can use software, known as a FTP client, to upload files to a server for a WordPress website. https://codex.wordpress.org/FTP_Clients. ::exists() methods – #33058

HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. API

  • Add bookmark invalidation logic – #57788

Help/About

  • Add CDN images to About page – #57477
  • Updates to About page – #57477

KSES

  • Allow filter property to accept a URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org in safecss_filter_attr()#57780

Posts, Post Types

  • Use WP_Query internally in get_pages – #12821

Quick/Bulk Edit

  • Show scheduled in status for future drafts – #38834

Widgets

  • Defer register inline script in WP_Widget_Custom_HTML and WP_Widget_Text#57864

Props

Thanks to the 70 people who contributed to WordPress Core on Trac last week: @sergeybiryukov (8), @costdev (7), @hellofromTonya (6), @spacedmonkey (6), @flixos90 (4), @richtabor (3), @peterwilsoncc (3), @antonvlasenko (2), @audrasjb (2), @azaozz (2), @scruffian (2), @mamaduka (2), @ironprogrammer (2), @laurlittle (2), @jrf (2), @sabernhardt (2), @mkox (1), @joedolson (1), @ipstenu (1), @MrFlannagan (1), @oglekler (1), @upadalavipul (1), @dingo_d (1), @Rarst (1), @ayeshrajans (1), @Synchro (1), @Zdrobau (1), @tyxla (1), @dd32 (1), @pbiron (1), @mukesh27 (1), @bernhard-reiter (1), @dmsnell (1), @zieladam (1), @sakibmd (1), @westonruter (1), @nendeb55 (1), @david.binda (1), @tillkruess (1), @tobifjellner (1), @sdavis2702 (1), @jeryj (1), @markjaquith (1), @dbernar1 (1), @azouamauriac (1), @mikeschinkel (1), @nacin (1), @scribu (1), @filosofo (1), @jane (1), @garyc40 (1), @markoheijnen (1), @grandslambert (1), @kevinB (1), @wlindley (1), @atimmer (1), @ryokuhi (1), @mdawaffe (1), @helen (1), @benjibee (1), @johnbillion (1), @joemcgill (1), @andraganescu (1), @get_dave (1), @ntsekouras (1), @desrosj (1), @talldanwp (1), @thomask (1), @johnjamesjacoby (1), and @davidbaumwald (1).

Congrats and welcome to our 6 new contributors of the week: @MrFlannagan, @Zdrobau, @grandslambert, @wlindley, @benjibee, @thomask ♥️

Core committers: @sergeybiryukov (12), @hellofromtonya (7), @spacedmonkey (6), @ryelle (3), and @joedolson (2).

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

A Week in Core – January 23, 2022

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 16 and January 23, 2022.

  • 45 commits
  • 70 contributors
  • 66 tickets created
  • 10 tickets reopened
  • 48 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

  • Use a consistent capitalization in Privacy Policy related strings – #57226

Application Passwords

  • Disable spellcheck for password field – #56763

Build/Tests Tools

  • Add unique messages to assertions for attachment filenames in wp_mail()#28407
  • Correct additional_field_get_callback() parameters in some REST APIREST API The REST API is an acronym for the RESTful Application Program Interface (API) that uses HTTP requests to GET, PUT, POST and DELETE data. It is how the front end of an application (think “phone app” or “website”) can communicate with the data store (think “database” or “file system”) https://developer.wordpress.org/rest-api/. tests – #56793
  • Use wp_recursive_ksort() in WP_Theme_JSON_Resolver tests – #56793

Bundled Themes

  • Fix Separator 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. “Dots” style variation on various themes – #56114
  • Twenty Twenty-One: Disable spellcheck for post password field – #56763
  • Twenty Twenty-One: Fix obsolete navigation block styles for better Global Styles support – #53220
  • Twenty Twenty-One: Fix obsolete navigation block styles for better Global Styles support – #53220
  • Twenty Twenty-One: Revert [55088]#53220

Code Modernization

  • Rename parameters that use reserved keywords in phpunit/tests/functions/wpListFilter.php#56788
  • Rename parameters that use reserved keywords in phpunit/tests/functions/wpListPluck.php#56788
  • Rename parameters that use reserved keywords in phpunit/tests/functions/wpListSort.php#56788
  • Rename parameters that use reserved keywords in phpunit/tests/hooks/addFilter.php#56788
  • Rename parameters that use reserved keywords in phpunit/tests/kses.php#56788
  • Rename parameters that use reserved keywords in phpunit/tests/option/themeMods.php#56788
  • Rename parameters that use reserved keywords in phpunit/tests/pluggable/signatures.php#56788
  • Rename parameters that use reserved keywords in phpunit/tests/post.php#56788
  • Rename parameters that use reserved keywords in phpunit/tests/rest-api.php#56788
  • Rename parameters that use reserved keywords in phpunit/tests/rest-api/rest-*-controller.php#56788
  • Rename parameters that use reserved keywords in phpunit/tests/shortcode.php#56788
  • Rename parameters that use reserved keywords in phpunit/tests/widgets/wpWidgetMedia.php#56788
  • Rename parameters that use reserved keywords in wp-includes/functions.php#56788
  • Use correct property in IXR_Message::tag_open()#56790

Docs

  • Further clarify the wp_ajax_save_attachment 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. parameters description – #23148
  • Remove unused post_modified and post_modified_gmt params from wp_insert_post() docblockdocblock (phpdoc, xref, inline docs)#57473, #56792

Editor

  • Add inert attribute polyfill – #57492
  • Allow block pattern categories to have descriptions – #57478
  • Update packages to unblock lazy-loading issues – #56930
  • Updated the bundled block pattern categories – #57479

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.

  • Allow installing new translations when changing the user 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. on the profile page – #38664

Login and Registration

  • Disable spellcheck for password fields – #56763

Media

  • Add an action hook on wp_ajax_save_attachment()#23148
  • Allow for customization of lazy-loading featured images – #57490
  • Prevent hidden overflow on uploaded image names – #54812

Menus

  • Hide the “Remove selected item” from Menus screen when no item is selected – #56942

Permalinks

  • Remove floating on Permalinks settings screen – #56673, #55498

Plugins

  • Add visible focus on 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 modal close button – #56604

Posts, Post Types

  • Increase the input field’s width in the Slug metaboxMetabox A post metabox is a draggable box shown on the post editing screen. Its purpose is to allow the user to select or enter information in addition to the main post content. This information should be related to the post in some way.#16346
  • Use persistent caching in get_adjacent_post function – #41131

Quick/Bulk Edit

  • Add an action hook on bulk_edit_posts()#28112

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.

  • Remove placeholder from WP_Term_Query cache key – #57298

Themes

  • Introduce wp_theme_has_theme_json() for public consumption – #56975
  • Revert caching from r55086#56975

Upgrade/Install

  • Disable spellcheck for password field on Setup screen – #56763

Props

Thanks to the 70 people who contributed to WordPress Core on Trac last week: @poena (15), @sergeybiryukov (15), @jrf (14), @aristath (14), @justinahinon (13), @audrasjb (10), @costdev (6), @mukesh27 (5), @sabernhardt (4), @desrosj (3), @spacedmonkey (3), @gainesm (2), @fosuahmed (2), @flixos90 (2), @mamaduka (2), @dziudek (2), @Joen (2), @johnbillion (2), @hellofromTonya (2), @ocean90 (2), @helen (2), @kebbet (2), @peterwilsoncc (2), @joedolson (2), @mcsf (1), @swissspidy (1), @dshanske (1), @Spaceshipone (1), @nithi22 (1), @sarathar (1), @aravindajith (1), @ntsekouras (1), @joemcgill (1), @dd32 (1), @boonebgorges (1), @Otto42 (1), @dmsnell (1), @sumitsingh (1), @oandregal (1), @afragen (1), @alexstine (1), @azaozz (1), @sc0ttkclark (1), @barryceelen (1), @mrasharirfan (1), @umesh84 (1), @amin7 (1), @esratpopy (1), @multidots1896 (1), @ABTOP (1), @nacin (1), @abitofmind (1), @tyxla (1), @helgatheviking (1), @Mte90 (1), @afercia (1), @itowhid06 (1), @hellofromtonya (1), @pento (1), @mensmaximus (1), @dperonne (1), @viralsampat (1), @jeawhanlee (1), @griffinjt (1), @bradyvercher (1), @pputzer (1), @antpb (1), @bjorsch (1), @kraftbj (1), and @mehulkaklotar (1).

Congrats and welcome to our 5 new contributors of the week: @fosuahmed, @amin7, @esratpopy, @ABTOP, @abitofmind ♥️

Core committers: @sergeybiryukov (18), @audrasjb (15), @youknowriad (3), @joedolson (2), @flixos90 (2), @hellofromtonya (2), @spacedmonkey (2), and @swissspidy (1).

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

A Week in Core – October 17, 2022

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 October 10 and October 17, 2022.

  • 73 commits
  • 141 contributors
  • 67 tickets created
  • 7 tickets reopened
  • 100 tickets closed

The WordPress Security Team released WordPress 6.0.3 🚀

The Core team is currently working on the next major releasemajor release A release, identified by the first two numbers (3.6), which is the focus of a full release cycle and feature development. WordPress uses decimaling count for major release versions, so 2.8, 2.9, 3.0, and 3.1 are sequential and comparable in scope., WP 6.1 🛠

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 missing newline character on unit tests files after [54443]#56611
  • Add 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. for non-existing 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.-styles registration – #56664
  • Expand unit tests for theme.json#56611
  • Remove note about some PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher versions being allowed to fail – #56009
  • Update third-party 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 – #56820
  • Delete leftover image sub-sizes after WP_Customize_Manager tests – #56807
  • Relocate the tests for recommended PHP, MySQLMySQL MySQL is a relational database management system. A database is a structured collection of data where content, configuration and other options are stored. https://www.mysql.com/., and MariaDB versions – #45867
  • Revert unintentional change in [54508]#56817
  • Temporarily skip WOFF file test on PHP 8.2 – #56817
  • Use assertSame() in some WP_Theme_JSON tests – #55654

Bundled Themes

  • Bump version numbers for 6.1 – #56450
  • Twenty Nineteen: Add missing compiled CSSCSS Cascading Style Sheets. declarations after [54413]#55981
  • Twenty Seventeen: Prevent scaling issues on featured images using Safari on iPadOS – #48195
  • Twenty Ten: Adjust Pullquote Block paragraph font size – #56730
  • Twenty Twenty-Three: Bug fixes and improvements for RC1 – #56383

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

  • Introduce wp_cache_supports() function – #56605

Code Modernization

  • Add AllowDynamicProperties attribute to recently