JavaScript Chat Summary: January 14, 2020

Below is a summary of the discussion from this week’s JavaScript chat (agendaSlack transcript). Thanks to @cbravobernal for compiling these notes.

Have a topic for discussion for the next meeting? Leave a suggested edit on next week’s agenda.

Date package

(Slack conversation)

@davilera mentions in the pull request issues a developer might face when using the date package and proposed how to solve them. Namely, source timezone, target timezone, and possible translation of the final date. People noticed that the package is not considering timezone.

Regarding PHP side, date_i18n() is remarked to be “illogical, incompatible with Unix timestamps, and in order to be deprecated”.

Action:

  • Identifying the minimum changes required to fix the original issue that PR tried to solve
  • Open a new issue where a discussion on if and how to refactor the package
  • Look at the current PHP implementation and trying to reconcile the two

Dropdown rendering with modals

(Slack conversation)

At first, the dropdown wasn’t rendering properly. But once the positioning was fixed, two more issues arose:

  • In a dropdown with multiple fields (such as, for instance, the one you get when using DateTimePicker), tabbing from one field to the other doesn’t work, as the focus moves away from the dropdown, back to the modal. This is an accessibility issue.
  • Dropdowns should be closed when one clicks outside of them. But this only works if you click outside of both the dropdown and the modal. Clicking on the modal doesn’t close the dropdown. Dunno what kind of issue this one is.

The mechanism that are affecting this behaviour is the SlotFill system 

@itsjonq says that the mechanism that are affecting this behaviour is the SlotFill system, and currently @hazdiego is working on an (unrelated) PR to start refactoring it:

https://github.com/WordPress/gutenberg/pull/19242

After a little discussion about how hard is to work on focus, modals, dropdowns…

Action:

Open Floor: Markdown linter

(Slack conversation)

@mkaz announce that he introduced a lint-md script that lints code blocks inside markdown. This uses a new .eslintrc-md.js config in scripts package to turn down some of the noise due to documentation being snippets of code.

Right now you need to run manually, we can fine tune and adjust the config before automating further. Try it out using: npm run lint-md [your-file] or if no file specified it runs across all markdown documents. 

Removing ES5 snippets is discussed also.

Action:

  • Try out the new script lint-md especially if writing or updating any markdown and source and we can see how it goes

Open Floor: NPM publishing

(Slack conversation)

@gziolo propose to grant npm permissions to @jonsurrell and Bernie Reiter so they could help with releases. Also talk about automate CHANGELOG file updates on the release day.

Action:

  • Grant NPM accesses (owned by @aduth)
  • Keep working on improving release workflow.

#core-js, #javascript

WP Notify weekly meeting agenda for Monday 20 January 2020

This is the agenda for the next WP Notify feature project meeting, to be held on Monday, January 20, 2020, 14:00 UTC.

In order to start shaping the final requirements document, I’d like to start focusing on each section of the document, ensuring that it contains the correct information. The idea here is that we keep iterating on each section until we consider it complete, and then we’ll move onto the next.

So the focus of this meeting, and it’s recap post, will be on the section titled “Objectives”. The general agenda of the meeting will be as follows:

  • Opening and welcome
  • Reviewing and updating the requirements document: Objectives
  • Open floor

If you have anything else to propose for the agenda or specific items related to those listed above, please leave a comment below.

This meeting is held in the #feature-notifications channel , to join the meeting, you’ll need an account on the Making WordPress Slack.

#agenda, #feature-notifications

Dev Chat summary: January 15, 2020 (5.4 week 1)

The chat was facilitated by @francina on this agenda.

Full meeting transcript on Slack

Announcements / WordPress 5.4

At the moment there are 288 tickets milestoned for 5.4.

@francina is working on putting together a release squad. Some roles are already confirmed:

The whole team should be assembled by the end of the week. There is a fewer roles than in 5.3, because it’s a shorter release. The first Beta release is in 3 weeks from now.

@davidbaumwald expects to release the bug scrubs schedule by the end of the week.

@karmatosed added that Core design triages (on Mondays) for a few weeks can also focus on 5.4 to boost things.

@audrasjb noted that depending on the number of accessibility related tickets, the Accessibility Team can organize some extra accessibility focused bug scrubs. He will check the milestone to see if there is a need for more accessibility bug scrubs.

