Howdy! This is Last Week in WordPress Core for the week of February 24—March 2! Lots of activity for the past week, which is great as we head into our last few days of alpha. Please join us for daily triage at 1900 UTC to help work through the remaining enhancements scheduled for 3.9.
As a quick note, if you work with our tools in ‘develop’, and are receiving a
SELF_SIGNED_CERT_IN_CHAIN error, you can resolve it by running
npm config set ca="". For details, check out this npm blog post.
If you want to skim, each section is roughly ordered by an important and/or interesting factor.
- Add the ability to drag and drop files directly onto the editor. Upon drop, the media manager will open, and file will begin to upload.  #19845
- Throttle scrolling of the main window when the editor is active and is being scrolled with the mouse wheel or a trackpad. . Expect some major tweaks here, though; see #27013.
- Introduce HTML5 gallery support. When a theme supports HTML5 galleries via
add_theme_support( 'html5', 'gallery' ),
figcaptionwill be used instead of definition list markup.  #26697
- Add a filter to remove or rename page templates for a theme. This does not yet handle adding page templates.  #13265
comment-reply.jsto the footer. While it can function before the page is loaded, it works by moving the comment form, which is usually toward the bottom of the page. Please report any contraindications on the ticket.  #12641
- Return 404 when querying author’s posts who is not a member and has no posts on the site.  #20601
get_adjacent_post()wrap a new
WP_Adjacent_Postobject that uses
WP_Query.   #26937
wp_list_authors().  #9902
- Multisite: Introduce
get_site_by_path()and further rewrite the site detection process for multisite. This makes it so that a sunrise plugin could do much of its work by adding filters, if those are even needed.  #27003
- Database: Use MySQLi for WordPress development versions, regardless of PHP version, to increase testing footprint. There’s also a constant for testing purposes.   #21663
- Plugin API: Introduce
doing_action()to identify hooks in progress. You can also use this with to identify a hook that has completed. For more, see  #14994.
- Formatting: Strip backslashes, not just forward slashes, from
trailingslashit()will now remove any forward or backslashes from the end of a string before appending a forward slash.  #22267
- Date/Time: Allow
current_time()to accept a date format string, adding to
mysql.  #21653
- Updates: During core upgrade, copy wp-includes/version.php over last, to avoid an installation failing with the new version.php in place.  #25860
- Rewrite API: Allow rewrite endpoints to specify a query variable name.  #20905
- Cache API: Revert  and let cache backends handle the stripping of spaces in cache keys as necessary.
microtime()returns greater precision than
microtime(true).  #27000, #23448, #26903, #14485
- Query: Add a
WP_Query::get(). Helpful when working with endpoints.  #16471
- Comment Query: Allow
user_idto be an array of IDs in
WP_Comment_Query.  #27064
- Users: Make the user arguments for
get_dashboard_url()optional, defaulting to the current user.   #16686
- The new script handle is
masonry. The old
jquery-masonryhandle is the official shiv that sits on top of the v3 library to be backwards compatible with v2 usage. While v3 no longer depends on jQuery, a theme or plugin may have been implicitly loading jQuery though Masonry, rather than additionally declaring it as a dependency for themselves.
- Themes should switch to
masonryand declare jQuery as a dependency on their own if they need it.
- Upgrade guide on Masonry’s site, with the exception that, for core, we continue to include
- The new script handle is
- Upgrade Plupload to 2.x (2.1.1)  #25663
- Update the Root Certificate bundle used for SSL communication by
WP_HTTPfrom the latest Mozilla release NSS.  #27017
grunt-patch-wordpressfor applying patches directly from Trac. Mapped to
grunt patch, which declares usage. Requires
npm installto install.  #27023
- Add JSHint to Travis CI config.  #26446
Thanks to @adamsilverstein, @andy, @avryl, @bassgang, @bootsz, @chrisscott, @danielbachhuber, @DrewAPicture, @enej, @ericlewis, @ericmann, @ethitter, @evarlese, @garyc40, @GaryJ, @gcorne, @georgestephanis, @GregLone, @helen, @iamfriendly, @Ipstenu, @jackreichert, @jeremyfelt, @johnjamesjacoby, @jorbin, @knutsp, @kovshenin, @kpdesign, @leewillis77, @markjaquith, @mattheu, @mboynes, @mitchoyoshitaka, @mjbanks, @mordauk, @morganestes, @nacin, @nicolealleyinteractivecom, @obenland, @ocean90, @patricknami, @pento, @pross, @rickalee, @salcode, @scribu, @SergeyBiryukov, @shelob9, @siobhyb, @solarissmoke, @xsonic, @stephcook22, @theorboman, @tivnet, @TobiasBg, @willmot, @wonderboymusic, @xknown, and @yoavf for their help this week!