Welcome back the latest issue of Week in CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress., covering changes [37457-37550]. Here are the highlights:
- 93 commits
- 33 contributors
- 67 tickets created
- 11 tickets reopened
- 77 tickets closed
Ticketticket Created for both bug reports and feature development on the bug tracker. numbers based on trac timeline for the period above. The following is a summary of commits, organized by component.
Code Changes
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)
Administration
- During password reset, user-submitted login/email should be stripslashed. This prevents errors when an email address contains an apostrophe. See [29966] for similar treatment of a related problem. [37474] #36322
- Refine the 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 credentials form interaction. Properly toggle SSH2 Authentication Keys fieldset visibility. [37467] #34376
Customize
- Make sure that preview and return URLs are URLs. [37527] #
- Replace 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. reference to
$_SERVER['customized']with$_POST['customized']. Introduced in r31421. [37520] #36852 - Add setting validation model and control notifications to augment setting sanitization. See #30937. [37476] #35210, #30937, #34893
Database
- Don’t generate unnecessary warnings in
wpdb::query(). [37548] #23085 - Support backticks around field names when parsing a query for the field type. [37538] #20263
- Remove debug comments in
dbDelta(). [37533] # - Reduce the number of
strtolower()calls indbDelta(). [37532] #36919 dbDelta()will no longer try to downgrade the size ofTEXTandBLOBcolumns. [37525] #36748- Remove some duplicate code.
schema.phpwas manually defining the character set/collation query, instead of usingwpdb::get_charset_collate(). [37524] #35756 - Use the
utf8mb4_unicode_520_cicollation, when available. [37523] #32105 - Obey 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.-specific
utf8collation settings. [37521] #32405
Docs
- Fix the hook doc for
upgrader_process_completeto notate all values that might be present in thehook_extraarray in the various update contexts. h/t Nextendweb. [37550] #32246 - The
$contextparameter inremove_meta_box()is not optional. [37545] #32246 - Apply inline
@seetags to 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. referenced in DocBlocks in following list of files. Applying these specially-crafted@seetags allows the Code Reference parser to recognize and link these elements as actions and filters. - Standardize 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. docs in root folder files to use third-person singular verbs per the inline documentation standards for PHPPHP The web scripting language in which WordPress is primarily architected. WordPress requires PHP 7.4 or higher. [37535] #36913
- Update the return notation for
get_current_screen()to note thatnullcan also be returned if the screen has not been defined. [37534] #36382 - Standardize filter docs in following files:
- remaining
wp-includes/*[37518] #36913 wp-includes/l10n.php[37517] #36913wp-includes/feed.php[37516] #36913wp-includes/formatting.php[37515] #36913wp-includes/class-http.php[37514] #36913wp-includes/embed.php[37513] #36913wp-includes/comment.php[37512] #36913wp-includes/ms-functions.php[37511] #36913wp-includes/functions.php[37510] #36913wp-includes/query.php[37509] #36913wp-includes/pluggable.php[37508] #36913wp-includes/option.php[37507] #36913wp-includes/taxonomy.php[37506] #36913wp-includes/media.php[37505] #36913wp-includes/post.php[37504] #36913wp-includes/user.php[37503] #36913wp-includes/post-thumbnail-template.php[37502] #36913wp-includes/post-template.php[37501] #36913wp-includes/nav-menu-template.php[37500] #36913wp-includes/link-template.php[37499] #36913wp-includes/general-template.php[37498] #36913wp-includes/comment-template.php[37497] #36913wp-includes/category-template.php[37496] #36913wp-includes/author-template.php[37495] #36913wp-includes/bookmark-template.php[37494] #36913wp-includes/theme.php[37493] #36913- core classes in
wp-includes/*[37492] #36913 - 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. classes [37491] #36913
- remaining
- Standardize hook docs in following files:
- Remove/replace invalid inline
@linktags in DocBlocks in: - Fix some parameter alignment and backtick-escaping in two DocBlocks in
wp-admin/includes/media.php. [37484] #32246 - Remove invalid inline
@linktags from docs inwp-admin/includes/media.php. [37483] #36910 - Improve
@returndocumentation forWP_Comment_Query::get_comments(). [37482] #36896 - Correct
@sincetagtag 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 Emoji SVG filters [37473] #36525 - Correct variable type for
WP_Upgrader::$strings. [37462] #36883 - Fix an incorrect Codex link in the file 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. for
wp-includes/cache.php. Introduced in [7990]. [37460] #36880
Embeds
- Ensure embed widths are integers. This prevents a warning in PHP trunktrunk A directory in Subversion containing the latest development code in preparation for the next major release cycle. If you are running “trunk”, then you are on the latest revision. when a non-integer width is passed. [37549] #36435
Emoji
- Use SVG in supported browsers. [37471] #36525
- Allow emoji in
blognameandblogdescriptiononutf8installs. [37469] #36122
External Libraries
- Update jQuery to 1.12.4. Merge of [37433] and [37526] to the 4.5 branchbranch A directory in Subversion. WordPress uses branches to store the latest development code for each major release (3.9, 4.0, etc.). Branches are then updated with code for any minor releases of that branch. Sometimes, a major version of WordPress and its minor versions are collectively referred to as a “branch”, such as “the 4.0 branch”.. [37528] #36533
- Update jQuery to 1.12.4. #36533
- Update jQuery Migrate to 1.4.1 [37472] #36892
- After [37402], replace two more instances of
split()withexplode()inwp-includes/atomlib.php. [37461] #20673
Menus
Multisitemultisite Used to describe a WordPress installation with a network of multiple blogs, grouped by sites. This installation type has shared users tables, and creates separate database tables for each blog (wp_posts becomes wp_0_posts). See also network, blog, site
- Clean up
WP_Errordocumentation and handling inwp-signup.php[37547] #36927 - Disable autocapitalize and autocorrect for
user_nameinput on signup [37546] #36833 - Introduce
WP_Site_QueryProvides a consistent way to query$wpdb->blogsforWP_Siteobjects. [37477] #35791 - Wrap the main bootstrap process in a function Introduce
ms_load_current_site_and_network. [37475] #34941 - Introduce
get_site(). [37468] #35791 - Filter the links displayed on “Edit Site” views. [37466] #15800
Post Types
- In
get_page_by_path(), values fetched from cache should obey$outputparam. Introduced in [37479]. [37481] #36711 - Cache queries in
get_page_by_path(). [37479] #36711 - Improve tests for
get_page_by_path(). Move existing test into its own file. Add tests that cover most pieces of functionality. [37478] #36711
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.
get_terms()‘search’ test should have more precise fixtures. [37519] #13992, #35381- Move
get_the_terms()tests to their own file. [37480] #36814 - Introduce
requiredargument forwp_dropdown_categories(). This allows the HTML5requiredattribute to be added to theselectelement. [37465] #31909 - Move
wp_dropdown_categories()tests into their own file. [37464] #31909 - Beautify, simplify, lovelify, alignify the default argument array in
wp_dropdown_categories(). [37463] #31909
Template
- In
wp_get_archives()useadd_query_arg()instead ofsprintf()to build the archive URLURL A specific web address of a website or web page on the Internet, such as a website’s URL www.wordpress.org. [37530] #36414
Tests
- Remove a test for a function […]
wpdb::init_charset()which doesn’t lend itself to being tested. [37522] #32405 - Fix an incorrect
@ticketheader included in [37469]. [37470] #36122 - Correct usage of @Covers for Tests_Post_Types. [37459] #36867, #35985
Props
Thanks to @afercia, @barryceelen, @bassgang, @boonebgorges, @Bueltge, @c3mdigital, @celloexpressions, @craig-ralston, @davidmosterd, @dcavins, @DrewAPicture, @flixos90, @jeremyfelt, @johnjamesjacoby, @jorbin, @josephscott, @mbijon, @michaelbeil, @mrahmadawais, @mt8biz, @Mte90, @ocean90, @pcarvalho, @pento, @peterwilsoncc, @rafaelangeline, @screamingdev, @SergeyBiryukov, @spacedmonkey, @sudar, @tloureiro, @travisnorthcutt, @westonruter, and @wzislam for their contributions!