Week In Core, May 31 – June 7 2016

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 [37601-37658]. Here are the highlights:

  • 58 commits
  • 23 contributors
  • 67 tickets created
  • 14 tickets reopened
  • 87 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)


  • Allow for the consistent filtering of auth_redirect_scheme [37651] #37047


  • Introduce filters for skipping parts of the bootstrap process. [37626] #34936

Build/Test Tools

  • Disable foreign_key_checks while dropping existing tables. [37654] #37046
  • Run prerelease as the precommit task for configuration file changes. [37650] #36528
  • Update grunt-patchpatch A special text file that describes changes to code, by identifying the files and lines which are added, removed, and altered. It may also be referred to as a diff. A patch can be applied to a codebase for testing.-wordpress to 0.4.0. [37612] #35917


  • In wp_list_comments(), queries with custom pagination params should obey default comment_status logic. [37655] #37048
  • Improve caching for hierarchical queries. [37625] #36487
  • Remove debugging code left in WP_Comments_List_Table->get_views(). Originally introduced in [9556] and leftover from [15578]. [37624] #36938
  • Use clean_comment_cache() in wp_insert_comment(). [37614] #36906
  • Make the ‘comment’ cache group persistent. [37613] #36906
  • Add tests demonstrating individual comment cache invalidation. [37609] #36906
  • Break the inline display of comment content urls on the Moderate Comment screen. [37607] #36568

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.

  • Template: Pass $blog_id to the get_custom_logo 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.. [37645] #36639


  • Tests: Fix an incorrect @ticket 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. introduced in [37601]. [37602] #32405, #36917
  • Split the logic of wpdb::init_charset() into a separate method. [37601] #32105, #37522, #36917


  • 'undefined' !== 'undefiend' Fix a typo in [37630]. [37632] #36662
  • Do not use the modal-open class to determine when the wpLink modal is open. [37630] #36662
  • wpLink: swap the order of innerText and textContent to avoid getting styled text in IE. [37621] #36783
  • Ensure the page is refreshed when the users navigate to it with the Back or Forward buttons. [37619] #35852
  • Autoresize. Resize on backspace. Don’t make it smaller than the minimum height. [37603] #36482


  • Auto-embedding: We already match URLs on their own line, add another regex to match URLs in their own paragraphs. Always exclude the \s<>" characters when matching. Add more unit tests. [37627] #25387

External Libraries

  • Update jQuery Migrate to 1.4.1. Merge of [37472] 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".. [37604] #36892


  • Docs: Relocate some @see tags and add missing @access tags to method and property DocBlocks in Walker_Nav_Menu. [37639] #32246
  • Autoload: Add missed @since tags to SPL shim. [37637] #36926
  • Docs: Reformat several parameter descriptions in Walker_Nav_Menu to directly reference wp_nav_menu() rather than use inline @see tags. [37638] #32246
  • Autoload: Introduce shim for SPL autoloading. [37636] #36926
  • Add tests for remove_query_arg(). [37631] #37008


  • Add tests demonstrating query cache invalidation on comment CRUDCRUD Create, read, update and delete, the four basic functions of storing data. (More on Wikipedia.) actions. [37608] #36909

Networks and Sites

  • Fix switch( spacing after [37657] [37658] #36717
  • Allow access to networknetwork (versus site, blog) and site properties using current naming conventions. 37657] #36717
  • Deprecate wp_get_sites(). Defer to the new get_sites() replacement, offering fresh (…or cached) WP_Site objects via the new WP_Site_Query. [37653] #36994
  • Remove the output parameter from get_site(). Full WP_Site objects should be expected from get_site() rather than arrays. [37652] #35791
  • Remove superfluous code from network_edit_site_nav(). [37629] #15800
  • Add initial tests for WP_MS_Sites_List_Table. [37633] #36675
  • Replace $wpdb->blog queries in get_site_by_path() with get_sites() [37628] #35791
  • Replace $wpdb->blog queries in ms-functions.php with get_sites(). [37620] #35791
  • Bump last_changed cache on site update and creation. [37618] #35791
  • Replace wp_get_sites() internals with get_sites(). [37617] #35791
  • Introduce get_sites(). get_sites() is a wrapper for WP_Site_Query. [37616] #35791

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

  • Create the general wp_check_jsonp_callback() function for validating JSONP callback functions. [37646] #28523

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.

  • Add a note about uniqueness to the doc 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. for get_term_by(). [37656] #36878
  • Tests: Compare wp_set_object_terms() results using term_taxonomy_id. Introduced in [37647]. [37649] #37009
  • Tests: Add tests demonstrating wp_set_object_terms() behavior when matching $terms. [37647] #37009
  • Tests: Move wp_set_object_terms() tests to their own file. This is a redo of [37642], this time not done in the not right place. [37644] #37009
  • Add test demonstrating that wp_insert_term() will suffix a slug if the new term’s auto-generated slug matches that of an existing term. [37641] #37009
  • Tests: Move wp_set_object_terms() tests to their own file. [37642] #37009
  • No, really, don’t pass results of ‘count’ query through ‘get_terms’ filter. [37634] #36992
  • Don’t pass results of ‘count’ query through ‘get_terms’ filter. [37623] #36992
  • Remove unused variable from get_terms(). Missed in [37572]. See #35381. [37622] #35381, #36992
  • Docs: Improve return descriptions for get_the_category() and get_the_term() to specifically notate that an array of WP_Term objects is returned on success. [37615] #32246



  • Don’t use Language_Pack_Upgrader_Skin::before() and Language_Pack_Upgrader_Skin::after() when translations are up to date. [37635] #36615
  • Database: dbDelta() will no longer try to downgrade the size of TEXT and BLOB columns. Merge of [37525] to the 4.5 branch. [37606] #36748



Thanks to @achbed, @afercia, @azaozz, @boonebgorges, @borgesbruno, @dabnpits, @dougwollison, @DrewAPicture, @ericlewis, @flixos90, @iseulde, @javorszky, @jeremyfelt, @jorbin, @juanfra, @JustinSainton, @michaelbeil, @netweb, @ocean90, @pento, @rachelbaker, @rmccue, @smerriman, and @spacedmonkey for their contributions!

#4-6, #week-in-core