WordPress Core Weekly

Hello everyone, and welcome to this installment of the WP Weekly Roundup! This edition covers February 11th, 2015 [31411] through February 18h, 2015 [31478].

Right at the top of the list: the release of 4.1.1 rolled out Wednesday. You can read the changelog for full details, but here’s the overview.

WordPress 4.1.1

  • Tag 4.1.1 [31478]
  • Bump $tinymce_version in the 4.1 branch. [31477]
  • Remove errant string. [31475]
  • About: Add changelog for 4.1.1. [31474]
  • Add SVN eol-style = native where missing. [31471]
  • Add eol-style property and normalize EOLs. [31470]
  • Bump 4.1.1 version numbers & dates. [31431]

Media

  • Revert [31198] from the 4.1 branch, as it is an incomplete fix that introduces more problems than the tiny issue it was attempting to solve. [31468] #30725
  • Don’t try to read a non-existent Exif:Title tag in wp_read_image_metadata(), as it’s not a part of the Exif standard. [31462] #31043
  • Fix the display of Audio and Video in the Media Library when using IE8 and below. [31444] #31058
  • Prevent IE9 and lower displaying the download file dialogue when attempting to upload using the html4 Plupload handler. [31429] [31430] #31037

TinyMCE

  • Fire nodeChanged when an embedded iframe is resized so we can adjust the editor height and other UI components. Props iseulde, [31466] #30646
  • Ensure the image toolbar stays visible when the image is much wider than the editor. Merges [31362] to the 4.1 branch. [31437] #30696
  • Select the iframe element by id. Needed as some browser extensions insert extra elements in the page. Merges [31180] to the 4.1 branch. [31436] #30785

Bundled Themes

  • Update CSS rules for .screen-reader-text to be consistent with current accessibility guidelines. [31464] #31279
  • Remove URLs from reset credits. Closes #30764. [31454] #30764
  • Replace array_shift() with current() for performance. [31453] #31260

Internals

  • Add inline documentation to clarify the reasoning behind the various conditions that control how WP is loaded. [31463] #30935
  • Improve ‘orderby’ syntax for WP_Comment_Query[31467] #31045, #30478, #31265
  • Replace hardcoded usage of comment-page with the comment pagination base. [31459] #18084
  • Respect ‘default_option’ filters during early sanity checks in add_option() and update_option()[31473] #31047
  • Add $expiration as a parameter to the pre_set_transient_{$transient}filter. [31414] #30576
  • Restore PHP 5.2 to Travis CI. [31472] #31244
  • Return a WP_Error if an empty name is provided when registering a post type. [31450] #31134
  • Posts list table: Add a filter to disable the months dropdown. [31438] #30254
  • In paginate_links(), don’t override custom format arguments when setting up default ‘add_args’. [31433] #30831
  • Avoid a PHP Warning when add_args is passed as false to paginate_links(). [31432] #30831

Customize

  • Remove margin for hidden controls. [31460] #31330
  • Don’t focus new widgets if they are added programmatically. [31428] #31295
  • Escape Customizer links in the admin menu. Fix usage of add_query_arg(). [31427] #30952
  • Restore showing a login form inside the previewer if an user is logged out. Broken since [31370]. [31421] #31294
  • Widgets: Add return param for widgets admin page to the “Manage in Customizer” link. [31420] #30888
  • Improve [31252] to show the move-widget buttons only if there is more than one rendered sidebar. [31419] #30690

Query

  • More careful type conversion in WP_Query is_*() methods. [31458] #24674
  • Add tests for some of WP_Query‘s sticky post logic. [31439] #27282

Toolbar

  • Remove title attributes from ‘About WordPress’, ‘Add New’, and ‘My Account’ items. [31456] #31324
  • Add a label for search field on front-end. [31455] #31323
  • Use require_once() to prevent a fatal error if _wp_admin_bar_init() is called twice. [31411] #31287

General

  • Provide a secondary sort order for wp_get_archives() when type=postbypost[31452] #30480
  • Update the default admin color scheme for more unity and refinement.
    This removes the red channel from blues and cools the grays a bit for a more cohesive and purposeful color scheme. [31422] #31234

Taxonomy

  • Return a WP_Error if an empty name is provided when registering a taxonomy. [31449] #31135
  • Split shared taxonomy terms on term update.
    When updating an existing taxonomy term that shares its term_id with another term, we generate a new row in wp_terms and associate the updated term_taxonomy_id with the new term. This separates the terms, such that updating the name of one term does not change the name of any others. #5809