As @azaozz stated, hopefully component maintainers will take bigger and bigger part in “driving” 5.4, and releases in general.

@pbiron asked if there is a specific focus for 5.4. @francina answered that in general, 2020 is going to focus on one big goal: full site editing with Gutenberg. @dingo_d noted that it would need some coordination with the Theme Review Team.

@paragoninitiativeenterprises noted that #49200 needs feedback from anyone interested in WordPress security, or who develops plugins/themes.

@audrasjb is working on two tickets related to Themes and Plugins auto-updates: #49199 and #48850. This is one of the 9 projects for 2019-2020. The design team already provided some helpful feedback. These tickets are now waiting for technical review so they could hopefully land in the next couple of releases.

@marybaum noted her availability for copy review on 5.4 features.

@azaozz reported the Media team will release a feature plugin for lazy loading, so it can be tested well before adding to core. The plugin should be available in a couple of days.

@francina mentioned that development on 5.4 should have started the day 5.4 was branched, back in October. In fact, many people wait for the kickoff to start working. With Beta release scheduled in 3 weeks, it’s not really the time to add not fully ready features to the scope. However, WordPress 5.5 agenda is already known, so there is no need to rush things.

@azaozz and @francina pointed out that as soon as a release’s code is moved to a branch, trunk is back in business for the next release.

@xkon noticed that the “Current Release” widget on Make/Core might be confusing for newcomers as it’s still indicating 5.3 as the current release in progress.

Calls from component maintainers

Media: @azaozz is looking at couple of small enhancements for the uploader changes from 5.3, specifically adding a link in the UI to the original image (if it was scaled), and looking at some of the edge cases when creating image sub-sizes, file size for large PNGs, etc.

Widgets & Menus: @audrasjb will coordinate with @welcher to identify priorities for an eventual specific bug scrub.

Build tools: @johnbillion is going to look at getting several of the Composer related tickets into 5.4 (like using Composer for external libraries and phpunit). @desrosj and @johnbillion to synchronize their work at some point as @desrosj is working on backporting the local Docker environment.

Comments: @imath committed to look at each ticket involving comments in 5.4.

Open Floor

Some new contributors asked about how to start with core contribution. Worth noting the next New Contributor Meeting is scheduled for next Wednesday at 20:00 UTC in #core Slack channel. This is a great opportunity to ask for help or to learn how to contribute to WordPress Core.

@francina noted that @chanthaboune and @andreamiddleton are both nominated for CMX Awards. Everybody can vote for them on the dedicated website.

#5-4, #devchat, #summary

Editor chat summary: 15 January 2020

This post summarizes the latest weekly Editor meeting, held in the #core-editor Slack channel, on Wednesday, January 15, 2020, 14:00 UTC. These meetings coordinate collaboration in the development evolution of the Gutenberg project. Facilitator: @pbrocks Notetaker: @itsjusteileen.

Weekly Priorities

We’re working on a few post-related blocks to use for FSE templates (starting very basic) and improvements to the block UI is being iterated on here PR 19344. The navigation  block is also very important as we get closer to WordPress 5.4:

  • Block Content Areas (Full site editing)
  • Block UI updates
  • Block Patterns
  • Navigation block improvements

Task Coordination

@andraganescu:

  • Adding niceties to the media replace control and tidy up issues for the navigation block

@youknowriad:

  • I’ve been working a little bit on the LinkControl component (code cleaning essentially) and trying to use it in more than just the Navigation block.
  • I’ve helped a little bit on what we call G2 (new Block UI)
  • I’m also doing a push on triage as the issues and PRs are getting out of control 
  • Reviewing some FSE PRs

@scruffian:

  • The site title block doesn’t work for non-admin users; to address this we need to make some REST API changes — please review #48885 (REST API: Add a route to read and update separate site settings) – WordPress Trac

@gziolo:

  • Polishing npm init wordpress-block script, and plans to open PR against Gutenberg next week (demo in the thread)
  • Continued explorations on how Patterns API could be integrated in the inserte 

@karmatosed:

  • Navigation: reviews, iterations.
  • Global styles: mocks and flows, trying to sync work there.
  • A continuous undercurrent of triage.

