Dev Chat Summary: June 13th (4.9.7 week 4)

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

4.9.7 planning

Updates from focus leads and component maintainers

  • The PHP team posted summaries from their last two meetings covering progress and decisions on #43986 and #44350 as well as the approach for #43987. Join them next week on Monday, June 18th at 15:00 UTC in #core-php as they continue the discussion on these two tickets.
  • The REST API team would like a core committer’s review on #38323, so if you’ve got some time then please help out there.
  • And a reminder for those heading to WCEU that Contributor Day is tomorrow, Thursday, June 14th. If you’re in town, then please consider attending… thanks!
  • No design lead for Customize focus while @melchoyce is on sabbatical until September 10th

Devchat coordination

  • @jeffpaul will be offline most of July, so we’ll need someone to help coordinate/run devchats.
  • If you’re open to collecting agenda items and publishing an agenda, running the actual devchat meeting, and/or publishing a devchat summary then please comment here or ping @jeffpaul if you’re able to help out… thanks!

Next meeting

The next meeting will take place on June 20, 2018 at 20:00 UTC in the #core Slack channel. Please feel free to drop in with any updates or questions. If you have items to discuss but cannot make the meeting, please leave a comment on this post so that we can take them into account.

#4-9-7, #core, #core-customize, #core-restapi, #dev-chat, #summary

Customize Meeting Summary: September 25th

This post summarizes the Customize meeting from September 25th in the #core-customize Slack channel (Slack archive).

Participants: @westonruter, @melchoyce, @obenland, @sirjonathan, @joemcgill, @sayedwp, @jbpaul17. Misbehaving: @tracbot.

Discussion highlights

Drafting and Scheduling

Gallery widget

Customizer UX for themes

Bug scrub

  • Trac listing of the enhancements and feature requests milestoned for 4.9 for the team
  • #39930: docs changes, so changing this from enhancement task ticket
  • #28721: related to and will be resolved when #39896 is merged
  • #34843: will be resolved by #37661
  • #35827: no one working on this, so punting to Future Release
  • #40527: punting
  • #40922: punting
  • #37964: will be picked up by @sayedwp when #39896 is done
  • #38707: CSS highlight part is implemented, but “revisions, selection, per-page, pop-out” is not
    • “per-page” aspect has been yanked from consideration in the near future
    • will work on revisions, selection, and pop-out in a feature plugin outside of core
  • #39275: likely to be resolved in #39896
  • #40104: @bpayton hopes to have a patch up by Friday
  • Topic for future devchat: What is the difference between a feature request and a feature project. It’s not really formalized. Are we deeming “feature request” to be the same as “feature project”?

Next week’s meeting

The next meeting will take place on Monday, October 2, 17:00 UTC in the #core-customize Slack channel. Please feel free to drop in with any updates, questions, or tickets you’d like to discuss. If you have items to discuss but cannot make the meeting, please leave a comment on this post so that we can take them into account.

#core-customize, #summary

Customize Meeting Summary: September 18th

This post summarizes the Customize meeting from September 18th in the #core-customize Slack channel (Slack archive).

Participants: @westonruter, @jbpaul17, @melchoyce.

Discussion highlights

CodeMirror (“Better Code Editing“)

  • @melchoyce to review three assigned tickets, #41872 being most urgent and other tickets with @mentions
  • @westonruter: working on ensuring the new CodeMirror-enhanced Custom CSS is compatible with Jetpack
    • Created a reusable “code editor” customizer control so that Jetpack can extend it, also for other plugins to add their own code editor controls easily
    • Need support from the Jetpack team to review and finish off the initial PR that I opened
    • @melchoyce: I’ll ping Jetpack folks this week once we’re all back from the Automattic Grand Meetup (most should be back by Wednesday)

Drafting and Scheduling

  • Best to wrap UX work, as @sayedwp has gotten started on that this week
  • @westonruter to get latest code pushed up to the test environment for review
  • @melchoyce: realized earlier this week that the apps have a similar draft/publish flow
    • @jbpaul17: Are we aligned with the flow there and if not should we align with what they have or open an Issue for them to update to what we’re working on for core?
    • @melchoyce: We are pretty close, I’ll compare side by side this week

