Week in Core, August 31 – September 7, 2016

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

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

Code Changes

Accessibility

Administration

Bootstrap

Comments

Customize

  • Fix php warning due to WP_Customize_Manager::prepare_setting_validity_for_js() incorrectly assuming that WP_Error will only ever have arrays in its $error_data. [38513] #37890
  • Introduce paneVisible state and ensure pane is visible when a construct is expanded (or focused). Fixes #36678. [38492] #27403, #36678
  • Fix i18n by re-using the add_new_item post type label instead of using a post type name in a generic string. [38479] #34923, #37895
  • Use new $status_code parameter for wp_send_json_error() instead of calling status_header() separately. [38478] #35666, #37897
  • Improve handling of active state for dynamically-created controls/sections/panels. [38464] #37270

Database

  • Find the correct table names in DELETE queries with table aliases [38507] #37660

Docs

  • Update the $message parameter for _default_wp_die_handler() to notate that it can also accept a WP_Error object. [38518] #37770
  • Correct @since entry for the smilies filter added in [38504]. [38505] #35905
  • Move term_description() reference from filter docblock to get_the_archive_description() function docblock. [38495] #37259

Editor

  • fix jumpiness on pressing backspace and delete in the Text editor. Merge of [38426] to the 4.6 branch. [38487] #37690

Embeds

  • Clarify some assertion failure messages and correct a test URL for Twitter timelines. [38514] #32360
  • Update the oEmbed provider test suite. [38512] #32360

Formatting

HTTP

  • Handle an edgecase within the URI parsing library included in Requests, where if a double slash exists at the start of the path the URL is passed to cURL malformed. Merge of [38429] to the 4.6 branch. [38485] #37733
  • Accept non-string values in cookies, fixing a regression since 4.5. Merges [38430] to the 4.6 branch. [38461] #37768

HTTP API

  • Revert changes to wp_parse_url() while PHP 5.2 errors are investigated. [38456] #36356

General

  • revert [38386], functions.php was probably too tempting for some people to not load by itself. [38469] #36335
  • revert [38467], wp_is_IE() should not exist. [38468] #37699
  • use a new function, wp_is_IE(), instead of the $is_IE global in a number of places. [38467] #37699
  • use get_bloginfo( 'version' ) instead of global $wp_version in several locations – excluding those locations which reload version.php mid-flight. [38459] #37699

Help/About

  • Remove an outdated help sentence on “My Sites” screen. [38474] #37896

I18N

  • Add translator comments for XML-RPC strings with placeholders. [38510] #37792

Login and Registration

  • Change login label to Username or Email Address for clarity. [38477] #37871

Media

  • Sanitize upload filename. [38538] #

Menus

Multisite

  • Deprecate wp_get_network(). [38515] #37553
  • use get_current_site() instead of $GLOBALS['current_site'] (stop yelling!) in a few remaining spots. [38458] #37699
  • use get_current_blog_id() where applicable, in lieu of plucking the $blog_id global from outer space. [38457] #37699

Post Thumbnails

  • Prevent post thumbnail previews from spilling into other images. Merge of [38433] to the 4.6 branch. [38476] #37697

Press This

  • don’t check for already-hoisted global in press-this.php. [38466] #37699
  • in wp_ajax_press_this_save_post() and wp_ajax_press_this_add_category(), don’t check for a global instance. WP_Press_This is a Controller, but not really a Singleton. This also keeps it from being a pluggable class, which it is right now. [38465] #37699
  • in get_shortcut_link(), just check a class constant on WP_Press_This instead of instantiating the object and reading an instance prop. [38462] #37699

Query

  • ‘orderby=include’ should support comma-separated lists. [30052] assumed that ‘include’ would be an array. [38500] #37904
  • Use AND in a SQL query rather than &&. [38491] #37903
  • r38356, you were not long for this world. [38471] #37830
  • in wp_old_slug_redirect(), use get_query_var() instead of importing and touching the global $wp_query directly. [38463] #37699

Role/Capability

Script Loader

Shortcodes

Smilies

Taxonomy

  • Introduce some taxonomy capability tests in preparation for introducing more fine grained capabilities for terms. [38516] #35614
  • Introduce wp_insert_term_data and wp_update_term_data filters for altering term data before it is inserted/updated in the database. [38484] #22293
  • Correct the function description for wp_ajax_add_link_category(). [38490] #37770
  • Update various docs for parameters which are now WP_Term objects. See #14162 [38489] #37770, #14162