@retrofox:

  • Background Color for the <Navigation /> block. Pretty close to get a first solid approach.

@jeryj:

  • Various small improvements to the navigation block and color picker component.

@mapk:

  • Moving some links around to minimize the repetition of “Tools” areas in the interface: 
  • PR 19499
  • PR 19400
  • Looking at Template and Template Part UX flows.
  • Posts block design ideas.

@getdave working on: 

  • Focusing on how to improve LinkControl both within Navigation Block and also when in use in wider Editor. Lots of movement here by others also to make this component more useful.

@michaelarestad working on:

  • List of Epics for Full Site Editing
  • Flows
  • Iterating on mocks to reflect recent changes

@mcsf working on:

  • Exploring how we can take block patterns, as @gziolo is working on, to simplify / converge how we implement Embeds and hopefully Social Icons

@isabel_brison working on:

  • Brought Resizable Editor work to a reviewable state: PR 19082 (tests are still failing, but feedback on implementation appreciated)

Open Floor

Changelog Entry Standard

@nadir is looking for a way for PR others and maintainers to write a standardized PR changelog entry that can be aggregated by a script that generates the changelog. Initial idea discussion in Slack

@youknowriad provided steps he used for Gutenberg release:

  • Go through the list of all PRs merged for that release and milestone them properly
  • Copy the title of these PRs and add a link to the PR as a changelog entry
  • Choose the right section (bug, enhancement, new feature, new API, experiment, documentation or various) for each entry.
  • Reword the title properly so it reads similarly for all entries (same format). A lot of PR names are not worded properly
  • Gather related items together using sublists (a11y, several enhancements to the same block….)
  • Gather PR links in the same Changelog entry if a PR fixes a regression introduced by another PR in the same release.

From that list @nadir created a script (which we should commit) that does the second step (and part of the third one) automatically. This is already a huge time saver but would be good to introduce more normalization/flows to PRs in order to avoid the need to do the rewording.

Benefits include: 

  • help make each release easier with less manual work involved even if some PRs still need to be documented by hand.
  • reinforces that all PRs need a label so none are left behind.
  • encourages organization around how labels are applied, titles are used, etc, which benefits more than just changelogs, but also searchability of the issue tracker more generally.

@nadir pointed out the script also supports skipping PRs that have a special label, in Woo it’s skip-changelog, which could be applied here if a PR is not meant to be in the changelog.

@youknowriad indicated one step needed to execute could be to match all categories (bug, enhancement, new feature, new API, experiment, documentation or various) with a “[Type] something” label.

@getdave noted updates to the PR merging documentation would need to occur about adding the correct labels before merging, and @mkaz pointed out it would be a good idea to simplify the current list of types, or create a new specific set. @youknowriad volunteered post meeting to filter that list of types so Type could be equivalent to Changelog entry category.

Terminology Change — Align to Position

@getdave@matias raised a point about potentially renaming Block “Align” controls to “Position” and repurpose “Align” to mean something more akin to “Justify”.

To be clear, the new terminology could be:

  1. Position – how the container is displayed (wide, full-width, floated, etc).
  2. Align – for the distributions of elements within the container (left, center, space-between).

This would be a fairly significant change across the Editor and feedback is requested. Discussion is currently happening within PR 193686 for the Social Block but should become its own issue.

@matias noted alignments were used for position (floats, wide, and full) because of legacy reasons (WP had used alignleft, right and center for a long time). We distinguished between text alignment and block alignment, but it always left wide and full-width in weird places. Now we have newer blocks that need internal alignment controls (buttons, menus, social icons) and the inclination was to call this tool “justification”, but it’s also not the most intuitive. It seems the clearest and most meaningful names would be:

  • Position (floats, center, wide, full-width).
  • Text Alignment (left, center, right, justified).
  • Alignment (for flex-based left, center, space-between, etc).

These would need to be handled with care, though, to transition the components, APIs, classes, etc, without breaking anything.

Image Sizing

@paaljoachim noticed that the image in the Media & Text block becomes very huge on mobile. There should be a way to decide the size of the image used. This issue mentions image resizing PR 14483. Everywhere an image is used there should also be a way to resize it.

Dev Chat Agenda for January 15, 2020 (5.4 Week 1)