Widgets

  • @westonruter: hoping to get the Core Media Widgets plugin updated with the new Gallery widget today for user testing so we can get it merged into core next week (#41914)

Bug scrub

Next week’s meeting

The next meeting will take place on Monday, September 25, 17:00 UTC in the #core-customize Slack channel. Please feel free to drop in with any updates, questions, or tickets you’d like to discuss. If you have items to discuss but cannot make the meeting, please leave a comment on this post so that we can take them into account.

#core-customize, #summary

Customize Meeting Summary: September 11th

This post summarizes the Customize meeting from September 11th in the #core-customize Slack channel (Slack archive).

Participants: @westonruter, @jbpaul17, @joemcgill. @melchoyce and other Automatticians travelling today for this week’s Automattic Grand Meetup (“annual company meeting”) and thus not in attendance.

Discussion highlights

Notification area

  • @westonruter: working on drafting design and dependencies we have (see: #35210)
  • @westonruter: Designs should get finalized today and work can get going on that piece quickly
  • @jbpaul17: I should be able to have work start on that shortly

CodeMirror (“Better Code Editing“)

  • @westonruter: aiming to get the core patch committed today
  • @westonruter: opportunity for a contributor to learn and get experience is integrating a PHP linter ahead of 4.9 Beta 1 (October 4th)

Widgets

Other updates

  • @jbpaul17: chasing down potential contributors to help with other items for 4.9, no updates as of now
  • Plan to start bug scrubs after weekly meeting leading up to 4.9 Beta 1

Next week’s meeting

The next meeting will take place on Monday, September 18, 17:00 UTC in the #core-customize Slack channel. Please feel free to drop in with any updates, questions, or tickets you’d like to discuss. If you items to discuss about this but cannot make the meeting, please leave a comment on this post so that we can take them into account.

#core-customize, #summary

New Contributors Meeting Recap – July 26

Yesterday our weekly new contributors meeting was held, again with some great questions and insights into contributing to WordPress core. Here is the recap for the chat, alternatively the full chat log is also available.

Participants: @adamcarter @audunhus @desrosj @dipendahal @flixos90 @hardeepasrani @johnbillion @joyously @jsonm @samikeijonen @stevenkword @welcher @xkon

Discussion Highlights:

  • Working on one of the three focuses (Gutenberg, Customizer, REST API) is preferred, but it’s also as great to contribute to another area of core as development in those components of course has not stopped. Contributions are welcome everywhere, the focuses only gain more traction and attention at this point.
  • VVV is only one way to contribute to WordPress core. It is the recommended way to do so since it has all the tools needed preinstalled and configured, but contributors are free to choose whichever way they like. It might just require more setup work when not using VVV.
  • An easy way to make your IDE / editor aware of the WordPress coding standards regarding whitespace usage is to use the .editorconfig file that trunk contains. This file uses a common standard, and there are plugins available for almost all popular environments that automatically parse the file and adjust the whitespace settings for the project. Extensions can be found at on the website of the project. Some IDEs like PHPStorm already come with built-in tools for the WordPress coding standards.
  • While every new change in WordPress requires unit tests to verify its correct behavior (except for wording or docs changes, or those that are too complex to test for other reasons), it is not required that the person who writes a patch also needs to provide unit tests for it. It would be nice, but if someone doesn’t feel comfortable enough for the time being or first would like to get the patch reviewed, that’s perfectly fine as well.

Tickets Discussed:

  • #41370 is a good-first-bug ticket that could use some attention and work. It belongs to the REST API focus, so is likely to get reviewed and also merged quickly once ready. The goal of the ticket is to figure out why creating a term that already exists results in a 500 error, and change that to a more meaningful 400 or 409 error. Please have a look if you are interested in the REST API.
  • #41318 is another ticket that could use some work, particularly unit tests to ensure the existing patch works correctly.

First Props:

From this week on, we’ll highlight new contributors with their first props in this post. Props is what you get when a changeset lands in core where you have significantly helped with, for example through a patch, unit tests or something else. Please let us know about your first props when you get them. You can easily get an overview of your props at this URL: https://core.trac.wordpress.org/search?q=props+USERNAME&noquickjump=1&changeset=on (replacing USERNAME with your actual wordpress.org username)

This week, @xkon received his first props. Congrats! 🎉

Next week’s Meeting:

The next meeting will take place in the #core slack channel on Wednesday, August 2, 19:00 UTC. Please feel free to drop in with any questions or tickets you’d like to discuss!

Thanks to everyone that attended! As always, please feel free to leave a comment below or reach out to any of the moderators with questions on Slack.

#new-contributors, #summary

Dev Chat Summary: June 28th (4.8.1 week 2)

This post summarizes the dev chat meeting from June 28th (agendaSlack archive).

4.9 ideas

4.8.1 planning

  • #40951 & #40907 will be core to the 4.8.1 release being targeted around the last week of July
  • General bug scrub to be scheduled after the 4th of July holiday on the 4.8.1 milestone
  • Component maintainers please review your 4.8.1 milestone and punt to Future Release / 4.9 as necessary
  • Reminder that we are “approaching 4.8.1 tickets as more traditional regression types of issues”

Editor update

Customize update

  • appreciate more people testing 40951.3.diff
  • also appreciate testing of the HTML widget in trunk (see #40907)

REST API update

  • had a lot of new docs contributions at WCEU contributions day
  • have some momentum and hope to build upon it in coming weeks

Dev chat coordination

  • @jbpaul17 looking for 1-2 others out there to help run the weekly dev chats similar to how the Core Weekly Updates are split up
  • A great way for product/project management or otherwise non-engineers to help contribute to WordPress Core
  • Please ping @jbpaul17 if you have interest in helping out!

New contributor bug scrub/open office hours

  • idea is a weekly bug scrub/open office hours focused on new contributors
  • would include tickets tagged good-first-bug and any tickets new contributors wanted to work on
  • Likely to schedule for Wednesdays at 19:00 UTC
  • @adamsilverstein, @welcher, @stevenkword, & @flixos90 to help run the meetings
  • Please ping @adamsilverstein if you have interest in volunteering as well

General announcements

  • @m1tk00: looking for help with the Gallery Widget in the Customizer regarding the edit button
    • need to know how to send the already selected ID’s, when someone wants to edit the gallery
    • will ping @obenland or @timmyc in #core-customize for help
  • @enricosorcinelli: #21676 patched and awaiting review, how to get it more attention?
    • added needs-testing to the ticket, will ping @obenland as Themes component maintainer to review
  • @pbiron: would like to start a “feature plugin” project to work on rewriting the exporter
    • would like to rework ALL of the XML related code in core (e.g., using XMLWriter instead of echo statements, etc)
    • using XMLWriter and with some pretty drastic changes to the WXR markup
    • should be putting the 1st version up on GitHub in few days
    • also written an XML Schema for WXR 1.2
    • will add the feature proposal as a comment to the 4.9 wishlist on last week’s dev chat summary
  • @flixos90: thinking about ways to improve Trac workflow
    • wondering whether it would be possible to automatically set a has-patch keyword once a patch is uploaded?
    • It’s a bad experience for new contributors to search through tickets without a patch, but finding ones that already have one
    • will drop by #meta-tracdev to continue the conversation
  • @jnylen0@enricosorcinelli working on #39732 and #39730
    • 39732 is a sanity improvement and a follow-up to work done around 4.7 in the API, should land soon for 4.9, but it would be good to get more eyes on it especially someone who has worked on comments before
    • 39730 may as well land at or around the same time as the above
  • @welcher: would love some eyes on Load word-count and do not allow our wp-utils script to clobber it

#4-8-1, #core, #dev-chat, #summary

Dev Chat Summary: June 7th (4.8 week 6)

This post summarizes the dev chat meeting from June 7th (agendaSlack archive).

4.8 timing recap and Pre-Final Release & Dry Run checklist items

  • Beta 1 went out on Friday, May 12th; Beta 2 went out on Monday, May 22nd
  • RC1 went out on Thursday, May 25th; RC2 went out on Thursday, June 1st
  • 4.8 is scheduled for June 1, 2017 at 9am EDT
  • Events widget looks ready
  • Credits API to be updated by @ocean90 tomorrow morning
  • About page update for responsive, CDN-hosted images coming from @melchoyce
  • Announcement post draft is ready to go; @jorbin & @ocean90 to help provide contributor & language count as input
  • Announcement email being drafted by @matt
  • Codex page to be updated by @jbpaul17
  • Agreed to remove “partial back to IE8” from Browser support page in Design handbook
  • tinymce/plugins/wpembed to be added to $_old_files by @ocean90
  • No new default theme, so $_new_bundled_files is fine
  • Updates to default themes and submission to repo to be done by @davidakennedy, committed by @ocean90
  • Hosts email to be drafted by @jbpaul17, email to be reviewed & sent by @jorbin
  • Systems to be covered by @vnsavage
  • grunt prerelease check for tests & standards to be run by @jorbin

4.8 Bug Scrub

  • Reviewing four tickets in Defects Awaiting Review, reported against trunk section from Report 40
  • #40929: relates to improved translator docs, punting to next minor release (4.8.1)
  • #40932: moved to Future Release
  • #40927: not a regression, moved to Future Release
  • #40906: marked as a dupe of #40685, not a blocker for 4.8

Other News

  • Customize: looking for a new contributor to work on the HTML/Code widget, a good-first-bug, please chat in #core-customize if you’re interested
  • Editor: working to get the plugin in the plugin repo so that more people can review it and provide feedback. Goal is this week.
  • Devchat coordination: will be covered in upcoming devchat

#4-8, #core, #dev-chat, #summary

Dev Chat Summary: February 15th (4.7.3 week 3)

This post summarizes the dev chat meeting from February 15th (agendaSlack archive).

4.7.3 Schedule

  • Completed first pass on all tickets in the 4.7.3 milestone, @jnylen0 is reviewing those that “need” to land in 4.7.3, and identifying a release date for 4.7.3 in the coming week

Customizer team update

  • #23601 (Use ACE Code Editor for Theme and Plugin editors) and #12423 (Include Ace (or similar) as default code editor)
    • Topic of discussion is a code editor library to be used in Custom CSS, WP content editor HTML view, file editor, and any other place that code is modified
    • Had planned to go ahead with CodeMirror since it is what Jetpack uses in its Custom CSS module, but @afercia pointed out accessibility problems
    • So we’re looking for insights into best of breed accessible code editor libraries
    • @afercia: looking to to understand if (1.) there’s consensus about introducing some sort of syntax highlighter library (plus other functionalities) and (2.) if it is going to completely replace the current WP content editor HTML view
    • @jorbin: Once one is decided upon, would like to encourage reaching out to the project maintainers and opening a dialogue about things like security and backwards compatibility
    • @helen: each area (Custom CSS, WP content editor HTML view, file editor) needs individual consideration and rationale
    • Goal is to provide a better user experience for when users edit code in WP
    • Custom CSS:
      • #38707: Customizer: Additional CSS highlight, revisions, selection, per-page, pop-out
      • @westonruter this is what #core-customize is most interested in, but picking a code editor library should be done ensuring that it doesn’t cause headaches if code editors are implemented for HTML view and file editor. i.e. the same library should be used throughout core.
    • WP content editor HTML view:
      • @joemcgill: the text editor now is not technically an HTML view, but is a plain text editor that is parsed into HTML. For instance, breaks are turned into `<p>` tags, shortcodes can be typed, etc., so a “code editor” is something slightly different.
      • @helen: per @iseulde and lots of discussions over time, is a little more complicated in that it’s not an actual HTML editor, so is getting rid of wpautop() is a requirement
      • @mike: I’d love to see code highlighting in the HTML view.
      • @afercia: If both the visual editor and the text editor are going to be replaced by Gutenberg and some sort of CodeMirror-like, well the level of accessibility for both is still uncertain and there’s the danger to introduce an accessibility barrier for the main scope of WordPress: entering content.
    • File editor:
      • @jorbin: I seem to remember that having been replaced with something fancier than what is in place now, but that having been ripped out
      • @helen: File editors really raise the question of whether users should be made more comfortable in them vs. being encouraged to use something else.
      • @brechtryckaert: security-wise I’m not a fan of the ability to edit files from the backend, people who are comfortable enough to edit code usually have a prefered editor
    • @jorbin: We already have our agreed upon accessibility coding standards that state:
      • All new or updated code released in WordPress must conform with the WCAG 2.0 guidelines at level AA

    •  @westonruter: if CodeMirror fails this test, as it seems to, then we need input on GPL-compatible code editors that are accessible.
    • @afercia: I propose to discuss this at the next accessibility meeting on Monday, invite people to do research, and possibly involve the testers group.
  • #38900 (Customize: Add REST API endpoints for changesets) and #39634 (Customize: Add REST API endpoints for panels, sections, controls, settings, and partials)
    • Thanks to @kadamwhite we have an initial (empty) feature plugin repo for the REST API endpoints for customization
    • Feel free to watch that repo and be apprised of developments
    • Next steps are to design the endpoints, write the failing tests for them, and then  go about writing the endpoint controllers
    • @kadamwhite: this is the first major effort within other areas of core that are turning up inconsistencies like #39805 (Expose featured_media property on post resources in “embed” context) so I’m excited to see what other improvements we can make as this work continues

Editor team update

  • Working full steam on prototypes, notably the Gutenberg UI prototype
  • The related GitHub repo has quickly become wonderfully active
  • Looking to discuss browser support for the new editor
    • @georgestephanis: So long as it can fall back to something that doesn’t utterly die, it should probably be fine.
    • WP Admin currently supports IE 8
    • Current browser market share
    • @jorbin: I would love to see us not drop support for anyone if possible
    • @joemcgill: Alternately, if we’re going to bump the browser requirements at any point, now is probably the time.
    • @joen: flexbox was mentioned as being nice to use in context of editor UI
    • flexbox support
  • The agenda for the Editor chat today was to discuss how using the UI prototype felt in the past week, and deciding where to take it next
  • We are looking for people to use and provide feedback the prototype, so please take a look if you can!

REST API team update

  • The REST API team has no significant updates since last week.

#4-7-3, #core, #dev-chat, #summary

Customization in 2017

The editor will endeavour to create a new page and post building experience that makes writing rich posts effortless, and has “blocks” to make it easy what today might take shortcodes, custom HTML, or “mystery meat” embed discovery.

The customizer will help out the editor at first, then shift to bring those fundamental building blocks into something that could allow customization “outside of the box” of post_content, including sidebars and possibly even an entire theme.

Matt

One expectation I want to start with is, customization isn’t just improving the Customizer — our goal is to improve the entire process of setting up a site, from initial installation to something you’re comfortable launching, to making changes to an existing site that has been live for some time. To that end, our goal is to help people accomplish the following:

  • “I want to make a site that I’m proud of that helps me succeed.”
  • “I want to make a site my clients are proud of that helps them succeed.”

The current customization flow in WordPress doesn’t generally facilitate either of those goals without a great amount of work, prior knowledge, and often a lot of additional development. That’s fine if you’ve hired an agency, or you’re a developer building yourself a website — but not fine if you’re a freelance site builder/implementer (a market I see every day in my local community) or are trying to build something for yourself with limited time and budget. If you can install WordPress, either manually or through a host, we should provide you with the tools to build out a website that accomplishes your personal and business goals.

With these goals in mind, what can we accomplish in the first couple months of the year?

  • Demo content on theme switch for an existing site. [#38624]
  • Pain points with lost widgets and menus when switching themes. [#19912]
  • Exploring a better customization-focused onboarding experience.
  • Adding an media widget. [#32417]
  • Adding formatting options to the text widget. [#35243]
  • Adding a code editor to the Custom CSS control, and make additional enhancements. [#12423, #38707]
  • REST API endpoints. [#39634, #38900]
  • Improving Custom Logos. [#38329, #36191]
  • Some more minor Customizer improvements [#37471, #38953, #39389] and continued bug fixing.
  • What else? Please comment.

Throughout the rest of the year, there’s a lot of larger projects that we’ll collaborate with the editor team on:

  • Content blocks, so we can build a better layout editor that helps people build a site that fits their individual needs. [Post]
  • Revisions, so you can visually see the changes you’ve made to your site and revert if you mess up. [#31089, #21666]
  • Drafting, reviewing, publishing, and scheduling changes, so you can get your site looking just right before you push your changes live. [#31089, #28721]

Some of these, like revisions in the Customizer, we can prioritize sooner.

By the end of 2017, we hope you’ll be able to:

  • Have an onboarding experience with smart defaults that guides you towards building the site you want, faster.
  • Build complex, dynamic layouts for your WordPress sites, regardless of your theme.
  • Move any piece of content on your site to a different part of your site, just by dragging and dropping it where you want.
  • Allow you to preview and select page layouts before you create your page.
  • Edit every piece of content where you see it, instead of needing to hunt for it.
  • Set up a basic website without having to jump in and out of multiple admin screens.
  • Live preview any settings that affect how your site looks.
  • Revert changes and see your revision history.
  • Maybe even build your whole site from your phone?

What other customization flows do you think we need to improve? We need your input to help make a better way to build sites with WordPress.

We’ll be doing weekly meetings every Monday. The next meeting is Monday at 1:00PM EST. Join us in #core-customize in Slack to get involved!

Dev Chat Summary: October 12 (4.7 week 8)

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

Reminders

Feature Proposals for 4.7

  • REST API: Content API (@kadamwhite)
    • REST API Team Update
    • Content API endpoints have been stable for some time and now have the missing functionality established at the start of this development cycle
    • We pitched merging in the OAuth 1 server alongside those content endpoints, to simplify the process of authenticating from remote applications
    • The auth method in core right now is cookie/nonce-based, so it’s available to any code running within the same domain as the main WordPress install and leverages the existing login cookie
    • plugins and themes that utilize JS to enhance the editing experience within their admin UI have full read/write access, restricted to the capabilities of the authenticated user
    • External applications, e.g. a mobile app, desktop app or external server, would have read-only access
    • readers, aggregators, etc are possible without authentication, and more complex read-write apps can be written by installing one of the available authentication plugins, of which OAuth is but one
    • Reference for options and when/how to use
    • 90 contributors for the rest-api plugin
    • automated test coverage currently at 90.44%
    • 37 more open tickets
    • weekly meeting on Monday at 1400UTC in #core-restapi
  • Discovering and installing themes in the customizer (@celloexpressions)
    • Related Make/Design and Make/Flow posts, but best to post all feedback to the Make/Core feature proposal
    • Working through the accessibility feedback, but it’s a bit unclear what’s specific to this feature versus the customizer in general, and which issues are also present in the admin theme installer
    • Haven’t heard anything from polyglots, security (unlikely to have any issues), or docs
    • There is one known i18n concern where we’ll need a compromise until we have JS i18n in core
    • @celloexpressions to do a final iteration to pick up any remaining feedback on Thursday, then pass to @westonruter for the code review process
  • Custom CSS with live previews (@celloexpressions)
    • seems to have decent support as a feature, with the biggest question in the comments being how to store and output the CSS
    • CSS is output from the db via a style tag, use of `style` tag is key for targeting for `postMessage` live preview
    • Post-based storage allows for revisions built in (ensuring that there are hooks for a plugin that wants to write a file would alleviate many concerns)
    • CSS is theme-specific in the proposal for this, with a post object for each theme that has CSS
    • Scheduling a meeting to go through these concerns and make a decision, coordination to occur in #core-customize
  • Customize Changesets (née Transactions) (@westonruter)
    • Technical Post (audience is developers who have extended the customizer significantly, as there may be impacts to any heavy customizer integrations since changesets touches some very low-level stuff in the customizer)
    • Users will be able to bookmark a customizer session since the changeset UUID will be part of the URL
    • Theme switches will no longer result in changes being lost (no more AYS dialog)
    • a few other open questions and issues that have been noted

Components

#4-7, #core, #dev-chat, #summary