Template

  • After [38486], actually use the $description variable in get_the_archive_description(). [38493] #37259
  • In get_the_archive_description(), add support for author archives. [38486] #37259

Text Changes

  • Improve Error messages in XML-RPC [38509] #37792
  • Improve the timezone setting description in General Settings. Makes more clear users can set either a city or a UTC timezone offset. [38483] #34789

TinyMCE

  • fix toolbars alignment in RTL. Merge of [38349] to the 4.6 branch. [38488] #37760
  • change the default font for the vi locale to the same stack as he_IL. Merge of [38427] to the 4.6 branch. [38472] #37755

Toolbar

Upgrade/Install

  • After [37687], fix the number of params passed to the upgrade hooks. Merge of [38415] to the 4.6 branch. [38475] #37731
  • Sanitize file name in File_Upload_Upgrader. [38524] #

Upload

Users

  • After [33766], don’t reset the password when clicking “Show Password” and then “Cancel” on Add New User screen. [38494] #37902, #33419

Pass $profileuser parameter to user_profile_picture_description filter on “Edit User” screen. [38481] #37379

Widgets

  • Make the Delete/Remove links red. For consistency and accessibility, all the UI controls that perform destructive actions should be red. [38536] #35622, #37016

## Props

Thanks to @afercia, @Akeif, @akibjorklund, @andrewp, @atimmer, @azaozz, @batmoo, @boonebgorges, @celloexpressions, @Chaos, @curdin, @dd32, @deremohan, @dlh, @DrewAPicture, @Engine, @flixos90, @Frank, @fronaldaraujo, @GaryJ, @geminorum, @gitlost, @GrantDerepas, @henrywright, @ibachal, @ideag, @ionutst, @jeremyfelt, @joemcgill, @johnbillion, @johnjamesjacoby, @johnpgreen, @jorbin, @Klein, @lukecavanagh, @monikarao, @mte90, @netweb, @nmt90, @patilswapnilv, @pento, @peterwilsoncc, @PieWP, @Presskopp, @ramiy, @Rarst, @sayedwp, @scrappy@…, @SergeyBiryukov, @smerriman, @swissspidy, @TimothyBlynJacobs, @turtlepod, @westonruter, and @wonderboymusic for their contributions!

#4-1, #week-in-core

WordPress 4.1.3 Released

Shortly after we shipped WordPress 4.2, we shipped WordPress 4.1.3 to fix an issue caused in WordPress 4.1.2.

Specifically, WordPress 4.1.3 fixed database writes for esoteric character sets, which were broken in the WordPress 4.1.2 security release. However, neither UTF-8 nor latin1 were affected. More information on this issue can be found in #32051.

Additionally, we shipped WordPress 4.0.3, 3.9.5, 3.8.7, and 3.7.7 to fix the same issue on other branches.

#4-1

January 7th meeting agenda

The first meeting of the new year and our first post-4.1 meeting. January 07 2015 21:00 UTC. We’ll split this between items for 4.1 and 4.2.

  • 4.1 debrief
  • 4.1.1
  • Review 4.2 schedule
  • Feature plugins for 4.2 and beyond
  • AOB

#4-1, #4-2, #agenda

Let’s cancel today’s weekly meeting since the holidays…

Let’s cancel today’s weekly meeting, since the holidays are starting for some of us (and ending for some others).

It can be open office hours* if anyone is around (I doubt I will be), but everyone (@johnbillion especially!) deserves a nice break for a great WordPress 4.1 release. It’s already been downloaded 2.5 million times, there’s been a lot of great feedback, and I also haven’t seen anything major reported. I just triaged about 40 recent tickets to be sure. Check out the 4.1.1 ticket report.