Here is the agenda for the weekly meeting happening later today: Wednesday, January 15, 2020, at 09:00 PM UTC.

Announcements

We are kicking off WordPress 5.4 this week!

Components Check-in

Open Floor


If you have anything to propose for the agenda or specific items related to those listed above, please leave a comment below.

This meeting is held in the #core channel. To join the meeting, you’ll need an account on the Making WordPress Slack.

#5-4, #agenda, #core, #devchat

WP Notify Meeting Recap – January 13 2020

This is a recap of the WP Notify meeting held on Monday, January 13, 2020, 14:00 UTC. You can read the meeting discussion here.

We’re resuming our work on the WP Notify project with better focus on actionable ways to address the challenge of notifications in WordPress.

We started by answering more pointed questions as to what the solution must address, and whether a temporary alternative should be entertained at all.

Temporary Solution

@psykro suggested to post a separate trac ticket, to improve the current admin_notices implementation, with sample code from @apedog

The benefit to this is that, as a team, we get something into core that improves users lives and we gain some real world experience of how the process could be improved by the final solution.

The negative is that it would mean this code is likely to be eventually replaced by our final, better solution. This very discussion, is the reason we want to present this concept to the community, for feedback on whether to a) expand admin_notices, or b) affirm the need for an entirely new replacement solution altogether, and what are the critical elements of that new approach

@schlessera is of the opinion, and rightly so, that any work done to improve the current admin_notices functionality is not worth the time. We should rather work on a solid, scalable and manageable solution for notification channels.

Permanent Solution (From The Onset)

A few of the very direct questions we must address for the replacement solution as suggested by @folleto are

  • What are we replacing? (if anything)
  • What kind of backward compatibility do we need?
  • What’s the minimal API and UI we need to build for a v1?

As we answer these questions, we’re keeping in mind the end-user experience together with the API required. For example, a notifications menu will need a completely new way of handling notifications in WordPress API through use of the database and rendering those messages.

As @schlessera pointed out “The initial UI should satisfy the 80% need of letting Core/plugins/themes communicate platform state changes within the admin dashboard in a scalable way where the user/user group keeps control.”

Meeting time

During the course of the meeting it became somewhat clear that the time of the meeting might be causing some problems for folks in different time zones. Conversation in the meeting became much more active after the first hour. Therefore we would like to know if the current meeting time is suitable, or if we should consider an alternative?

Next-Steps

Please comment with your thoughts below. You can also add comments your comments in the WP Notifications Project Google Doc under Section 1. “Objectives”

Next Slack Meeting

📅 Monday, January 20 @ 14:00 UTC

#feature-plugins, #feature-notifications, #summary

Editor Chat Agenda: 15th January, 2020

Note taker: @itsjusteileen

This is the agenda for the weekly editor chat scheduled for 2020-01-15 14:00 UTC.

This meeting is held in the #core-editor channel in the Making WordPress Slack.

  • Weekly Priorities
  • Task Coordination
  • Open Floor

If you have anything to share for the Task Coordination section, please leave it as a comment on this post.

If you have anything to propose for the agenda or other specific items related to those listed above, please leave a comment below.

#agenda#core-editor#editor-chat

WordPress 5.4 Planning Roundup

According to the tentative release schedule for 2020-2021, we are due to start 5.4 this week.

These are the milestones, based on the previous cycle:

  • Kickoff: 14 15 January 2020
  • Beta 1: 11 February 2020 (4 weeks from kickoff)
  • Release Candidate 1: 03 March 2020 (3 weeks from beta 1)
  • General Release: 31 March 2020 (3 weeks from release candidate 1)

Proposed WordPress 5.4 Scope

The main goal for 2020 is full site editing via Gutenberg.

For 5.4 these are the tasks:

As with every release, all component maintainers and teams are invited to prioritize their bug-fixes and enhancements for 5.4. Some suggestions that came from a few maintainers included:

  • Build/Test Tools
    • Add support for the newer versions of PHPUnit
  • Comments
    • The component was dormant for a while so during this cycle the new maintainers will do gardening and bug fixing
  • Design
    • The Design Team has a long list of issues they want to work through and they are polishing it for publication.
  • Privacy
    • UI Improvements
  • Site Health
  • REST API
    • Performance improvement
    • Work on endpoints needed by Gutenberg (Menu API and Settings API)
  • Users
    • Changes to sites with a large number of users
    • Tweaks to REST API endpoints
  • Media

