Week In Core, May 18 – May 24 2016

Welcome back the latest issue of Week in Core, covering changes [37457-37550]. Here are the highlights:

  • 93 commits
  • 33 contributors
  • 67 tickets created
  • 11 tickets reopened
  • 77 tickets closed

Ticket numbers based on trac timeline for the period above. The following is a summary of commits, organized by component.

Code Changes

Accessibility

  • The Thickbox “Close” control should always be a button. [37531] #36267

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 FTP credentials form interaction. Properly toggle SSH2 Authentication Keys fieldset visibility. [37467] #34376

Customize

  • Make sure that preview and return URLs are URLs. [37527] #
  • Replace 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 in dbDelta(). [37532] #36919
  • dbDelta() will no longer try to downgrade the size of TEXT and BLOB columns. [37525] #36748
  • Remove some duplicate code. schema.php was manually defining the character set/collation query, instead of using wpdb::get_charset_collate(). [37524] #35756
  • Use the utf8mb4_unicode_520_ci collation, when available. [37523] #32105
  • Obey locale-specific utf8 collation settings. [37521] #32405

Docs

Embeds

  • Ensure embed widths are integers. This prevents a warning in PHP trunk when a non-integer width is passed. [37549] #36435

Emoji

External Libraries

Menus

Multisite

  • Clean up WP_Error documentation and handling in wp-signup.php [37547] #36927
  • Disable autocapitalize and autocorrect for user_name input on signup [37546] #36833
  • Introduce WP_Site_Query Provides a consistent way to query $wpdb->blogs for WP_Site objects. [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 $output param. 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

Taxonomy

  • get_terms() ‘search’ test should have more precise fixtures. [37519] #13992, #35381
  • Move get_the_terms() tests to their own file. [37480] #36814
  • Introduce required argument for wp_dropdown_categories(). This allows the HTML5 required attribute to be added to the select element. [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() use add_query_arg() instead of sprintf() to build the archive URL. [37530] #36414

Tests

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!

#4-6, #week-in-core