Please check that report when you have time to see if there’s a ticket you should be giving feedback on. For example, I see stuff for @azaozz and @avryl (#30696), @helen (#30813), and @obenland (#30831). Again, nothing important, so enjoy any break you may be taking. Happy holidays!

I suspect next week (New Year’s Eve) will be an informal meeting, as it’ll be only the afternoon for those in the U.S.

* Keep in mind people are in the #core channel on Slack all the time, so it’s really 167 hours of office hours per week, plus one meeting.

#4-1, #agenda

Dashicons in WordPress 4.1

WordPress 4.1 includes 20 new fresh and clean icons. Thanks to @liljimmi, @melchoyce and @empireoflight.

Media Icons

Icon CSS Class Code
dashicons-controls-play f522
dashicons-controls-pause f523
dashicons-controls-forward f519
dashicons-controls-skipforward f517
dashicons-controls-back f518
dashicons-controls-skipback f516
dashicons-controls-repeat f515
dashicons-controls-volumeon f521
dashicons-controls-volumeoff f520

Posts Screen (updated)

Icon CSS Class Code
dashicons-align-left f135
dashicons-align-right f136
dashicons-align-center f134
dashicons-align-none f138

Misc

Icon CSS Class Code
dashicons-phone f525
dashicons-building f512
dashicons-store f513
dashicons-album f514
dashicons-palmtree f527
dashicons-tickets-alt f524
dashicons-money f526

To get a complete overview of all icons please visit developer.wordpress.org/resource/dashicons/.

#4-1, #dashicons, #dev-notes, #ui

WordPress 4.1 Field Notes

The release of WordPress 4.1 is imminent. By now, you should have already been testing and preparing your plugins and themes. I wanted to highlight a couple of posts here over the last few months on changes in WordPress 4.1.  This is by no means a complete summary of everything that has changed, but will give you a sense of what you have coming to you in the next few days.

This version of WordPress features some new template tags in a continued attempt to improve core’s Theme APIs.

Taxonomy, Date, Meta and Comment queries all have been updated and improved.

As a part of the taxonomy roadmap, When a term is created with a matching slug as an existing term, we now create a new entry in wp_terms.

Distraction-free writing has received a full revamp.

Themes now can have better support for the <title> tag

There have been several improvements to the Customizer API, including contextual panels and sections, and JavaScript templates for controls.

Please continue testing your sites, plugins and themes. WordPress wouldn’t be where it is without you.

#4-1, #dev-notes, #field-guide

RC2 and release dry run

Various issues which came up over the weekend have meant that we’ve decided to delay the release of 4.1 by another 24 hours. The new target release date is Wednesday 17th December. It doesn’t serve anybody well to delay things this late in the day, but it’s essential to ensure the late fixes which have landed in the last few days are well tested.

RC2 will be packaged within the next few hours, once the recent batch of fixes in trunk are merged into the 4.1 branch. Here’s the current list of open tickets in the 4.1 milestone.

We’ll try to fit in a release dry-run meeting today at 17:00 GMT (December 16 2014 17:00 UTC) in #core, depending on the availability of the lead devs.

#4-1, #dry-run

Release candidate status meeting

Just a quick reminder that there will be a meeting in #core today December 14 2014 20:00 UTC to discuss new tickets that have been reported against RC1 and any other issues from the forums, etc.

Drop a comment here if there’s anything specific to RC1 that you think needs discussing.

#4-1

If you’ve written a child theme for Twenty…

If you’ve written a child theme for Twenty Fifteen, please note that some of the new pagination functions have been renamed for a bit of clarity:

  • the_pagination() is now the_posts_pagination()
  • get_the_pagination() is now get_the_posts_pagination()
  • These two functions now emit a “posts-navigation” HTML class, instead of “paging-navigation”

@obenland‘s original post on new template tags in WordPress 4.1 has been updated with these changes.

#4-1, #bundled-theme, #dev-notes, #twentyfifteen

Release candidate and today’s dev meeting agenda

4.1 was originally due for release today, but a few tickets in the 4.1 milestone have held things up a little. The release candidate will be tagged in time for today’s dev meeting at December 10 2014 21:00 UTC, and the target release date is now Monday, December 15th Tuesday December 16th.

Here’s the agenda for today’s dev meeting:

  • Documentation from various make/core posts need to go into the plugin handbook and theme handbook.
  • The 4.1 page on the Codex is in progress.
  • Eyes on the support forums – the alpha/beta forum has seen almost no activity so we need eyes on the forums as a whole.
  • ‘About’ page design – @melchoyce, kelly, @helen #30435
  • Plugin developers – update your plugin’s readme files to indicate support for 4.1 once RC1 is released. You’ve tested all your plugins with the beta, yeah?
  • Looking for something to do? Tickets reported against trunk needs some continued triaging.
  • Status of plugin directory l10n and recommended plugins tab. @stephdau @tellyworth
  • Discuss status of l10ns for polyglots.
  • Discuss a status update meeting type thing on Sunday.
  • Discuss release plan. @nacin
  • Any other business.

#4-1, #agenda