In addition, all components and teams are invited to continue polishing current interactions and making the UIs more user-friendly.

I also collected all the proposals from the open call for tickets: I will submit them to the relevant component maintainers so they can evaluate if there are enough resources to address them during this release cycle and update the status.

Please bear in mind, if a ticket is still waiting for review, has no patch, or no owner, it is unlikely that it will land in 5.4. This shouldn’t stop you from continuing to work on it, gather feedback and ultimately polish it enough to have it in a future release.

Proposed WordPress 5.4 Leads

This section is still pending some answers. I will fill it in as I get Yeses and Noes from people. 

The roles needed for the release are:

  • Design Coordinator
  • Editor Tech
  • Editor Design
  • Core Tech
  • Docs Coordinator
  • Docs Writer

@matt will continue his role as release lead.

As suggested by @desrosj in a comment, it makes sense to have some roles not change for every release because it takes a while to learn and pass on the information. So David Baumwald and I will stay on for at least a couple more releases, as Triage PM and Release Coordinator respectively. The goal is for us to learn enough so we can then mentor a new group of release and focus leads.

Let’s do this!

#5-4 #planning

WP Notify weekly meeting notification for Monday 13 January 2020

The WP Notify feature project continues in 2020, with our first meeting of the year to be held on Monday, January 13, 2020, 14:00 UTC. We will take this opportunity to review the current status of the project, determine where we are at, where we need to go, and how we need to get there.

As the project has been on hiatus since late 2019, there is no fixed agenda, but I’ve listed a few items below we will be discussing.

If you have anything to propose for the agenda or specific items related to those listed above, please leave a comment below.

This meeting is held in the #feature-notifications channel , to join the meeting, you’ll need an account on the Making WordPress Slack.

#agenda, #feature-notifications

Dev Chat summary: January 8, 2020

The chat was facilitated by @francina on this agenda.

Full meeting transcript on Slack

Upcoming Release – WordPress 5.4

@francina reminded the main feature of 2020 will be full site editing. All component maintainers received a ping before Christmas to put together a scope for WordPress 5.4. An open call for tickets was also published on Make/Core. While @francina noted there were mostly bugfixes and not so many new features, @audrasjb raised ticket #48850 from the comments of this post. This ticket is related to automatic updates for plugins (with manual opt-in), which is one of the 9 projects for 2019-2020.

@azaozz noted that the media component team plan to continue with image post-processing. It looks like it will need couple of small UI changes/enhancements.

@audrasjb added the accessibility team will probably focus on bugfixes on both Gutenberg and Core for 5.4, and target the next major (5.5) for bigger new features.

Highlighted posts

@francina noted that a lot of volunteers signed up to the release model working group. @francina will write a recap post on Make/Core.

Worth noting @azaozz published a 5.3 release cycle post-mortem.

Components check-in

Comments: @imath is working on #35214. Feedback welcome.

Core privacy: @xkon said the privacy team won’t have any specific focuses for 5.4, only bugfixing & enhancements on existing parts. Some of them need backward compatibility review, especially #44038 and #44176. Both tickets have a patch and are ready for further iterations if needed.

Media: @azaozz is experimenting with #44427. Seems a very worthwhile enhancement for 5.4.

Open floor

In the agenda comments, @justinahinon pointed out some editing needed in the roadmap, and highlighted reactions of the community concerning handling of big media on WP 5.3. @azaozz noted most comments are about “missing” the original image in some way. The initial plan was to have a link to it in the user interface. It should be added in 5.4. Another enhancement for the UI would/may be to show when an image is missing some of the sub-sizes and have a way to create them. There are plugins that handle this, but may be time to have it in core. There are couple of pre-existing edge-cases that need fixing too. Most notably increase of the file size for indexed PNGs when resized to smaller dimensions.

@timothyblynjacobs shared #47192 as a possible 5.4 feature. It’d bring a pretty often requested feature to Recovery Mode. It would need design and copy input as well as a security review from people familiar with the intricacies of the Users/Capabilities API.

#5-4, #devchat, #release-process, #summaries