WordPress.org

Make WordPress Core

Updates from September, 2016 Toggle Comment Threads | Keyboard Shortcuts

  • Nick Halsey 4:59 am on September 23, 2016 Permalink |
    Tags: ,   

    Customize Update 2016-09-22 

    This is the weekly update post for the customize component. It includes a summary of this week’s meeting, recent commits, and next week’s meeting agenda.

    Weekly Customize Meeting Summary

    On Monday we held our weekly 4.7 customize component meeting in #core-customize on Slack [logs]. Participants: @celloexpressions, @ataylorme, @westonruter, @johnregan3. This summary also contains a few notes on action since the meeting.

    4.7 Projects

    • Create pages within live preview during site setup – #37914#37915, #37916, #38002, #38013 – @celloexpressions
      • @boone shared a proposal later in the week for term status; a make/core proposal is likely the next step
      • @westonruter committed adding new pages to the static front page options, and making them contextual in #38013.
      • We need a new ticket following up on #38013 for enabling pages to be created within the static front page UI. @westonrtuer has initial code for this in the Customize Posts plugin.
      • We still need UX feedback on providing a path to edit newly-created pages, #38002.
    • A new experience for themes in the customizer – #37661 –@celloexpressions
      • We’re primarily pending feedback at this point. Could use some assistance from the shiny updates team to add shiny theme uploads as well.
      • There is another updated patch as of today with some minor bug fixes, based on testing from @rabmalin.
      • Usability testing started today; see the results on Make/Design.
      • A feature proposal post will be published next week.
    • Code-editing gateways, via CSS – #35395 – @johnregan3
      • We still need information from anyone familiar with the CSSTidy library. It seems that the version included in Jetpack is an up-to-date fork, as the original project was last updated in 2007. If anyone from Automattic can provide input here that would be appreciated.
      • We also need to ensure that the license, GPL 2.1 or later is compatible with core.
      • The CodeMirror library is also proposed to be bundled with core for this project; we would like core committer/lead developer approval for bundling both of these soon so that we can proceed. CSSTidy is a requirement, CodeMirror is a usability enhancement (syntax highlighting).
      • We’re planning to post the feature proposal the week after next.
    • Customizer browser history#28536 – @westonruter
      • Feature proposal post will be published in three weeks, as this shouldn’t need signficant work to polish up.
    • Customize transactions#30937 – @westonruter
      • @westonruter is working to sit down and focus on this this week, and will evaluate whether it’s still feasible for 4.7.
    • Improving sliding panels UI – #34391, #34343, #29158 – @delawski
      • @westonruter is planning to commit #34391 on Friday, after a final review from @celloexpressions. (#37661 will need a refresh, to be handled tomorrow night).
      • @delawski is also preparing a make/core post to be published in the next few days.
      • #34343 is pending #34391.
      • #29158 needs design ideas for the back arrows and close button focus styles, ticket updated accordingly.
    • Twenty Seventeen
      • @davidakennedry shared a mockup for video headers in #core-themes. This would require someone digging deep into #36581 and #32861 before work can begin on adding support for videos, and insert from URL may not be feasible.

    Additional Tickets Needing Attention

    • Customizer notifications – #35210 – needs UX feedback and a patch
      • @westonruter will work on this after transactions unless anyone else is willing to work on turning the latest proposal into a patch.
      • This ticket is holding up some of the other tickets on the 4.7 milestone, such as #22037 and #29932, as well as aspects of transactions.
    • Remove customizer support for IE8 – #38021

    Ticket Scrub

    We reviewed tickets with no replies. Many were authored by component maintainers, and as such required only a +1 on the ticket.

    • #36581: Customizer Header Image Control should extend the cropped image control
      • Pending someone volunteering to work on this.
    • #36589: Don’t use localhost in Tests_Image_Header tests
    • #36688: Exit button in customiser only lower third active
      • Not reproducible, needs reporter feedback.
    • #36733: Use a custom customizer section for add-widgets and add-menu-items panels, making this UI pattern reusable in plugins
      • Could use more discussion, but it would be nice to make this code accessible to plugins.
    • #37275: Facilitate creating controls that manipulate settings with object values
      • Low priority, commented accordingly.
    • #37281: Allow non-error notifications to be set for Customizer settings from PHP
      • This might be useful for Twenty Seventeen, depending on the custom color strategy.
    • #37727: Allow for customize control notifications to have extensible templates
    • #37964: Allow customizer controls to be encapsulated by accepting pre-instantiated settings
      • The patch needs to be reviewed.
    • #38077: Facilitating embedding customizer controls outside of sections
      • This will be more useful long-term, but isn’t a priority for 4.7.
    • #38091: Shortcut to collapse current control/section/panel is triggered when it shouldn’t be
      • Could use more opinions on whether this should be in 4.6.2.
    • #38093: WP_Customize_Color_Control – there is no option for transparent color
      • Commented but couldn’t find a duplicate ticket as mentioned in the meeting, does anyone else recall this issue?

    Recent Customize Commits

    Here are the customize-related commits for the past week:

    • [38618]: Customize: Ensure nav menu items lacking a label use the title from the original object.
    • [38624]: Customize: Let static_front_page section be contextually active based on whether there are any pages (including pages added in menus).
    • [38627]: Customize: Remove IE8 access to customizer to discontinue support.
    • [38628]: Customize: Add wp-util as a dependency for customize-controls.
    • [38642]: Accessibility: Fix the Customizer available menu items toggles focus for Safari and VoiceOver.

    Big thanks to those who contributed to patches committed this week: @ryankienstra, @westonruter, @afercia, @ocean90.

    We’re always looking for more contributors; check out the open customize tickets and swing by #core-customize in Slack to get involved. Fun fact: we’re 10 commits away from the 1000th commit that references customize.

    Agenda for 2016-09-26 Meeting

    Our next regularly-scheduled meeting is next Monday, September 26, 2016, 17:00 UTC. Agenda:

    4.7 Projects

    Additional Tickets Needing Attention

    • Customizer notifications – #35210 – needs UX feedback and a patch
    • Customizer UI Contrast/Focus Styles – #29158 – needs UI ideas for focus styles on back buttons

    Ticket Scrub

    • 4.7 Customize tickets sorted by date modified. We’ll discuss everything with no activity in the last week to make sure we’re still on track.
    • We’ll pick a different query to triage each week. For example, bugs awaiting review (need verification).

    We’ll see you next week!

     
  • Jeff Paul 8:06 pm on September 22, 2016 Permalink |
    Tags: , ,   

    Dev Chat Summary: September 21 (4.7 week 5) 

    This post summarizes the dev chat meeting from September 21st (agenda, Slack archive).

    Reminders

    • Schedule: As of this meeting, we are 4 weeks from the final chance to merge in major features. This includes Twenty Seventeen.

    Bug Scrubs

    Components & Features

    • Twenty Seventeen (@davidakennedy, @melchoyce)
      • Announcement post, latest update
      • Maintainers are out travelling today, but #core-themes is active and they will be holding a meeting on Friday at 18:00 UTC
    • REST API (@krogsgard, @kadamwhite )
      • Latest update
      • API discussion is at 7 am Pacific on Mondays
      • Settings endpoints and meta support both have first-passes on them, which need internal review and some more testing before we ship
      • We have a path forward for passworded posts (password in the query string, eww, but only viable option), there really isn’t a way we can see to avoid sending them as a query param
      • Meeting tomorrow in #core-restapi at 21:00 UTC to go through open issues around non-trivial, conceptual issues in WordPress. REST API team will prepare summary of issues for component maintainers and/or lead devs to review, question, and help guide discussion towards consensus.
    • Media (@mikeschroder, @joemcgill)
      • Latest update
      • Moving our weekly meetings up to Fridays at 17:00 UTC starting this week
      • Unexpected change to media title behavior in WP 4.6.1 (#37989) – The main issue here was resolved, but there seems to still be some odd behavior affecting words being chopped off filenames with international characters. Could use extra eyes from anyone (along with @sergey) more versed in i18n. Regression on the attachment titles that we generate on upload all became URL encoded instead of reading like a normal title.
      • Media search doesn’t include file name (#22744) – Committed earlier this week. Please report any issues that come as a result.
      • Next step in improving the organization of the media library is to assess both the infrastructure and UI improvements that need to be made here. Prefer to include #design early in this process, rather than asking for UI feedback on development driven decisions, hope to be part of the #design chat agenda tomorrow
    • Customize (@westonruter, @celloexpressions)
      • Latest update
      • In this week’s meeting we developed a schedule for publishing make/core feature proposals/dev notes for the remaining primary 4.7 customize projects, working backward from anticipated time to commit after the proposal and current readiness:
        • Week of 9/19: Improving sliding panels UI (34391, @delawski)
        • Week of 9/26: A new experience for themes in the customizer (37661, @celloexpressions). Please review soon for any requested changes in direction or design.
          • Summary: The existing themes section in the customizer is replaced with a full-screen theme browser and installer… The UI is nearly identical to wp-admin/theme-install.php… The .org-based theme-install previewer is not accessible here because it is likely to cause confusion with its customizer-like interface and the resulting need to switch contexts back and forth… An overarching goal is to avoid switching in and out of the admin/frontend/customize contexts during theme installation and previewing, instead staying in the hybrid customizer context that provides a combination of frontend plus controls… On the technical side, this heavily leverages JS-templated customizer controls and scales nicely to hundreds of themes.
          • Visual:
          • Please comment on the ticket with your feedback as soon as possible, preferably with specific concerns/ideas and reasons.
          • @celloexpressions to check in with @karmatosed on user testing ahead of posting final feature proposal
        • Week of 9/26: Customize transactions (30937, @westonruter evaluating this week and might punt again)
        • Week of 10/3: Code-editing gateways, via CSS (35395, @johnregan3/@celloexpressions). Awaiting approval/feedback on the acceptability/ability to bundle the two proposed libraries in core, with feedback particularly needed from committers and anyone familiar with the Jetpack fork of CSSTidy.
        • Week of 10/10: Customizer browser history (28536, @westonruter)
    • I18n (@swissspidy)
      • User Admin Language (#29783) – almost ready, another review this week and will commit if no blocker pops up
      • Introduce a locale-switching function (#26511) – @ocean90 to do some benchmarking
      • Introduce some JavaScript i18n functions (#20491) – GlotPress side has a solid plugin for exporting translations as JSON files (assistance on testing would be helpful). Still tinkering with the WordPress side and would love to get some additional feedback there.
    • Editor (@azaozz, @iseulde)
      • No updates, but would love to figure out a way to get more user feedback that helps us set direction for the editor. Will look to add some Core questions to annual survey on WordPress.org. Otherwise will start with something in the beta tester plugin, biased audience but it’s one that exists, is more likely to opt-in, and will be more flexible.
    • HTTPS (@johnbillion)

    Open Floor

    • @pbearne on Add filters to wp_new_user_notification and wp_password_change_notification (#38068) – added a set of filters to allow us to override email messages send by the wp_new_user_notification and wp_password_change_notification functions. @johnbillion to review as it relates to work on notifications.
    • @danieliser checking for interest for core in a set of reusable templates, models & functionality for forms, tabs & modals
    • @ericlewis on Bulk actions: Reactivate bulk actions hook + add hander hook for all admin screens (#16031) – could use a review of the latest patch, looking to commit sometime in the next week
    • @dshanske still working through the Pings and Trackbacks component
     
  • Andrew Rockwell 11:14 am on September 22, 2016 Permalink |  

    Week in Core, September 7 – 20, 2016 

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

    • 66 commits
    • 61 contributors
    • 171 tickets created
    • 15 tickets reopened
    • 106 tickets closed

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

    Code Changes

    Administration

    Bootstrap/Load

    • Docs: Use a third-person singular verb for wp_doing_ajax filter added in [38334]. [38607] #25669
    • Bootstrap: Use dirname() when loading class-wp-hook.php from plugin.php. [38589] #37707

    Charset

    • Database: Fall back to utf8 when utf8mb4 isn’t supported. [38580] #37982

    Customize

    • Add wp-util as a dependency for customize-controls. [38628] #38107
    • Remove IE8 access to customizer to discontinue support. [38627] #38021
    • Let static_front_page section be contextually active based on whether there are any published pages. [38624] #34923, #38013
    • Ensure nav menu items lacking a label use the title from the original object. [38618] #38015
    • CBetter hover/focus state for section titles and available widgets. [38602] #29158
    • Implement previewing of form submissions which use the GET method. [38587] #20714
    • Prevent widget previewing logic from building invalid jQuery selectors when sidebars are registered without a class name in before_widget. [38577] #37993

    Database

    • Normalise index names in dbDelta(). [38591] #34874
    • Increase the size of wp_posts.post_password to 255 characters. [38590] #881

    Formatting

    • Docs: Use a third-person singular verb for smilies filter added in [38504]. [38608] #35905
    • Update autop() to match wpautop(). [38594] #4857, #4857
    • Docs: Fix an outdated comment. [38593] #4857
    • Add an extra line break before block elements in wpautop(). [38592] #4857
    • Don’t send an HTTP status code in wp_send_json() by default. This avoids clobbering an HTTP status code that may have been set prior to calling this function. [38576] #35666

    General

    I18N

    • Correct context for Next/Previous strings in get_the_posts_pagination(). [38611] #37952

    Media

    Menus

    Networks and Sites

    • Multisite: Show always domain and path when deleting a site. [38633] #37309
    • Multisite: Use get_networks() in get_main_network_id(). [38632] #37218
    • Multisite: Provide $join as a possible SQL clause to the sites_clauses filter. [38631] #37922
    • Multisite: Add annotations for extended WP_Site properties. [38630] #37932
    • Docs: Synchronize docblocks for WP_Site_Query::__construct() and get_sites() after the changes in [37735], [38008], [38103], and [38336]. [38596] #38039
    • Docs: Correct description for domain and path arguments in WP_Network_Query::__construct(). [38595] #32504

    Options, Meta APIs

    • Options: Build out register_setting like register_meta. [38635] #37885

    Permalinks

    • Ensure Pending Review Posts permalink posts link to the draft [38572] #37423

    Plugins

    • Style the primary action link in the non-js “Installing Plugin” page. [38617] #36430
    • Tests: Use add_filter() when it’s available. [38582] #17817
    • Docs: Fix minor formatting for inline docs in WP_Hook following its introduction in [38571]. [38573] #17817
    • Hooks: Add the new class WP_Hook, and modify hook handling to make use of it. [38571] #17817

    Posts, Post Types

    REST API

    Shortcodes

    Taxonomy

    • Docs: Correct the description of {$taxonomy}_term_new_form_tag hook, making it more consistent with other *_form_tag hooks. [38629] #38104
    • Pass taxonomy name to actions in term-relationship CRUD functions. [38621] #38006
    • Query: Eliminate unnecessary wp_list_filter() call in get_queried_object(). [38586] #37962
    • Query: Avoid PHP notice in get_queried_object() when query contains NOT EXISTS tax query. [38585] #37962

    Themes

    • Docs: Correct two references to plugins in the $args parameter description for themes_api(). [38623] #37939
    • Docs: Use a third-person singular verb for {$type}_template_hierarchy filter added in [38385]. [38609] #14310
    • Docs: Use a third-person singular verb in the DocBlock summary for get_theme_file_uri(), get_parent_theme_file_uri(), get_theme_file_path(), and get_parent_theme_file_path(), introduced in [38578]. [38606] #18302
    • Docs: Use a third-person singular verb for theme_file_uri, parent_theme_file_uri, theme_file_path, and parent_theme_file_path filters added in [38578]. [38605] #18302
    • Add the non-encoded form of the queried item slug to the template hierarchy when the slug contains non-ASCII characters. [38583] #37655
    • Taxonomy: Revert accidental changes introduced in [38578]. [38579] #18302
    • Improve child theme file inheritance by introducing functions for locating and fetching the URL or path to files within child and parent themes. [38578] #18302

    Toolbar

    • Add a ‘View Posts’ link to the toolbar when on the post listing screen. [38634] #34113

    Upgrade/Install

    • Docs: Correct a comment and @return entry in WP_Upgrader::create_lock(). [38622] #38089
    • Automatically log users in after installation. [38619] #34084

    XML-RPC

    • Avoid a PHP notice in ::pingback_ping() if page title was not found. [38620] #36727
    • Check the minimum number of arguments in ::wp_getUsersBlogs() and ::blogger_getUsersBlogs(). [38600] #29750

    Thanks to @aaroncampbell, @adamsilverstein, @afercia, @akibjorklund, @DMing, @BjornW, @boonebgorges, @celloexpressions, @curdin, @danielpietrasik, @dd32, @DrewAPicture, @eliorivero, @enshrined, @ericlewis, @FlorianBrinkmann, @folletto, @georgestephanis, @gma992, @helen, @hideokamoto, @hugobaeta, @ian.edington, @iandunn, @jbrinley, @jeremyfelt, @joehoyle, @joemcgill, @johnbillion, @johnjamesjacoby, @jorbin, @karmatosed, @kitchin, @knutsp, @markshep, @MaximeCulea, @melchoyce, @monikarao, @nacin, @nazgul, @obenland, @ocean90, @paulwilde, @pento, @peterwilsoncc, @RedSand, @rmccue, @rnoakes3rd, @rommelxcastro, @ryankienstra, @ryanplas, @SergeyBiryukov, @skippy, @spacedmonkey, @swissspidy, @Takahashi_Fumiki, @websupporter, @welcher, @westonrute, @westonruter, and @wonderboymusic for their contributions!

     
  • Jeff Paul 2:24 pm on September 12, 2016 Permalink |
    Tags: , ,   

    Dev Chat Summary: September 7 (4.7 week 3) 

    This post summarizes the dev chat meeting from September 7th (agenda, Slack archive).

    Update on 4.6.1

    Updates on Components and Features

    • Media via @joemcgill
      • #22744 – a few approaches on this ticket that are pretty close, but some feedback that would be helpful
        • To enable searching for filenames, we have to add a JOIN for the meta table, which has performance implications
        • so a) we could use more eyes/testing and b) I want to make sure we’re ok to add this if we limit it to only the media library
        • We have a couple approaches in patches. The latest limits it only to the media modal and WP_Media_List tables.
        • on a site with ~14k attachments and ~18k posts, this change increased the main query time from 60.7ms to 187.6ms
        • Plan is to drop it in for including titles in library searches and see how that goes
      • Looking for interest in getting the media widget started back up
        • @sheri has expressed interest and it seems like previous efforts got fairly close. Would love to see folks interested jump back onto that project during this release.
        • discussion will be in our weekly meeting in #core-images on Fridays at 19:00 UTC. There is a jump-start post so people can comment there or jump into the #core-images channel.
    • Customize via @celloexpressions
      • Two items needing review:
        • 1) ability to preview terms in the customizer, which would enable users to build menus incorporating their new taxonomy term structure on initial site setup in the customizer. See #37914 and #37915. We need to come up with a plan with those interested in the taxonomy component, and @boone in particular. First step there is to decide if we want to try to target 4.7 for first steps there.
        • 2) #37661 needs feedback. Working on a user testing plan together with @karmatosed soon. Looking for specific feedback or testing.
    • REST API via @krogsgard
      • Notes from Monday’s meeting
      • Calls for help would be participation in our next weekly meeting, 1400 UTC on Monday, and a bug scrub 1400 UTC on Thursday, both via #core-restapi
      • some in-flight work this week that’s being a bit delayed by the participation of Ryan and Joe in A Day of REST
      • We have big documentation needs in the v2 docs repo if anyone wants to play along, especially anybody who wants to set up a multi-language-code-snippet thing that we could use
      • meta and options are both moving well but we’ll need to start getting beyond theory and into code pretty soon
      • We really, really want to talk to component maintainers! It’s my job to reach out to you all, and you can also reach out to me (@krogsgard).
    • I18N via @swissspidy
      • #26511 (switch_to_locale()) and #29783 (User Admin Language)
        • Those are currently in development and after I upload new patches today/tomorrow, I’d love to see some testing.
        • Think of possibilities like: The admin bar is shown in Dutch while the rest of the site is shown in English.
      • #20491 (Introduce some JavaScript i18n functions)
        • We want to make translating strings in JavaScript files easier. Like in PHP files, one should be able to use gettext functions to translate strings. This involves changes to the translate.wordpress.org platform and therefore requires thorough discussion, planning, and testing.
        • After tackling this topic many times and attending the GlotPress meeting yesterday, it’s clear that it’s a task covering not just 1 release. Thus, we’ll likely have to do regular meetings here in Slack to get there.
    • Fields API via @sc0ttkclark
      • looking into slimming down our Fields API proposal into a MVP form for our core proposal
      • blocked by lack of time because i’m also lead organizing WCDFW this month
      • I could use lots of eyes on it, we want to identify anything that might be out of scope, as well as look into what our plan will be for the Javascript side of things for fields like the Media modal
    • #36964 (Show/hide the tag-cloud on `edit-tags.php` admin pages using a filter) via @ramiy
      • it has a patch, ready to be commited
    • #17817 (do_action/apply_filters/etc. recursion on same filter kills underlying call) via @ocean90
      • Landed!
    • #37198 (Use `WP_Term_Query` for `wp_get_object_terms()`) via @flixos90
      • Would like some eyes on this.
      • The patch is two months old now, but generally worked and passed unit tests when I did it – I think feedback is needed before this moves forward though.
    • Topics & folks with no updates this week:

    Twenty Seventeen

    • Announcement post is up
    • This will be a call for help on both the theme and theme API fronts as noted last week, and thoughts on what sorts of theme API things will be needed to support the theme (there will be a number noted in the post).
    • For a little bit of a preview, some of the things that should be looked at are better page-on-front flows, making it easier to figure out where to edit something while live previewing (aka customizer), and how we can help people see how the theme can really serve their needs well (when relevant).
    • There will be *a lot* of opportunity for UX and UI when it comes to the core side of things, and of course front-end development with the theme itself. And lots and lots of our traditional PHP and JS development.
     
  • Andrew Rockwell 12:56 pm on September 1, 2016 Permalink |
    Tags:   

    Week in Core, August 23 – 30, 2016 

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

    • 110 commits
    • 62 contributors
    • 111 tickets created
    • 20 tickets reopened
    • 128 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

    • Hide the “No activity yet” smiley from assistive technologies. [38448] #37511
    • Improve the file upload inputs styling [38435] #35552

    Admin

    • Allow WP_Screen to be checked via autoload in convert_to_screen(). [38414] #36335

    Administration

    • Underline links in the admin footer for better accessibility. [38347] #37529

    Bootstrap

    • Check that ini_get_all() exists before calling it, allows us to work around hosts who disable the function for “security purposes”. [38431] #37680
    • Fix failing external HTTP tests after [38411] [38416] #36335
    • After r38409 and r38410, revert r38402 which reverted r38399 [38411] #36335
    • Run composer install after r38409. [38410] #36335
    • Move composer.{json|lock} into src. [38409] #36335
    • Revert [38399] as it’s broken /build/ and subsequently core.svn.wordpress.org [38402] #36335
    • Autoload classes using a Composer-generated PHP 5.2-compatible Autoloader [38399] #36335
    • Exclude more files from the autoloader.classmap in composer.json. [38395] #36335
    • Add composer.lock and src/wp-vendor files. Nothing is using this code yet, just going through the motions. Ignore the files in src/wp-vendor/composer that will explode in PHP 5.2. [38394] #36335
    • Run composer require xrstf/composer-php52 to get the updated suggested version. Change the vendor-dir to wp-vendor. [38393] #36335
    • Exclude some files from the Composer autoload setup via exclude-from-classmap. [38391] #36335
    • Load option.php in wp-settings.php, not in functions.php. [38386] #36335
    • Add a composer.json file to the project. No code relies on it (yet), and no vendor dir is checked in (yet). No autoloader is being used (yet). Taking this first step will hopefully encourage the perfectionists of our world to scrutinize each line [38384] #36335

    Build/Test Tools

    • Add support for is_front_page() to assertQueryTrue() and assert that all the tested conditions are supported by the method. [38405] #37849
    • Remove many unnecessary calls to rand_str() which can, in theory, fail at random. Static strings are much more appropriate. [38382] #37371
    • Ensure the Tests_Query_Conditionals tests set up the environment correctly before re-registering initial taxonomies. [38407] #37851
    • Require Basic_Object and Basic_Subclass files earlier in call stack [38445] #37523
    • Add docblocks for Basic_Object and Basic_Subclass classes. [38444] #37523
    • Use shared fixture in comment_exists() tests. [38372] #37842

    Comments

    • Don’t do direct SQL query when fetching decendants [38446] #37696
    • Add support for all HTTP protocol versions when returning a 405 from wp-comments-post.php. [38432] #37863

    Cron

    Customize

    • Allow users to more seamlessly create page-based nav menus during customization [38436] #34923
    • Circumvent the customizer attempting to preview links to static assets (such as uploaded images) [38396] #37828

    Database

    Docs

    • Alignment after [38369]. [38370] #37770
    • Correct various documentation around object and stdClass types. [38369] #37770
    • Add a missing parenthesis in an example in the DocBlock for wp_redirect(). [38350] #37770
    • Improve the docs for the_title() and make them more consistent with the_title_attribute(). [38348] #37732

    Editor

    • Fix jumpiness on pressing backspace and delete in the Text editor. [38426] #37690
    • Use Beacon API over sync request [38425] #
    • Improve word-count.js documentation. [38358] #37718

    Embeds

    • Wp-settings.php loads class-wp-embed.php, which currently produces side effects. Move the global instantiation to wp-settings.php. WP_Embed is then in a file by itself. [38362] #37827
    • Add a missing regex delimiter for Facebook URLs. [38368] #34737
    • Add support for embedding Facebook posts and videos via oEmbed. [38367] #34737
    • Many of our oEmbed providers now default to HTTPS embeds, redirect to the HTTPS oEmbed endpoint, or have complete support for HTTPS even if they don’t default to HTTPS [38366] #28507
    • Always use the HTTPS endpoint for YouTube embeds. The scheme parameter is no longer required as all YouTube assets now use HTTPS. [38365] #36274, #28507

    FTP

    • Ensure that there is only one class named ftp, which is what is expected in the loading of this arcane library. This ensures that an autoload generator, something along the lines of Composer, won’t hiccup when it gets to these files. [38380] #36335

    Feed

    • Move ‘WP_Feed_Cache’, ‘WP_Feed_Cache_Transient’, WP_SimplePie_File and WP_SimplePie_Sanitize_KSES into their own files via svn cp. If we move forard with autoloading, class-feed.php is useless. We could even remove it now, and just load these new files in wp-settings.php. That can be decided post-mortem. class-feed.php is an interesting name: there is no Feed or WP_Feed class. [38354] #37827

    Formatting

    • Add a parameter to wp_send_json_error(), wp_send_json_success(), and wp_send_json() for specifying the HTTP response code [38422] #35666
    • For a performance boost in remove_accents(), convert chr() calls to string literals. [38359] #37643

    General

    • AJAX actions for List Tables do not need to declare global $wp_list_table. List tables on admin screens are in global scope, and they contain hooks that don’t pass the the list table as context, hence using globals there so that functions can import them. That problem does not exist in the AJAX actions, which are virtually impossible to hook into as is. [38455] #37699
    • Move _WP_List_Table_Compat into its own file. [38392] #37827
    • There is no good reason for class-wp-site-icon.php to drop a global instance of itself whenever the file is loaded. The lone use of the global instance of WP_Site_Icon is in an AJAX action that provides virtually no way to override – the file is loaded immediately before the global is used. [38355] #37699
    • Correct the documentation for the wp_dropdown_users_args filter description and its parameters. [38406] #37770
    • After r38303, replace usage of global $_wp_additional_image_sizes with wp_get_additional_image_sizes(). [38383] #37699
    • Move WP_Session_Tokens and WP_User_Meta_Session_Tokens into their own files via svn cp. If we move forard with autoloading, session.php is useless. We could even remove it now, and just load these new files in wp-settings.php. That can be decided post-mortem. [38353] #37827
    • Move WP_Text_Diff_Renderer_inline (behold that lowercase “i”) and WP_Text_Diff_Renderer_Table into their own files via svn cp. [38352] #37827
    • Break up class-IXR.php into individual class files. [38389] #37827
    • After [38399], update the .gitignore file accordingly. [38401] #36335

    HTTP API

    • Accept non-string values in cookies, fixing a regression since 4.5. [38430] #37768
    • 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. [38429] #37733
    • Separate the test for wp_parse_url() with -1 as its component into a separate test, so the remaining tests can use strict type checking. This helps avoid gotches with the potentially empty values (ie. null) that we’re testing for. [38453] #36356
    • The tests for wp_parse_url() can’t be strict on type because this causes the tests to fail on PHP 5.2 which, bizarrely, returns the results of parse_url() (when called with a $component parameter) in a different order to later PHP versions. [38452] #36356
    • Prevent a fatal error on PHP < 5.4.7 due to changes introduced in [38449]. [38450] #36356
    • Add a $component parameter to wp_parse_url() to give it parity with PHP’s parse_url() function. [38449] #36356

    I18N

    • Correct various instances of incorrect usage of esc_attr_e(). [38424] #37457Iimprove accuracy of docs. [38360] #37585
    • After r38364, check that global $wp_locale is an instance of WP_Locale before calling ->is_rtle() in is_rtl(). [38438] #37827
    • Retire another remaining wp-includes/locale.php require, and instead load the required WP_Locale class directly. [38404] #37827
    • Move is_rtl() to l10n.php (which loads way earlier). Load WP_Locale file in wp-settings.php. Retire wp-includes/locale.php – it only loaded the class and the one function, is_rtl(). If someone loaded this file for fun somewhere else, it would be a fatal error. [38364] #37827

    Load

    • Move WP_MatchesMapRegex into its own file. [38376] #37827
    • Remove class-feed.php (There is no class named Feed or WP_Feed, it just loads other classes) and, instead, move the require calls to the only place they are ever included: inside fetch_feed(). This simplifies the include path. [38374] #36335
    • Remove session.php and, instead, move the 2 require calls to wp-settings.php. This simplifies the include path. [38373] #36335
    • Load class-phpass.php (PasswordHash class) early in wp-settings.php, instead of require_once()’ing it in several places. [38371] #36335
    • Move is_wp_error() to load.php so that WP_Error is in a file by itself. [38363] #37827

    Media

    • Add a $wp_error parameter to wp_insert_attachment() to give it parity with wp_insert_post(). [38408] #37813

    Multisite

    • Move get_current_site() to load.php so that it can be used in more places, instead of importing global $current_site. [38388] #37699

    OEmbed

    • Add unit tests. @group external-oembed is not run by default. [38454] #32360
    • Move _wp_oembed_get_object() to embed.php, where all of the other embed functions live. WP_oEmbed is then in a file by itself. Load class-oembed.php in wp-settings.php and remove extraneous include calls. [38361] #37827

    Permalinks

    • Correct an invalid peramstructure tag in a test. [38417] #37858

    Post Thumbnails

    • Prevent post thumbnail previews from spilling into other images [38433] #37697

    Posts, Post Types

    • Introduce a missing private query var that should have been introduced as part of #15459 [38451] #15459, #34982
    • Don’t improperly cast IDs when fetching post, user, or term objects. [38381] #37738

    Press This

    • The file for the WP_Press_This class should not produce side effects. Similar to what we did in r38355 for WP_Site_Icon, drop the instances of global instantiation for $wp_press_this via loading the file. The variable can be set inline when necessary. In most of those places, if the global is already set, the file does not load and stomp it currently. [38397] #37699

    Query

    • Add and improve tests for query conditionals on the front page and home page. [38413] #37851
    • Collapse several of the is_* methods using __call(). Add method annotations. [38356] #37830
    • Move WP_Query into its own file via svn cp. [38351] #37827

    Role/Capability

    • Only users who can manage options should be able to trash/delete the page for posts or the front page, as they are the only users who can restore it or subsequently alter the “Front page displays” setting. [38378] #37580
    • Set a property, $db, on WP_Roles to reduce global imports. [38387] #37699

    Script Loader

    Security

    • Return a 403 instead of a 200 HTTP status when check_ajax_referer() fails [38421] #36362
    • Trigger a _doing_it_wrong() when check_ajax_referer() is called without its first parameter. This brings it inline with check_admin_referer(). [38420] #36361

    Taxonomy

    • Remove unnecessary uniqueness check in get_attachment_taxonomies(). [38437] #37368
    • Eliminate unnecessary variable in WP_Term_Query. [38377] #37544

    Themes

    • Correct the type for the $name parameter of the get_header, get_footer, get_sidebar, and get_template_part_{$slug} hooks. [38434] #37770
    • Correct the list of possible values for the dynamic portion of the {$type}_template_hierarchy and {$type}_template filters. [38428] #14310
    • Introduce tests for the theme template hierarchy. [38419] #14310
    • Update filter names in the inline documentation for the get_*_template() functions. [38418] #14310, #37770
    • Remove failing tests introduced in [38390]. [38403] #14310
    • Begin introducing unit tests for the expected theme template hierarchy. More to come. [38390] #14310
    • Make the template hierarchy for a given template type filterable [38385] #14310

    TinyMCE

    • Change the default font for the vi locale to the same stack as he_IL. [38427] #37755
    • Fix toolbars alignment in RTL. [38349] #37760

    Unit tests

    • Enforce $args object in wp_nav_menu() & Walker_Nav_Menu [38400] #24587

    Upgrade/Install

    • Don’t display PHP errors during installation [38423] #37358
    • After [37687], fix the number of params passed to the upgrade hooks [38415] #37731
    • Wp-admin/includes/class-wp-upgrader-skins.php is unused, remove it. All of the same includes are loaded in class-wp-upgrader.php. [38379] #37827

    Props

    Thanks to @afercia, @Akeif, @andizer, @Ankit, @azaozz, @boonebgorges, @celloexpressions, @Chaos, @danielkanchev, @dd32, @deeptiboddapati, @diagnose, @DrewAPicture, @DylanAuty, @Engine, @flixos90, @fo, @Frank, @Frozzare, @GaryJ, @gitlost, @grapplerulrich, @Gupta, @helping, @henrywright, @ionutst, @iseulde, @issue, @ixkaito, @JakePT, @jipmoors, @joemcgill, @johnbillion, @JohnPBloch, @jrf, @K, @Klein, @kraftbj, @mapk, @melchoyce, @mrahmadawais, @nmt90, @ocean90, @pento, @peterwilsoncc, @Presskopp, @Rarst, @rodrigosprimo, @SergeyBiryukov, @shayanys, @stephenharris, @swisspidy, @swissspidy, @this, @TimothyBlynJacobs, @tnash, @to, @tollmanz, @valendesigns, @westonruter, @wonderboymusic, and @zsusag for their contributions!

     
  • Eric Binnion 4:21 am on August 18, 2016 Permalink |
    Tags: ,   

    Week in Core, August 9 – 16, 2016 

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

    • 35 commits
    • 38 contributors
    • 73 tickets created
    • 7 tickets reopened
    • 52 tickets closed
    • WordPress 4.6 released 🎉

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

    Code Changes

    Bootstrap/Load

    Build/Test Tools

    • Build/Test Tools: Ensure PHP 7.1 is tested on Travis.[38273] #37625

    Export

    External Libraries

    General

    Help/About

    Import

    • Update/Install error messages: do not escape from the template, escape the error message string before inserting it. [38240] [38241] #37623
    • Correct the documentation for the get_sample_permalink filter, and improve the documentation for the get_sample_permalink() function. [38272] #37682

    Post Thumbnails,Post Thumbnails,Post Thumbnails

    Script Loader

    • Fix protocol-relative URLs for the preconnect relation type. Props azaozz for review. [38255] #37652

    Upgrade/Install

    Users

    Thanks to @afragen, @azaozz, @azaozz for testing and second sign off, @Clorith, @dd32, @dd32 for review, @dimadin, @DrewAPicture, @DrewAPicture for review, @flixos90, @helen, @hugobaeta, @ipstenu, @ipstenu for research, @jeremyfelt, @JerrySarcastic, @JerrySarcastic, @joemcgill, @johnbillion, @johnpgreen, @jorbin, @macmanx, @MattyRob, @ocean90, @pento for review, @peterwilsoncc, @petya, @Presskopp, @RoseAppleMedia, @rosso99, @sebastian.pisula for the original patc, @SergeyBiryukov, @stephenharris, @swissspidy, @theMikeD for the initial patch, @voldemortensen, @westi for investigation, and @wonderboymusic for their contributions!

     
  • Andrew Rockwell 4:29 pm on August 11, 2016 Permalink |
    Tags: ,   

    Week in Core, August 2 – 9, 2016 

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

    • 58 commits
    • 47 contributors
    • 76 tickets created
    • 10 tickets reopened
    • 53 tickets closed

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

    Code Changes

    Help/ About

    Boostrap/ Load

    Customize

    Dashboard

    Docs

    Embeds

    • Fix copy/paste error in WP_oEmbed::_add_provider_early() description. [38230] #37602

    Emoji

    Formatting

    I18N

    • Correct the documented return types of get_translations_for_domain(). [38198] #32246

    Media

    Multisite

    Plugins

    Requests

    Taxononmy

    • Set WP_Term_Query::terms when returning terms from the cache in WP_Term_Query::get_terms() [38212], [38214] #37591
    • Add unit that shows that WP_Term_Query is broken when the query is read from the cache. [38211] #37591

    Themes

    Upgrade/ Install

    Props

    Thanks to @adamsilverstein, @afercia, @Ankit, @azaozz, @boonebgorges, @celloexpressions, @cmillerdev, @dd32, @DrewAPicture, @endocreative, @fliespl, @flixos90, @gitlost, @Gupta, @hugobaeta, @iamfriendly, @Ipstenu, @ivantedja, @jbrinley, @jeremyfelt, @joemcgill, @johnbillion, @jorbin, @juhise, @K, @karmatosed, @macmanx, @mapk, @michael-arestad, @mikeschroder, @nacin, @obenland, @ocean90, @olarmarius, @ovann86, @pento, @peterwilsoncc, @petya, @rahulsprajapati, @ramiy, @rosso99, @SergeyBiryukov, @swissspidy, @vishalkakadiya, @westonruter, @wonderboymusic, and @zetaraffix for their contributions!

     
  • Grant Palin 3:49 pm on August 3, 2016 Permalink |
    Tags: ,   

    Week in Core, July 26 – August 2, 2016 

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

    • 20 commits
    • 17 contributors
    • 69 tickets created
    • 4 tickets reopened
    • 38 tickets closed

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

    Code Changes

    Build/Test Tools

    • Add npm-shrinkwrap.json to 4.5. By shrinkwraping our dependencies, the same versions of everything will be installed no matter what rules the dependency package.json has specified. [38177] #37541

    Bundled Themes

    Customize

    • Prevent customize-preview-widgets JS errors in preview if a sidebar is registered with empty before_widget/after_widget params. [38166] #37478

    Emoji

    • Add support for the Rainbow and Pirate flag emoji. Twemoji recently added images for the Rainbow and Pirate flags, and the latest iOS 10 beta added support for the Rainbow flag. Never let it be said that WordPress is at anything less than the cutting edge of emoji research and development. Merge of [38179] to the 4.6 branch. [38180] #37543
    • Add support for the Rainbow and Pirate flag emoji. Twemoji recently added images for the Rainbow and Pirate flags, and the latest iOS 10 beta added support for the Rainbow flag. Never let it be said that WordPress is at anything less than the cutting edge of emoji research and development. [38179] #37543

    Filesystem API

    • Output buffering for request_filesystem_credentials() should wrap the function directly. [38167] #37488

    HTTP API

    • Set $use_authentication property of Requests_Proxy_HTTP to true when proxy authentication is required. [38173] #37494
    • All non-GET/HEAD requests should put the arguments in the form body. [38165] #37456
    • Normalize cookies before passing them to Requests. [38164] #37437
    • Bump version of Requests to 1.7. [38163] #33055

    I18N

    • After [38077], merge two duplicate strings in wp_insert_term() and wp_update_term(). [38162] #18218

    Plugins

    • Use install_plugins_upload action to print the upload form. [38172] #37495
    • Move capability checks further up in wp_ajax_update_plugin() and wp_ajax_delete_plugin(). [38168] #37490

    Script Loader

    • Ignore deregistered dependencies in wp_dependencies_unique_hosts(). [38174] #37502
    • Script Loader: Clarify documentation of wp_resource_hints hook. [38161] #37458

    Upgrade/Install

    Misc

    Props

    Thanks to @davidakennedy, @DavidAnderson, @dd32, @dimadin, @francescobagnoli, @helen, @jorbin, @Koster, @ocean90, @pento, @peterwilsoncc, @ramiy, @SergeyBiryukov, @swissspidy, @westonruter, and @Yorick for their contributions!

     
  • Eric Binnion 3:40 pm on July 28, 2016 Permalink |
    Tags: ,   

    Week in Core, July 19 – July 26 2016 

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

    • 49 commits
    • 35 contributors
    • 73 tickets created
    • 4 tickets reopened
    • 67 tickets closed

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

    Code Changes

    Administration

    • System fonts: Adjust the smaller tabs so they appear as tabs. [38153] #36753
    • System fonts: Don’t quote single-word font names, per our coding standards. [38152] #36753

    Build/Test Tools

    Comments

    • Introduce the cache_domain argument for WP_Comment_Query to allow caching to a unique set of cache buckets. [38117] #37419
    • Tests: Include the check_comment function tests in the comment group. Adds @group comment notation to the Tests_Comment_CheckComment class. Introduced in [32519]. [38114] #37356

    Cron API

    • Docs: In wp_schedule_single_event(), add a note about scheduling an event to occur within 10 minutes of another event with the same action hook. [38148] #37455

    Database

    • Replace incorrect use of E_USER_NOTICE in wpdb::_real_escape() with the version number where the message was added. [38133] #36403

    Editor

    • Inline link: Remove proxying through WordPress to test if an URL exists. Fix and enhance the regex that tests if the URL is well formed. [38159] #36638
    • Improve styling of “Add Media” button on mobile and make it more consistent with media buttons added by plugins. [38132] #36999
    • Link check: Use wp.a11y.speak() to announce bad URLs. Do not add a title to the link toolbar. Better error message. [38126] #36638

    Feeds

    • Docs: Add missing class, method, and property DocBlocks for feed classes. [38112] #36295

    Filesystem API

    • Filesystem API: Change the default value for the $context parameter of get_filesystem_method() and request_filesystem_credentials() to an empty string. [38138] #37412

    General

    • Docs: Fix typo in hook description for customize_save_validation_before. [38140] #37318
    • Docs: Fix formatting, tense, verb conjugation, and other syntax for wp-includes/* elements introduced or changed in 4.6. [38121] [38125] #37318
    • Docs: Add missing inline documentation in WP_HTTP_Requests_Response. [38120] #37318, #33055

    Media

    • Docs: Update the description of the $box argument of wp_nav_menu_item_taxonomy_meta_box() for consistency with [38129]. Missed in [38130]. [38142] #37211
    • Docs: In meta box functions, clarify that “Meta box ID” refers to the id attribute of the meta box and not a numeric ID. [38131] #37211
    • Docs: Correct and expand the docs for the $taxonomy argument of wp_nav_menu_item_taxonomy_meta_box(). [38128] #37211
    • Docs: Correct and expand the docs for the $post_type argument of wp_nav_menu_item_post_type_meta_box(). [38127] #37211
    • In wp_nav_menu_item_taxonomy_meta_box(): Rename the $taxonomy parameter to $box for clarity and consistency with other meta box functions. [38130] #37211
    • In wp_nav_menu_item_post_type_meta_box(): Rename the $post_type parameter to $box for clarity and consistency with other meta box functions. [38129] #37211
    • In get_page_uri(), don’t prepend a parent page slug if it’s empty. [38145] #36174

    Plugins

    • Use history.pushState() to customize the URL during searches. history.pushState() requires an event handler for popstate which doesn’t exist (yet). [38154] #37233
    • Add a missing space between classes on “ element for custom columns of the Plugins list table. [38149] #37460
    • List Table: Improve WP_Plugins_List_Table::search_box() which was added in [38033]. [38146] #37230
    • Improve Ajax search of new plugins. [38119] #37233
    • Accessibility: Ensure only text is sent to aria-live messages. [38115] #37382
    • Make search field placeholder translatable. [38141] #37230

    Posts, Post Types

    • Remove a redundant function_exists( 'mb_strlen' ) check in get_sample_permalink_html(). mb_strlen() is always available since [32114]. [38147] #30633
    • Unit Tests: Add a @ticket reference for test_get_page_uri_without_argument(). [38144] #26284
    • Unit Tests: Move get_page_uri() tests to post/getPageUri.php, added in [37345]. [38143] #26284

    Post Thumbnails

    • Remove an unused nonce in _wp_post_thumbnail_html(). [38137] #12922
    • Only update featured images when saving a post. [38118] #12922

    Script Loader

    Themes

    • Docs: Fix typo in wp_title() description. [38135] #37442
    • Docs: Change type of WP_Upgrader_Skin::$result to string|bool|WP_Error. [38134] #32246

    TinyMCE

    • Fix the calculation for the inline toolbar vertical position. [38160] #37481
    • wpView:
    • Add the wpview-wrap class and pass third param to the getNodes() callback for back-compat.
    • Attach the mutation observer that resizes a view iframe inside the iframe to minimize memory use/leaks.
    • Remove the wp-mce-view-unbind event. It has never been particularly reliable and now it doesn’t fire when the user deletes a view by typing or pasting over it.
    • Restore changing of a view iframe body classes when the editor body classes change. [38158] #36434
    • TinyMCE, wpView: bail early when the iframe node is not attached to the DOM. We can’t load any HTML in it as here is no iframe.contentWindow in these cases. [38157] #36434
    • Fix selecting an image on touch in iOS Safari for TinyMCE 4.4.1. [38156] #37427
    • Upgrade to 4.4.1, changelog: https://www.tinymce.com/docs/changelog/#version441-july262016. [38155] #37427, #37476

    Upgrade/Install

    • Prevent an endless self-calling loop in wp_tempnam(). [38151] #33999

    Thanks to @adamsilverstein, @afercia, @afineman, @andizer, @azaozz, @bradt, @Chouby, @chriscct7, @crstauf, @DrewAPicture, @flixos90, @FolioVision, @gma992, @helen, @ideag, @inderpreet99, @iseulde, @ixkaito, @joemcgill, @jorbin, @medariox, @mehulkaklotar for initial patch, @mikeschroder, @netweb, @ocean9, @ocean90, @pento, @peterwilsoncc, @rachelbaker, @rahulsprajapati, @rahulsprajapati for initial patch, @ramiy, @SergeyBiryukov, @stevenkword, and @swissspidy for their contributions!

     
  • voldemortensen 10:34 pm on July 27, 2016 Permalink |
    Tags: , ,   

    Dev Chat Summary: July 27, 2016 

    WordPress 4.6 Release Candidate, announcements and our next steps

    WordPress 4.6 Release Candidate 1 was made available for testing today. If you have any plugins or themes, please starting testing them against WordPress 4.6.

    As always, Release Candidate availability also means there is a string freeze in place and all commits must be reviewed by two or more permanent committers and made by a permanent committer. No exceptions. Guest committers can commit to unit tests at any time.

    There are currently 2 tickets in https://core.trac.wordpress.org/report/6. These and any future tickets shouldn’t be open for longer than 24 hours.

    WordPress 4.6 Release Candidate

    About page

    Unfortunately, the About page wasn’t able to be committed to trunk prior to RC1, but @hugobaeta has been working hard to get it ready. You can see a draft here: https://cloudup.com/cDgw_UvCluc

    WordPress 4.6 still needs a tagline. What should a tagline cover?

    • What do you think people will be the most excited about?
    • What would actually make you keep reading an about page and possibly feel excited to go try something out?

    Much discussion happened during the meeting. You can read the conversation and suggested tag lines starting here: https://wordpress.slack.com/archives/core/p1469651308001266

    Component announcements/updates

    • Trac issues are hopefully fixed.
    • To improve the review workflow during RC @ocean90 is looking into a fix which currently prevents us from branching earlier.

    Open discussion

    #29204 was brought up, but its unfortunately to late to be resolved in the 4.6 release cycle.

     

    Full meeting logs can be found here: https://wordpress.slack.com/archives/core/p1469649667001211

     
c
compose new post
j
next post/next comment
k
previous post/previous comment
r
reply
e
edit
o
show/hide comments
t
go to top
l
go to login
h
show/hide help
shift + esc
cancel
Skip to toolbar