Make WordPress Core

Updates from May, 2016 Toggle Comment Threads | Keyboard Shortcuts

  • voldemortensen 8:05 pm on May 5, 2016 Permalink |
    Tags: , ,   

    Dev Chat Summary – May 4, 2016 

    This post summarizes the dev chat meeting from May 4.

    Update on WordPress 4.5.2

    • Lead for 4.5.2 still undecided.
    • 8 potential tickets for 4.5.2, only one has been committed.
    • #36534 is a serious issue that has had little activity. The issue is a bug between Imagick and OpenMP in certain configurations. @mike has reached out to a few major hosts who have fixed their configuration. @joemcgill and team are continuing the investigation into how to handle these errors.
    • The goal is to have as many 4.5.2 tickets committed to trunk by next week as possible.

    Triage of tickets with the “early” keyword

    Call for designers/reviving the chats

    • Since the beginning of this cycle a few contributors requested help from the team in #design. This channel has currently 813 members but the responses are only sporadic. There is also a meeting scheduled which should happen every week on Thursday at 17:00 UTC. But last one was in January.
    • @karmatosed and @hugobaeta will take charge of reviving chats in #design on Slack.
    • @hugobaeta will have an agenda posted by end of day today.
    • @zetaraffix volunteered to join the design team.

    Feature Project Updates

    Shiny Updates

    Fields API


    • Recap post of the last office hours: https://make.wordpress.org/core/2016/05/04/customize-office-hours-recap-2016-05-02/
    • #30937 (transactions) and #35210 (notification area) are the highest priorities.
    • A make/core post for Customizer setting validation (#34893) in the works.
    • @westonruter has also initiated a new feature plugin “JS Widgets” that will greatly improve the performance of widgets in the Customizer. An alpha state plugin can be found here: https://github.com/xwp/wp-js-widgets

    Decision time for: #36753 Use system fonts for a faster, more native-feeling admin (Font Natively)

    • Background information and rationale can be found here: https://make.wordpress.org/core/features/font-natively/
    • @helen mentioned that there is a patch on #36753 and that lots of screenshots across OSes and window sizes of current state and new state are needed. Help is appreciated.
    • Because this project is already in a committable state, @helen proposed to commit this patch now.
    • Even the final decision time is still a month away no objections were called.
    • @helen will commit the patch.

    Discussion: How to name new functions? get_sites/networks() vs wp_get_sites/networks()

    This came up during the last multisite chat. @jeremyfelt gave a short introduction:

    WP_Site_Query should have a function similar to get_posts(), get_users(), or get_comments() that allows for the simple return of results from a query.

    wp_get_sites() was introduced quite a bit ago. It returns an array of arrays rather than the desirable array of WP_Site objects.

    get_sites() is proposed as part of the WP_Site_Query patch to align better with the naming of posts, users, comments… and to allow for the return of an array of objects.

    We need to make a decision: Does it make sense to introduce get_sites() and deprecate wp_get_sites()

    I guess a broader question is do we push for more wp_ prefixed functions in situations like this or do we go with what we’ve been doing.

    A similar question exists for get_networks()

    • @tfrommen objects, that introducing a new unprefixed function might be a collision with some (also unprefixed) plugin function. He proposes that the slurping the plugin repo would be a good idea.
    • @boonebgorges states a rule: Prefer prefix as a rule of thumb, but exceptions seem fine in cases like this, when DX will be improved by being internally consistent.
    • @helen: Generally I would base these kinds of decisions on what wouldn’t trip you up (or at least you trip you up less) as a developer.
    • @ipstenu will help with slurping the plugin repo for get_sites() and report the findings in #core-multisite.
    • There is currently not a consensus on prefixing functions with wp_.

    Component Updates




    • Bug scrub scheduled for Monday May 9th, 2016 at 13:00 MDT in #core Slack.
    • Watch for a Make/Core post regarding Custom Comment Types
    • With 104 open tickets, the Comments team would love help confirming bugs still exist, are actually bugs, or patches 🙂
    • #33717 (Send Notification Email When a Comment is Approved From Moderation) needs some extra review and feedback.


    • The media component could use a lot of love, and a bug-fix focussed release is just the sort of thing that could help.
    • @joemcgill  is planning to put out a call for volunteers on the make/core blog and then begin using our weekly dev chat time to focus on bug-scrubs.
    • There are currently 268 open tickets in that component, so extra hands will be helpful.

    Open Discussion

    • @helen brought a concern about removing the Open Sans style registration and people who might be using it as a dependency, etc. The decision was to leave the registration and move the line to the // Deprecated CSS section..
    • @ronalfy asked for a new owner of #33932 (Filters for Plugin/Theme Update Email Notifications).
    • @zstepek brought #34848 (Add support for updating post meta in bulk) up. @boonebgorges will be responding to the ticket soon.
    • @spacedmonkey would like to get more eyes on #35381 (Introduce WP_Term_Query)


    The full dev chat logs can be found here: https://wordpress.slack.com/archives/core/p1462392004003183

  • Boone Gorges 5:15 pm on May 5, 2016 Permalink |
    Tags: , ,   

    Taxonomy bug scrub summary, 2016-05-05 

    We had a taxonomy component bug scrub today. Slack archive: https://wordpress.slack.com/archives/core/p1462464023003714

    Present: @boonebgorges, @helen, @barryceelen, @wonderboymusic. @swissspidy and @jans-1 voiced their opinions via emoji reactions.

    We cleared 8 items from the Awaiting Review queue, bringing it down to 35 tickets.

    Let’s do this again real soon!

  • voldemortensen 10:51 pm on April 27, 2016 Permalink |
    Tags: , 4.5.2, , ,   

    Dev Chat Summary – April 27, 2016 

    This post summarizes the dev chat meeting from April 27.

    4.5.1 / 4.5.2

    • Released April 26, 2016.
    • Exact time of release wasn’t announced, which left places like #forums on Slack and hosts in the dark. Going forward an exact timeframe should be announced, the handbook will be updated to be more clear on this requirement.
    • Two proposals about minor release leads came forth. One being that a set of “maintainers” be established to be on top of minor releases, the other being @ocean90 and @voldemortensen do 4.5.2 as a dry-run for 4.6.0. No decision has been made at this time.

    Status of the wish-list post

    There are currently 124 tickets, 4 of which are complete with about 15 in progress.

    Feature plugin/project proposals for 4.6

    • Contributors to the proposed projects should attend the feature plugins/projects meetings. The next one will be held on May 3, 2016 15:00 UTC.
    • Parts of the Shiny Updates v2 plugin are ready for core and have been proposed for merge. This fits in with the goals of the 4.6 release cycle.
    • Any one who would like to try the Shiny Updates plugin can find it here: https://wordpress.org/plugins/shiny-updates/
    • The Fields API team would like to propose their changes to register_meta() and a datalayer for metadata REST API endpoints.
    • @helen is looking at #32678 (Audit toolbar links and content) for items that can be brought into 4.6.0. No meetings are currently being held, but times are being considered.
    • @westonruter proposed #34923 (Introduce basic content authorship in the Customizer) and #30937 (Add Customizer transactions). Anyone who has questions or is looking to contribute should join #core-customize on Slack.

    Triage of tickets with the “early” keyword

    Component Maintainer Updates/Reminders

    • Please post notes from weekly meetings and bug scrubs on make/core. Release leads will try get weekly posts on upcoming meetings.
    • Weekly meeting times can be found here: https://make.wordpress.org/meetings/
    • Components which should definitely have a bug scrub soon: Posts, Post Types; Comments, Taxonomy, Themes, and Widgets.



    • @iseulde has started working on using the TinyMCE APIs for wpView and inline toolbars
    • @azaozz is still chasing after couple of rare editor bugs and will start on the wishlist (https://make.wordpress.org/core/2016/04/12/editor-wish-list-4-6/) probably by the end of the week.
    • If somebody have questions or like to get involved/help, please join us at the regular editor chats on Wednesday two hours before this chat in #core-editor

    Pings and Trackbacks

    • @dshanske is a new maintainer. He closed/consolidated several tickets however reading the code caused him to open some more. 🙂



    • The Customizer Transactions patch got a refresh for trunk.


    • Bug scrub time will be announced next week.



    Open Discussion

    The REST API team is seeking direction and clarity on the path forward. A more in depth summary will be posted separately. Read the conversation here: https://wordpress.slack.com/archives/core/p1461791901002328

    @tfrommen would really love to see (more) feedback on #36335, especially by (but of course not restricted to) Core Committers. Both targeted at the ticket’s core (i.e., a central autoloader) and the parts directly related to WordPress (e.g., split up files with multiple classes, or classes and functions, etc.). Things that might be tackled in the scope of WordPress 4.6, or in general, some day/release. https://wordpress.slack.com/archives/core/p1461795636002501

    The full dev chat logs can be found here: https://wordpress.slack.com/archives/core/p1461787203002129

  • Eric Binnion 2:39 pm on April 27, 2016 Permalink |
    Tags: ,   

    Week in Core, Apr 19– Apr 26 2016 

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

    Ticket numbers based on trac timeline for the period above.

    Code Changes

    Build/Test Tools

    • Build/Test Tools: Reset the PHPMailer mock in Tests_Mail::tearDown(). [37307] #36609
    • Tests: Use the same incrementor for all fields belonging to a given text fixture. [37299] #35199
    • Don’t announce PR builds in Slack. People may submit a PR to our travis build repo, we shouldn’t notify slack when that happens. [37268] #36607
    • Tests: Allow override of MULTISITE and SUBDOMAIN_INSTALL constants [37266] #36567


    • Use get_the_terms() to verify that a post belongs to the requested %category%. The get_the_terms() wrapper provides cache support, and saves a database hit
      on sites with a persistent cache backend. [37262] #36602
    • Tests: After [37260], use WP’s setUpBeforeClass() wrappers. This ensures no leakage between tests of fixture IDs. [37261] #36602
    • Add tests for permastruct containing /%category%/. [37260] #36602


    •  Add a $comment parameter to get_comment_author_url_link(). Add unit tests (none exist). [37305] #36573
    • Add unordered list styling to Comments List Table rows and Moderate Comment screen. [37304] #36160
    • Keep comments safe in the Edit Post screen. Warns users that have added a new Comment or began editing an existing without saving their changes, before they press the “update” button which would wipe out their comment changes. [37303] #32818
    • Dashboard: toggle the “View” link for comments when Approving / Unapproving from the Dashboard widget. [37302] #35518


    • Suppress connection error messages when WP_DEBUG isn’t enabled. This is a partial revert of [35860], which has been causing un-catchable warnings to be generated on some server configurations. [37293] [37292] #36629, #21870


    • Tests: Pre-declare the $year_url property before initialization in Tests_Get_Archives::setUp(). [37271] #36611


    • Add missing return descriptions for WP_Filesystem_SSH2::chown() and WP_Filesystem_SSH2::run_command(). [37270] #30989
    • Clarify the return descriptions for get_the_time(), get_post_time(), and get_post_modified_time() to specify when an integer in the form of a Unix timestamp should be expected. [37265] #30989
    • Clarify return descriptions in the DocBlocks for set_user_setting() and delete_user_setting(). [37264] #30989
    • Clarify parameter and return descriptions in the DocBlock for wp_set_all_user_settings(). [37263] #30989
    • Capitalize URL – an acronym for Uniform Resource Locator – when used in the context of inline docs in wp-includes/link-template.php. [37259] #30406
    • Notate more optional parameter defaults for a variety of function DocBlocks in wp-includes/link-template.php. [37258] #30406
    • Notate optional parameter defaults for a variety of function DocBlocks in wp-includes/link-template.php. [37254] #30406


    • TinyMCE: prevent showing the placeholder URL when adding a link and clicking more than once on the Insert Link button. [37301] #36637


    • Smilies: Move convert_smilies to happen later in the the_content filter. [37298] #36306
    • The :roll: smiley is now an emoji. [37296] #36365
    • The diversity support test was incorrectly passing on all browsers. [37257] [37256] #36604


    • Revert [36230] which removed the rss-http feed content type. Removing this means that any feeds which are using this feed content type are now being served as application/octet-stream instead of text/xml. [37284] [37282] #36620


    • Customize/Formatting: Move sanitize_hex_color(), sanitize_hex_color_no_hash(), and maybe_hash_hex_color() from class-wp-customize-manager.php into formatting.php. Adds missing braces. [37283] #33413, #27583
    • Administration: Introduce admin_print_footer_scripts-$hook_suffix", a dynamic version of the admin_print_footer_scripts hook. This is now more consistent with the generic admin_print_scripts and the dynamic admin_print_scripts-$hook_suffix hooks fired in wp-admin/admin-header.php. [37279] #34334


    Networks and Sites

    • Tests: Account for flexible IDs in main network deletion test. [37300] #36566
    • Tests: Exclude ms-files test group from default PHPUnit config. [37269] #36566
    • Tests: Add speedTrapListener to multisite’s PHPUnit config [37267] #36566, #30017

    Posts, Post Types

    • Add parameter documentation for ‘post_category’ to wp_insert_post(). [37255] #36601

    Post Thumbnails

    • Fix logic bug and tests from [37308] where post-thumbnails support wasn’t added if there were no previous post_types with support already. [37313] #22080
    • When using add_theme_support( ‘post-thumbnails’, array( $post_types) ) merge the supported post_types. [37308] #22080


    • Tests: More explicit fixture content when testing s=0 query string. After [36647], the unit test generator sequence can put a 0 into the
      ‘post_excerpt’ field of a post fixture, causing false positives. [37280] #36622

    Rewrite Rules


    • Docs: Move the clarification of is_tax() and WP_Query::is_tax() return value added in [37235] to @return description. [37281] #36331

    Text Changes



    • Clear plugin/theme caches directly after a plugin/theme has been updated. This is a follow-up to [34751]. [37272] #34029, #36383


    • Remove the “Name” column of the Users table from appearing sortable. [37314] #28064
    • Docs: Reflect the new 'user' option for wp_new_user_notification()‘s $notify parameter added in [37276] in wp_send_new_user_notifications() docs as well. [37278] #36009
    • Add a unit test for [37276]. [37277] #36009
    • In wp_new_user_notification(), sdd 'user' option for the $notify parameter, which allows for sending notification only to the user created. [37276] #36009

    Thanks to @akibjorklund, @alexkingorg, @flixos90, @rachelbaker, @azaozz, @boonebgorges, @davewarfel, @downstairsdev, @DrewAPicture, @flixos90, @grapplerulrich, @helen, @iseulde, @jeremyfelt, @jesin, @jmichaelward, @joemcgill, @johnbillion, @jorbin, @juanfra, @Latz, @mpol, @ocean90, @pbearne, @pento, @polevaultweb, @rachelbaker, @rmccue, @SergeyBiryukov, @spacedmonkey, @swissspidy, @tfrommen, @tollmanz, @Unyson, @welcher, @westonruter, @WiZZarD_, and @wonderboymusic for their contributions!

  • voldemortensen 10:08 pm on April 20, 2016 Permalink |
    Tags: , , ,   

    Dev Chat Summary, April 20th 2016 

    This post summarizes the dev chat meeting from April 20.

    Update on WordPress 4.5.1

    • #36510 and #36545 are large bugs that are prompting an earlier release than was anticipated.
    • #36510: a ‘singular’ class was added for singular items, but some existing themes -including Twentyeleven – already used ‘singular’ in a different way leading to unexpected result.
    • #36545: is a potentially bad TinyMCE bug with chrome vs. 50 (now stable) is fixed in TinyMCE upstream; although testers have been unable to reproduce this bug, the point upgrade MCE squashes some known bugs and seems worthwhile to include.

    Other items remaining

    • #26506: Press This: “Add Photos” box doesn’t have enough height
    • #36578: wp_ajax_send_attachment_to_editor() bug

    Discussion about release date

    Several people raised concerns about rushing out an early point release. In an effort to encourage testing before release, 4.5.1-RC will be tagged either today or tomorrow (April 20th, 2016 or April 21st, 2016). A make/core post about changes in 4.5.1 will also be posted.


    • All committers will have their commit access renewed.
    • @voldemortensen will be the release deputy for 4.6.
    • @ebinnion, @rockwell15, and @grantpalin will continue their superb Week in Core posts.
    • WordPress 4.6 will focus on fixing bugs and refining existing features.
    • Other goals include increasing collaboration between features/components, increasing communication via make/core, and give user testing and UX a bigger focus.

    Release Schedule

    Community Wish List

    • @helen gave an update on feature projects (https://make.wordpress.org/core/features/). Feature projects have a bi-weekly meeting (every two weeks) at variable times to allow more contributors to attend. Next meeting is on May 3, 15:00 UTC in the #core Slack channel. More feature projects will be added to the page as their statements of purpose are refined.
    • @ocean90 and @voldemortensen will be tracking the wish list of tickets for 4.6 and providing updates here: https://make.wordpress.org/core/4-6/. (Component maintainers can help up by updating the list as well.)

    Component Maintainers

    General Discussion

    • The Two-Factor feature plugin needs a UX designer. Please reach out to @georgestephanis directly or in #core-passwords on Slack if interested.
    • #34941 (Make the main bootstrap process in ms-settings.php testable) needs some eyes. Please leave comments on the ticket or in #core-multisite if you have questions, comments, or concerns.
    • PHPMailer has decided to drop support for anything lower than PHP 5.5. Security updates will be backported, but there will be no new feature development. Reference.

    Full meeting logs: https://wordpress.slack.com/archives/core/p1461182382001002

  • Ella Iseulde Van Dorpe 10:57 pm on April 12, 2016 Permalink |
    Tags: ,   

    Editor wish list for 4.6 and beyond – chat summary 

    This list builds on the previous wish list. You can read the full chat in the archive.


    • Allow suggestions and comments to be made, similar to what ICE does. This would make a good plugin and feature project first. @eric and @azaozz seem to be interested in working on something like this.


    • (Publish) meta box revamp. See #36474. Feedback welcome! @michael-arestad, @melchoyce, @helen@mapk@hugobaeta?

      Proof of concept.

      Proof of concept.

    • More experimenting with inline toolbars (separate for formatting and inserting). We could first do this on small screens where the toolbar would be fixed at the top, later maybe on big screens. See also #29923.
    • Could editor scrolling be improved (e.g. hide on scroll down)? See #36482, and also #31751.
    • Caption placeholder. Focusing on an image would give you a placeholder for a caption. See #32175.
    • Leaving dialog. Offer WordPress UI on leaving the page if we can with the option to save changes. See #28566.
    • Advanced panel for the inline link toolbar, so plugins can add options. See #36312.
    • More formatting shortcuts (code blocks, bold, italic…)? See #36433, and also #6331.
      Decide whether to add bold and italic shortcuts at all, how to do the triple back tick shortcut.
      Try to merge with TinyMCE’s own textpattern plugin.
      Any other things we could automatically format in the editor? Curly quotes? Thinking about wptexturize().
    • Save and update without a page reload. For this we will need to look into nonce refreshing. See #7756.
    • Autosave in the browser revamp and improvements. Add some subtle, always present UI for restoring a post from in-browser autosave. Try to better detect when a restore may be needed (and show the current notice). See #36479.
    • Handling nested shortcodes. See #30094. I’m skeptical about this one, but please do let us know what your thoughts are if this interests you.
    • Save custom colours. See #31479.

    Under The Hood

    • Consider the new non-editable TinyMCE plugin for our non-editable views. See #36434.
    • Consider the TinyMCE API for inline toolbars, see #36480.
    • Responsive images for TinyMCE. See #36475. Depends on whether we will be saving the srcset and sizes attributes in post content, @joemcgill?
    • Handle inline image blobs in TinyMCE.
    • Different placeholders for more and nextpage tags. See #29804.
    • Auto embed bug. See #25387.

    Call for Contributors

    If you would like to see more of these features implemented sooner, join us. Everybody can contribute as designer, UX expert, developer, tester, the area you feel most comfortable with. Describing your workflow, how you use the editor, and what you find difficult or easy is also a very good way to contribute.

    You can also leave feedback on the relevant tickets.

    Let us know if you have more suggestions or ideas to add to the list.

    The next chat will be Wednesday, 13 April, 18:00 UTC in #core-editor.

    Andrew and Ella

    • WP Sites - Brad Dalton 7:33 am on April 13, 2016 Permalink | Log in to Reply

      Use of pre and code tags in the text editor. At the moment, you need to switch to the visual editor so anyone who has disbaled the visual editor and wrapped opening and closing PHP tags in code or pre tags, will find the code doesn’t display.

    • Martin Stehle 8:05 am on April 13, 2016 Permalink | Log in to Reply

      About Curly Quotes: there is a gap between the typography rules and the keyboard layout: missing keys to set the correct quotation marks.

      E.g. in german a cited sentence is bordered with „…“ but there is no key for that on a german keyboard layout: So you have to use the wrong "…" instead.

      It would be great if the editor corrects the quotation marks automatically based on the website language. About world wide standards of quotation marks: https://en.wikipedia.org/wiki/Quotation_mark#Summary_table

    • programmin 3:15 pm on April 13, 2016 Permalink | Log in to Reply

      By “inline toolbar” are you referring to support for TinyMCE inline mode (iframe-less) using contenteditable=”true” instead of an iframe, as in https://www.tinymce.com/docs/demo/inline/? That would be super useful to themes that want editor on frontend, inheriting all styles that they should be inheriting from the page. Is this inline live editing something you are planning on for default wp, similar to how the customizer lets you live-edit the theme settings?

    • Ahmad Awais 6:36 pm on April 13, 2016 Permalink | Log in to Reply

      Looking forward to these changes. Would love to contribute.

    • Ipstenu (Mika Epstein) 9:45 pm on April 13, 2016 Permalink | Log in to Reply

      I would take nested shortcodes off the list, given the rabbit hole that is shortcodes in general right now. That’s a project in and of itself :/

    • aidanlane 1:58 am on April 14, 2016 Permalink | Log in to Reply

      +1 for:
      meta box revamp
      Save and update without a page reload
      Autosave in the browser revamp and improvements – **currently not clear enough that they are happening or not**


    • LucP 9:34 pm on April 20, 2016 Permalink | Log in to Reply

      Hi! Wanted to hook into this conversation, as it might be interesting to also include this:

      Currently the publishing flow is still lacking some clarity. I’ve asked around and a whole lot of people still (instinctively) make the mistake of pushing “publish” when they meant to save a new copy of the draft.

      Especially if you have plugins enabled that auto-push posts to social media this can be a hassle. I know there’s keyboard shortcuts but that’s hardly an interface for the average user.

      If you’re rethinking Save, update and the general publish flow, i’d definitely like to help out!

  • Adam Silverstein 4:00 pm on March 17, 2016 Permalink |
    Tags: ,   

    Core Dev chat notes for March 16 


    Schedule Notes, Status Updates, Let’s Triage!

    Schedule Notes

    Status Updates

    • Image Improvements: @joemcgill
      • Only a few open tickets left for 4.5, the big ones are related: HTTPS website with HTTP images (#34945) and Incorrect URL scheme for media in the admin area when using administration over HTTPS (#34109).
    • Customizer: @westonruter, @celloexpressions
      • Two non-logo related tickets remain:  Add QUnit tests for the Customizer preview (#35857) and Selective refresh of widgets (#35855). Feedback for whether (and how) to opt-in for selective refresh support.
      • @georgestephanis offered to nudge the Jetpack team to update their widgets to support selective refresh. @westonruter submitted a PR with the required updates.
    • Theme Logo Support: @obenland
      • @mor10 opened a couple of tickets that @westonruter has patched, so expect that to go in soon. Other than that it’s done. (Famous last words)
    • Editor: @azaozz, @iseulde
      • Discussion around More text patterns (#33300)
      • @jorbin and @helen both suggested removing bold/italic
    • @mike brought up #21602: Redirect_canonical can lead to infinite loop on index navigation if site url is not all lower case

    Ticket Triage

    Ticket triage continued bringing the tickets left for the milestone down to 17.

    Full meeting logs in Slack.

  • Andrew Rockwell 4:51 pm on February 24, 2016 Permalink |
    Tags: ,   

    Week in Core, Feb. 16-23 2016 

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

    • 131 commits
    • 82 contributors
    • 89 tickets created
    • 9 tickets reopened
    • 140 tickets closed

    Ticket numbers based on trac timeline for the period above.

    Note: If you want to help write the next WordPress Core Weekly summary, check out the schedule over at make/docs and get in touch in the #core-weekly-update Slack channel.

    Code Changes


    • Improve the color contrast ratio for the input placeholders. [36619] #35777
    • Remove title attributes from the Plugin details modal. [36618] #35111
    • Remove the revisions limit warning from the Publish box. [36612] #35029
    • Fix displaying of Universal time and Local time info on the General Settings screen. [36585] #35064
    • Improve color contrast updating any #999 gray used for text or icons to a darker gray. [36587] #35660
    • Accessibility: after [36000] conditionally print out the aria-describedby attribute on the Featured Image postbox. [36584] #35076
    • Accessibility: Reduce the WordPress shades of grey, Episode 2. [36582] #35783


    • Replace the custom comment form with comment_form() and reduce number of links. [36595] #35888
    • Remove extra spaces between function names and brackets [36572] #16774, #34365
    • Remove slashes from search terms and use urldecode() in non-URL contexts. [36560] #35712


    • Allow users to log in using their email address. [36617] #9568


    • Do not strip slashes from the whole &_POST when doing autosaves. [36543] #35408


    Build/Test Tools


    • Rename $linea to $remote_source for clarity. Add remote_source to comment data, so it’s available to preprocess_comment and comment_post filters. Pass the original (unfiltered) response source to the filters too (as remote_source_original in comment data). [36661] #34141
    • Pass comment data to the comment_post filter. [36660] #34141
    • Look for wp_error when checking whether $wpdb->get_col_length() has failed. [36542] #10377
    • Refresh the Moderate Comment screen for a friendlier experience with email moderation actions. [36588] #34133


    • Let WP_Customize_Selective_Refresh class be final to match manager and other component classes. [36624] #27355
    • Ensure dynamic_sidebar() finishes with removing the sidebar ID from the current_dynamic_sidebar_id_stack. [36623] #27355
    • Prevent dropping backslashes from input on general settings and settings for nav menus and some widgets. [36622] #35898
    • Fix and extend broken ajax unit tests to account for partials being skipped from rendering. [36650] #35914
    • Skip exporting partials to client and handling rendering requests if user can’t modify associated settings. [36643] #27355, #35914
    • Add visual feedback to reorder buttons. [36641] #35041
    • Contain “No image set/selected” in dashed border. [36639] #35826
    • Update unit test for WP_Customize_Nav_Menu_Item_Setting::value_as_wp_post_nav_menu_item() to account for slashing if user can’t unfiltered_html. [36610] #35869
    • Prevent PHP notice and JS error caused by widgets and nav menus components if user only has customize capability. [36611] #35895
    • Fix previewing and updating of nav menu items containing slashed/slashable characters. [36608] #35869
    • Fix “Loading…” message from persisting in panel title when user does not have manage_options cap to edit blogname. [36606] #35579
    • Add selective refresh framework with implementation for widgets and re-implementation for nav menus. [36586] #27355
    • Prevent consecutive refresh requests from preview from causing JS error. [36583] #27355, #35866
    • In nav menus show the location name instead of slug. [36573] #34755
    • Add missing test changes for [36573]. [36574] #34755
    • Autoprefixer for [36532]. [36548] #31195


    • Correct $number type in number_format_i18n(). [36644] #35893
    • Update the type for $callback parameters to callable in DocBlocks for add_settings_section() and add_settings_field(). [36642] #35772
    • Improve documentation for WP_REST_Request to highlight a caveat of ArrayAccess when it comes to passing similar arguments for multiple request methods. [36636] #35799
    • Improve description of get_term() return value. [36634] #35919
    • Correct param types on some filters in wp_filter_comment(). [36626] #35908
    • WP_Meta_Query accepts ‘EXISTS’ or ‘NOT EXISTS’ for $compare. [36609] #35891
    • Fix two incorrect notations of the $show_admin_bar global to specify a boolean type, not WP_Admin_Bar. [36601] #35686
    • Add missing @since and @access tags to get_curies method and filter from r36533 [36593] #34729, #32246
    • Add an explanation for the dynamic portion of the {$taxonomy}_term_edit_form_top hook, introduced in [36526]. [36577] #32246
    • Add formatting to a changelog entry in the hook doc for the rest_dispatch_request filter. [36576] #32246
    • Remove a duplicate @static tag from the WP_Customize_Panel->instance_count property DocBlock. [36568] #32246


    • Only display an iframe when it was successfully loaded. This prevents showing a blank iframe by first checking if a message was successfully received from it. [36648] #35894
    • Make the click event handler work for dynamically added links. [36637] #35630
    • Load the default site icon from the wp-includes directory. [36635] #35322

    External Libraries

    • Update Backbone and Underscore to the latest versions. [36546] #34350



    • Avoid a PHP warning when wptexturize() is called with a trailing less-than symbol. [36578] #35864



    • Certificate bundle: Attempt to move a certificate lower in the file to allow older OpenSSL versions to parse it & communicate with WordPress.org securely again. The OpenSSL version which was failing in this case was OpenSSL 0.9.8e 23 Feb 2007. [36570] #35637, #30434, #25007


    • Add translator comments and context to “New Site Created” email notification strings. [36669] #35716
    • Replace hardcoded URL in a translatable string with a placeholder in wp-admin/upload.php. [36668] #35743
    • Add missing periods to two strings in wp-admin/network/sites.php [36664] #35720
    • Add translators comments to wp-admin/users.php. [36621] #35885
    • Remove HTML tags from translatable strings in wp-admin/plugins.php. [36662] #35679
    • Add the ability to parse a whole directory with add-textdomain.php. [36600] #35499
    • Remove PHP4 constructor from add-textdomain.php. [36599] #31982
    • Add test for wp_dropdown_languages(). [36631] #35294
    • Respect the coding standards when adding textdomains with add-textdomain.php. [36603] #21616
    • Remove tag from translatable string in wp-admin/includes/class-wp-filesystem-ssh2.php. [36670] #35741
    • Remove tag from translatable string in wp-admin/includes/class-wp-ms-sites-list-table.php. [36663] #35676
    • Remove tag from translatable string in wp-admin/theme-install.php. [36666] #35739
    • Remove tag from translatable string in wp-admin/options-general.php[36656] #35673
    • Remove tags from translatable strings in wp-admin/install.php. [36665] #35738
    • Remove tags from translatable strings in wp-admin/custom-header.php[36658] #35675
    • Remove tags from translatable strings in wp-admin/themes.php. [36657] #35745
    • Remove tag from translatable string in wp-admin/user-edit.php[36655] #35672
    • Remove tag from translatable string in wp-admin/import.php[36653] #35671



    • Ensure backslashes are saved in menu item fields. [36613] #14134


    • Make view mode sticky for network users and sites list tables. [36562] #34365
    • Avoid a PHP Notice when saving a site address without a path. [36561] #35631


    • In wp_upload_dir() do not cache error from wp_mkdir_p() when a directory cannot be created. Keep trying to create the dirs. This happens mostly in file upload context. [36628] #34359
    • Replace wp_upload_dir() with the new wp_get_upload_dir() in all cases where a file is not being uploaded. Deprecate _wp_upload_dir_baseurl(), and replace it with wp_get_upload_dir(). [36569] #34359
    • Reintroduce term meta unit test accidentally removed in [36566]. [36567]
    • More performance improvements to metadata lazyloading. [36566] #35816
    • Improve the performance of wp_upload_dir(): [36565] #34359



    • Introduce get_post_types_by_support(). Similar to get_post_types(), this new function returns a list of post type names that support a specific feature. [36652] #34010
    • Non-trashed posts should take slug priority over trashed posts. [36607] #11863


    • Search should match post_excerpt in addition to title and content. When ordering search results, exact matches in the post excerpt are weighted above those in post content, but below those in the post title. [36647] #35762
    • Allow a seed value to be passed when using ‘rand’ $orderby. [36632] #35692
    • In WP::handle_404() introduce a filter pre_handle_404 to short-circuit default header status handling. [36629] #10722
    • is_*( $int ) should not falsely match strings starting with “$int”. [36625] #24674, #35902



    Script Loader

    • Don’t parse $src if the current color scheme isn’t registered. [36591] #35882
    • Pass the media attribute as an argument to the style_loader_tag filter. [36592] #34765
    • Bail if WP_Styles::_css_href() returns an empty value. [36590] #35229
    • Make sure that inline styles for handles without a source are printed. [36550] #35229
    • JSHint for [36602]. [36605] #33301
    • Fix missing script output when the groups of dependencies are different. [36604] #35873
    • Introduce wp_add_inline_script(). [36633] #14853
    • Restore loading order for wp-admin: open-sans, dashicons, etc. [36551] #35229


    • Clarify the allowed values for the $media parameter of wp_register_style()/wp_enqueue_style(). [36649] #35921


    • Make $taxonomy parameter optional in get_edit_term_link(). [36646] #35922
    • Allow get_terms() to fetch terms regardless of taxonomy. [36614] #35495
    • In get_terms(), assemble WHERE conditions in an array instead of concatenating. [36598] #35495
    • Add changelog entry for publicly_queryable argument in register_taxonomy(). [36564] #34491





    • Pass locales of all available languages to the themes/plugins update API. [36630] #34937


    • Prevent further actions if an update button is disabled. [36558] #35257
    • Add a hook to the end of the network’s Add New User form. [36556] #15389
    • Add a hook to the end of the Add Site form. [36555] #34739
    • Enhance the language of the “Success” message. [36553] #34897
    • Improve wording on the page for the database connection details. [36545] #26879
    • Use “Username” instead of “User Name”. [36544] #35850


    • Pass the array of user IDs being deleted to the delete_user_form action hook in two places. [36640] #35063
    • Introduce _wp_get_current_user() for improved backward compatibility. [36651] #19615


    • Avoid a PHP notice in is_dynamic_sidebar() is a sidebar is registered but does not yet have an index in the sidebars_widgets option. [36667] #35928


    Thanks to @dnewton,@joemcgill, @abiralneupane, @adamsilverstein, @afercia, @aidanlane, @Ankit, @apaliku, @atimmer, @azaozz, @barryceelen, @boonebgorges, @charlestonsw, @chris_dev, @ckoerner, @coffee2code, @coreymcollins, @danielbachhuber, @dd32, @Denis-de-Bernardy, @dlh, @DrewAPicture, @dshanske, @ericlewis, @ethitter, @flixos90, @GaryJ, @gitlost, @groovecoder, @Gupta, @hakre, @helen, @hlashbrooke, @iamntz, @igmoweb, @iseulde, @JamesDiGioia, @jdgrimes, @jeremyfelt, @JoeFusco, @joehoyle, @johnbillion, @jorbin, @K, @karmatosed, @kjbenk, @kovshenin, @lpawlik, @mayukojpn, @mdgl, @meitar, @melchoyce, @MikeHansenMe, @mikejolley, @mikeschroder, @netweb, @nicd, @ocean90, @pento, @prettyboymp, @ptahdunbar, @rachelbaker, @ramiy, @realloc, @ryan, @ryankienstra, @salcode, @sc0ttkclark, @sebastianpisula, @SergeyBiryukov, @stevegrunwell, @stevenkword, @swissspidy, @thewanderingbrit, @thisisit, @usermrpapa, @valendesigns, @vhomenko, @welcher, @westonruter, @williamsba1, and @wpsmith for their contributions! for their contributions!

  • Andrew Rockwell 7:14 pm on February 4, 2016 Permalink |
    Tags: ,   

    Week in Core, Jan. 26 – Feb. 2 2016 

    Hi everybody! Welcome back to the latest issue of Week in Core, covering changes from January 26th [36407] – February 2nd [36470], changesets [36407-36470]. Here are the highlights:

    • 64 commits
    • 16 contributors with props
    • 83 tickets created
    • 6 tickets reopened
    • 45 tickets closed

    Ticket numbers based on trac timeline for the period above.

    Note: If you want to help write the next WordPress Core Weekly summary, check out the schedule over at make/docs and get in touch in the #core-weekly-update Slack channel.

    Code Updates

    Networks and sites


    • Allow loading when only the mysqlnd extension is loaded. [36434] #33261


    • Add a close() method to wpdb, for when the connection needs to be manually closed. [36433] #34903


    • Fix searching for available nav menu items by updating reference to nonce. [36432] #35617
    • Export nonce, theme, and url app settings in preview as exported in pane. [36414] #27355, #35617
    • Improve parity between JS Setting models in preview with JS Setting models in pane. [36407] #27355, #35616


    • In wp_read_image_metadata() make sure that IPTC keywords are UTF8 encoded. [36429] #35316


    • Avoid displaying two spinners when adding selected menu items. [36427] #35682
    • After [36379] prevent “Quick Search” form submission when pressing Enter. [36426] #35374
    • Remove a redundant and unused 0 parameter from the Delete Menu link on the nav menus admin screen. [36419] #35641


    • Add back $req variable in comments_template(). Reverts [36322]. [36425] #35473
    • Add a back link to wp_die() comment form submission error display. [36424] #4332
    • Fix set up/tear down of post types in comment query test. [36415] #35633


    • Improve the install page language chooser button style. [36423] #34547


    • Remove all the occurrences of the old CSS clearfix. [36422] #26396


    • Add the global cache group sites to restore_current_blog() and wp_start_object_cache(). [36413] #32450
    • Add the global cache group networks to restore_current_blog(). Missed in [36258]. [36411] #35251


    • Simplify action placement in update_metadata(). [36420] #35652
    • Revert changes to wp_validate_redirect()  [35792]. This causes a regression and causes redirects to potentially fail. [35792]  #5114, #34028
    • Pass additional params to get_archive_links filter. [36418] #35573


    • Document the difference between site_url() and home_url()[36408] #35238

    External Libraries

    • Update Random_Compat to the latest version (1.1.6). [36421] #35665


    Thanks to @afercia, @boonebgorges, @dd32, @ericlewis, @helen, @jorbin, @kouratoras, @nexurium, @ocean90, @pento, @rachelbaker, @sebastianpisula, @shamess, @Shelob9, @westonruter, and @wonderboymusic for their contributions!

  • Adam Silverstein 8:14 am on January 27, 2016 Permalink |

    Feature Plugin chat notes for Jan 26 


    • Review the feature plugins for status updates from leads
    • Open floor for feature plugin proposal

    Feature Plugin Updates

    • Background Image Cropper: @celloexpressions asked for feedback for the Background Image Cropper. Current thinking is this is better explored as a standard enhancement for core. See #32403.
    • Customizer: @westonruter left status on the blog post for the Customize Pane Resizer, Customize Device preview (along with @celloexpressions), Selective Refresh, and Transactions. Please comment there if you’re interested in helping out where needed (especially requested for the Pane Resizer).
    • Fields API: @sc0ttkclark updated: term add/edit is in: props @technosailor. Team has been working on simplifying the code required for each screen implementing the Fields API. Scott posted an update on make/core and reports getting lots of feedback (especially from @helen, @drew, @technosailor & @celloexpressions)
    • Shiny Updates:  @obenland updated – Lots of progress in the last week. @ipstenu helped tremendously in getting it multisite compliant. Team decided to not pursue shiny activations/deactivations for a whole set of reasons, mostly around redirects on subsequent page loads, and fatal error protection.
      Currently working on enabling theme updates without having to open the modal, and revamping update-core.php.  An update will be posted to the make/core blog soon. The team needs more feedback and testing! Testers can get the current plugin from the wordpress.org repository.
    • WP-API: @danielbachhuber updated – released beta 11 yesterday. The team is meeting in person (minus @rachelbaker) this week at A Day of REST. Summary: in the home stretch, but there’s a ton more work to do. Friday’s contributor day (at the Day of REST) will hopefully get other people diving in and contributing to the final push.

    Open Floor

    The full logs are available on Slack.

    • jrf 10:52 am on January 27, 2016 Permalink | Log in to Reply

      I’d love to continue the discussion on Plugin Dependency management within WP.
      We’d very much would like to invite everyone to give their opinion on the direction we’re thinking of taking though this survey: http://goo.gl/forms/Fq1gbY9vCW

      We’d really appreciate getting as many opinions as possible about this. Thanks!

      • Felix Arntz 11:50 am on January 27, 2016 Permalink | Log in to Reply

        I just took the survey, I have a few comments on the approach.

        I certainly like that multisite will be supported, this is definitely a requirement anyway. 🙂

        About the dependency management: although I personally would prefer a JSON file, I think the theme/plugin header way is more the WordPress way, and a lot easier. People new to WordPress and even to development should be encouraged to start creating plugins/themes – external libraries/library plugins make this a lot easier, but I’m afraid a JSON file is too complex. Maybe both methods should be supported: while only the JSON approach would support the full functionality of dependency management, the file header would still allow to at least require plugins listed on wordpress.org with a minimal version number (there’s not really room in there to do more complex things). If someone needs external plugins or something like that, that should only be possible using JSON.

        The other thing is, in my opinion the recommendations feature should not be part of the feature plugin. Standard dependency management does not handle recommendations either, and I think this goes into kind of an advertising direction which I wouldn’t like to have in WordPress Core.

        I’m looking forward to this project and I’m happy you make these efforts to create a feature plugin. I think the full power of this feature however could only be leveraged if the wordpress.org plugins API would be adjusted as well to contain dependency information as this would allow notifications prior to installing which I think is even more elegant than notifications before activating (also due to the problems that this would bring on multisite). Anyway, first things first! 🙂

    • Ryan Boren 3:33 pm on January 27, 2016 Permalink | Log in to Reply

      Beta testing is much easier when feature plugins are kept up-to-date in the plugin repo. This allows using the built-in WP update mechanism to follow development. Our beta testing onboarding, such as it is, relies on feature plugins being updated regularly.

      A survey of https://wordpress.org/plugins/browse/beta/ and https://make.wordpress.org/core/features-as-plugins/:

      • Background Image Cropper: Last updated one month ago in the plugin repo. The features as plugins entry is bare.
      • Customize pane resizer: This is listed in neither browse/beta nor features-as-plugins.
      • Customize Preview Responsiveness (aka Customize Device Preview): The Customizer UI Experiments plugin was last updated two months ago. This is called three different things.
      • Customize Partial/Selective refresh: The plugin hasn’t been updated for 6 months.
      • Customizer transactions: I don’t see this in browse/beta or features-as-plugins.
      • Fields API: This is not listed in browse/beta. Does it even exist in the plugin directory?
      • Shiny Updates: This is in browse/beta and kept up-to-date. As such, I’ve been testing it.
      • WP API: This is in browse/beta and kept up-to-date. It is pretty much the only feature plugin to post on make/core regularly and do calls for testing.

      Court beta audiences. Update plugins in the plugin dir, preferably nightly. Keep features-as-plugins up-to-date. Publish calls for testing to make/core. Here’s a call for testing template and checklist. http://simp.ly/publish/XrHJDL

    • Ryan Boren 8:04 pm on January 27, 2016 Permalink | Log in to Reply

      If you have the beta tester plugin, feature plugins can be installed from Plugins > Add New > Beta Testing. Details here: https://make.wordpress.org/core/handbook/testing/beta/

compose new post
next post/next comment
previous post/previous comment
show/hide comments
go to top
go to login
show/hide help
shift + esc
Skip to toolbar