Welcome back to a new issue of Week in Core 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 Trac 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
Ticket 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 PHP 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
Customizer 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
header 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
filter 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()
docblock (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 PHPCS 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 loop 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 block 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
HTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers. API 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
shortcode 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, Meta 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 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
Revisions 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