Networks and Sites

  • Use get_admin_url() to get the correct My Sites URL without calling switch_to_blog() directly. [31448] #31314
  • Create the My Sites URL in the context of a user’s primary site.
    Switch to the user’s primary (or active) site before creating the My Sites URL. This previously linked to the current site’s dashboard, even if a user was not a member of that site. [31445] #31314

Administration

  • Use correct default values for some admin template functions. [31446] #31308
  • Rename unused argument and remove obsolete global in iframe_header(). [31443] #31309
  • _list_meta_row() should always return a string. [31442] #31310
  • Terminate JS statements in two admin files. [31440] #31311
  • Move the (recently added) .notice admin notices below the first H2, same as the .updated and .error notices. Merges [31023] to the 4.1 branch. [31434] #30885
  • Admin menu: Ensure top level menu item keeps hover color when hovering over or focusing on the submenu. [31424] #31275
  • Introduce a logout_redirect filter so the redirect destination can be changed when a user logs out. [31417] #27617

Embeds

  • Use RegEx instead of DOMDocumentwhen protecting <pre> tags in WP_oEmbed::_strip_newlines(). It is incredibly difficult to maintain character encoding and whitespace when parsing viaDOMDocument. [31423] #31214
  • After [31415], make sure str_replace() only occurs once for each matched tag to avoid overwriting until <pre>s. [31416] #31214
  • Protect <pre> tags when parsing oEmbed responses in WP_oEmbed::_strip_newlines() in DOMDocument is available. [31415] #31214
  • oEmbed discovery fails on encoded link URLs: decode HTML chars in the HTML-encoded URLs that are returned. [31413] #31213

Dev Chat Notes

The merge period for Feature Plugins has opened. The two candidates, Customizer Theme Switcher and the revamped Press This were both approved and will be “shepherded” in over the next week.

Also discussed were the possible switch in build tools from CSSJanus to RTLCSS (#31332), using the button element for buttons (instead of <a href="#">) and recruiting release leads for 4.3 and 4.4, with a reminder that this isn’t necessarily a developer position.

Yeah, so, the leads are already thinking about who might lead 4.3 and 4.4. The goal was always to announce these ahead of time, and hopefully see overlap with releases, but if nothing else, the release lead for next major +n can be looking at feature plugins, tracking them, pushing them, etc.

With 4.3 starting development in less than 3 months, now would be the time to throw your hat into the ring. I think, ideally, there is an announcement before 4.2 hits beta. This wouldn’t be about doing nothing for the next 3 months, but already getting started in terms of laying the groundwork.

If you are interested in leading a release in 2015, now would be the time to say something. Same if you are interested in helping to lead a release in 2015.

Tickets needing a look

These tickets were specifically mentioned by developers looking for assistance or an extra set of eyes:

  • #31218: nav-menu.js menu item added event
  • #27282: WP_Query returns more results when there are sticky posts
  • #17817: do_action/apply_filters/etc. recursion on same filter kills underlying call
  • #31332: RTL CSS generation: Switch from CSSJanus to RTLCSS
  • #23367: Remove message parameters from admin URl’s in the browser address bar
  • #31233: Dismissable admin notices
  • #31251: Show username in wp_dropdown_users when deleting users, not display name
  • #22768: EXIF/IPTC captions should populate caption/post_excerpt on upload, not description/post_content

Thanks to @adamsilverstein, @afercia, @azaozz, @barrykooij, @boonebgorges, @boonebgorges, @clifgriffin, @cweiske, @danielbachhuber, @dd32, @dlh, @DrewAPicture, @GregLone, @helen, @herbmillerjr, @hugobaeta, @Idealien, @ipm-frommen, @iseulde, @jdgrimes, @jeremyfelt, @johnbillio, @johnbillion, @johnjamesjacoby, @jorbin, @lancewillett, @mattheweppelsheimer, @mboynes, @melchoyce, @mgibbs18, @MikeHansenM, @morganestes, @nacin, @netweb, @norcross, @nunomorgadinho, @obenland, @ocean90, @r-a-y, @SergeyBiryukov, @simonwheatley, @sippis, @stevehickeydesign, @tywayne, @tyxla, @webord, @westonruter, and @wonderboymusic for their contributions!

#4-2, #week-in-core