Editor chat summary: June 5th


This post summarizes the latest weekly Editor meeting, held in the #core-editor Slack channel, on Wednesday, June 05, 2019, 13:00 UTC.

Announcement

@danr, @andraganescu and @noisysocks will be starting up a new contributor triage meeting in #core-editor for APAC timezone.

First meeting is planned on Thursday 13th July at 6AM UTC and then every two weeks.

Tasks Coordination

Open Floor

  • @manooweb asked about security in development with React, updating docs to cover the same was agreed upon.
  • @soean asked about agenda for Contributor day at WCEU.
  • @gziolo shared rough agenda for Contributors day at WCEU:
    • onboard a few new contributors, collect the feedback and work on documentation improvements to make the process smoother.
    • go through the list of open issues trying to identify tasks which would be an excellent fit for new contributors.
    • explore how we could automate the detection of pull requests sent by new contributors to ensure they get enough support from others.
    • triage issues looking for those which can be closed because they are no longer relevant, are duplicates or should be moved somewhere else.
    • triage pull requests seeking for those which can be closed, need to be updated or can be merged after short review and testing session.

Note: Anyone reading this summary outside of the meeting, please drop a comment in the post summary, if you can/want to help with something.

The meeting archive is here.

The agenda for the next meeting is here, please add anything you want to discuss.

#meeting-notes, #core-editor, #editor, #gutenberg

Editor Chat Agenda: June 12th

Note taker: @pbrocks

This is the agenda for the weekly editor chat meeting on Wednesday, June 12, 2019, 6:00 AM PDT.

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

  • Gutenberg 5.9
  • WordCamp Europe
  • Tasks Coordination
  • Open Floor

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

X-post: PHP Requirements Check-in

X-post from +make.wordpress.org/hosting: PHP Requirements Check-in

WordPress 5.2.2 RC 1

WordPress 5.2.2 Release Candidate 1 (RC 1) is now available for testing! So please do – every test helps the build get closer to final release!

There are two ways to test the WordPress 5.2.2 release candidate: try the WordPress Beta Tester plugin (you’ll want to select the point release nightlies option), or you can download the release candidate here (zip).

What’s in this release?

5.2.2 features ten bug and regression fixes, like some improvements to the block editor, accessibility, i18n, media and administration. And adds a little bit of polish to the Site Health feature that made its debut in 5.2.

Here’s the full list:

  • #45094: Dashboard elements don’t always have clear focus states, tab order
  • #46289: RTL Bug: wrong navigation arrows in media modal
  • #46749: Extra border is displaying at bottom of Help section in Firefox (Responsive : 778 * 841)
  • #46957: Site Health: Make site health page access be filterable
  • #46960: Site Health: Table design issue in small devices(iphone 5/SE).
  • #47158: Merge similar strings introduced in WP 5.2
  • #47227: i18n: Merge similar translation strings – site health tabs
  • #47429: Editor: Update packages for WordPress 5.2.2
  • #47457: Fix the mediaelements player controls bar sizing
  • #47475: I18n: Merge similar strings and fix typo

You can browse the full list of changes on Trac.

What’s next?

Committers: The dev-reviewed workflow (double-committer signoff) is now in effect. That means it takes two committers to approve any changes to the 5.2 branch.

The official 5.2.2 release is scheduled for Tuesday, June 18.

Happy testing!

#5-2, #releases

Introducing useDispatch and useSelect

Coming soon via the pending Gutenberg 5.9 plugin release (and the subsequent @wordpress/data package release) are two new apis to use in implementations interacting with the wp.data api. useSelect and useDispatch are custom React hooks that enable a more declarative interface to registered stores in the registry. In this post I’m going to try to give some highlights of these new apis.

What happens to withSelect and withDispatch?

The short answer is, “nothing”! withSelect and withDispatch are still usable and are not being deprecated. In fact, under the hood they have both been refactored to use hooks also.

There’s no pressing need to retire these interfaces so you can reliably keep on using them!

Why?

React hooks are becoming an important api in the react ecosystem and this article written by Dan Abramov is a good introduction to them including some of the rationale for why the api was created. For the use case in Gutenberg, the same reasons for hooks in general contribute to why they are being implemented here. Namely:

It’s hard to reuse stateful logic between components

As higher order components, withSelect and withDispatch do a great job at enhancing components to connect with the wp.data registry. However, they contribute to the “wrapper hell” commonly experienced in large react apps where stateful logic is shared between components.

Hooks provide a better primitive for interacting with stateful logic and useSelect and useDispatch in turn provide declarative interfaces for interacting with the store state without changing component hierarchy.

Complex components become hard to understand

While much of the complexity of interacting with store state is reduced in the usage of withSelect and withDispatch. The new hooks take this a few steps further:

  • The api is simplified.
  • The declarative behaviour is more straightforward to follow in the context of their implementation. Instead of having multiple withSelect or withDispatch calls, you can now embed useDispatch and useSelect within the components using them (or, preferably, create a custom hook implementing the multiple useSelect and useDispatch hooks and exposing only the props needed by the component).

Classes confuse both people and machines

While this applies more to hook usage in general, it does allow for not worrying as much about lifecycle methods and for implementing directly in functional components. Note, withSelect and withDispatch could also wrap functional components, but the exposure of hooks allows for integrating with the usage of other React hooks.

How?

There will be documentation updated in @wordpress/data docs eventually, but for now, you can see the api and examples directly in the repository.

I’ve also written an overview/introduction to the hooks that gives some insight into usage.

#wordpress-data, #gutenberg, #javascript, #usedispatch, #useselect

Rich Text Chat

Last Wednesday, we had a chat about rich text and writing in Gutenberg. We went through some questions and looked at what’s next. We also decided it’s worth having another chat. Let’s do one Wednesday, 19 June 2019, at 16:00 UTC, unless someone else would like to hold the meeting next week as I’m not around.

Agenda

  • Any urgent issues?
  • Ensure the roadmap is clear and up-to-date.
  • Questions.

Please comment if you’d like to see something discussed and I’ll add it to the agenda.

#editor, #rich-text

Dev Chat Summary: 05 June

@desrosj facilitated a lively discussion with a number of contributors.

Announcements

@chanthaboune posted earlier today about new material to help Team Leads get going. If you’d like to get started leading WordPress teams, check out her material and feel free to ask questions or leave comments. The link is https://make.wordpress.org/updates/2019/06/03/team-lead-interest-post.

Upcoming Releases Discussion

Point release

@audrasjb, co-lead of 5.2.2, outlined some points about the small number of tickets for the milestone. Since more than 60 tickets are committed in trunk/5.3, the release team suggested looking at landing some of those in the minor. The criteria, per the release handbook: tickets need to be self-contained and may not add new functions/files/filters to Core.

As a result, we have made some minor adjustments to the schedule:

  • Release Candidate 1: Monday, June 10, 2019, 8:00 PM GMT
  • Bug scrub: Thursday, June 06, 2019, 5:00 PM GMT
  • Release Candidate 2: Thursday, June 13, 2019, 5:00 PM GMT
  • Final Release: Tuesday, June 18, 2019, 5:00 PM GMT

Major release

@desrosj reminded the group that @chanthaboune is still working on the logistics for the next major.

Got a ticket targeted for the milestone? Watching a few you’re really interested in? The team invites you to keep on scrubbing!

Call from Component Maintainers

Nothing major to say here

Open Floor

The theme review team is looking for a person with management skills to help accomplish goals and keep track of ongoing tasks.

If that interests you, please check this post out: https://make.wordpress.org/themes/2019/06/05/theme-review-team-meeting-agenda-for-11-june-2019

Some contributors asked for extra attention on these tickets:

#5-3, #5-2-1, #devchat, #summary

Dev Chat Agenda: June 5

Below is the agenda for the weekly devchat meeting on Wednesday, June 5, 2019, 2000 UTC.

  • Announcements
  • Upcoming Releases Discussion
    • Point release
    • Major release
  • Calls from component maintainers
  • 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 in the Making WordPress Slack.

#agenda, #devchat

Editor Chat Agenda: June 5th

Note taker: @ajitbohra

This is the agenda for the weekly editor chat meeting on Wednesday, 5 June 2019, 13:00 UTC.

  • Tasks Coordination
  • Open Floor

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

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

#agenda, #core-editor, #editor-chat

JavaScript Chat Summary, June 4, 2019

Below is a summary of the discussion from this week’s JavaScript chat (agendaSlack Transcript)

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

Agenda: June 18 Meeting Planning

Slack Conversation

Neither @adamsilverstein nor @aduth will be able to host the meeting scheduled for June 18. Is there anyone willing to host that day, or should we plan to cancel the meeting for that week? This is the Tuesday before WordCamp Europe, so there may be lower-than-usual attendance.

Decision: There will be no JavaScript meeting on June 18.

Agenda: Dependabot Follow-up

Slack Conversation

Discussed in last week’s meeting, a bot has been submitting security update pull requests to the gutenberg-examples repository. It was discovered that this was a default behavior from GitHub’s acquisition and integration of Dependabot.

Proposal: If there will be a workflow which requires corresponding upstream patches for the WordPress core project, we should document it.

Since the pull requests are not being submitted to the Gutenberg repository, this workflow may not be necessary. The examples repository is standalone and is not mirrored upstream in any fashion.

Agenda: Broader Impact of Gutenberg Patterns

Slack Conversation

@nerrad raised a concern that patterns developed in Gutenberg may conflict or overlap with patterns in the broader wp-admin interface.

Example: The “Snackbar” iteration is relevant in the conversation about notifications in the administration screens.

Question: Are features which land in the plugin guaranteed to make their way to stable WordPress release? Answer: It’s not intended to be a given, iterations and feedback are to be solicited, and features can be guarded behind feature flags or dropped altogether. But ultimately, the current release workflow does result in most of these being put on a track toward a stable release.

Question: How do we avoid siloed decision-making?

Considerations:

  • These should be discussed beforehand in relevant teams with audiences outside Gutenberg specifically (#design was raised as having discussed this specific “Snackbar” iteration).
  • There should be some Trac conversation for the broader implications of the specific feature, and if/when this exists, regular updates should be provided to share iterations and solicit feedback.

Next Steps: Discuss the question of process for how decisions made in Gutenberg are handled in making their way to WordPress core. What are the problems, and who makes the decisions? Consider as a discussion point for a future devchat.

Open Floor

Slack Conversation

@nerrad shared that the useDispatch React hook is now available for use in Gutenberg master (pull request, documentation). This complements the useSelect React hook which had been merged last week (pull request, documentation).

@nerrad plans to publish a post about these new hooks on his own personal blog, and may cross-post or adapt the content into a post for Make/Core (this blog).

@gziolo shared that he has been making progress on improvements to the @wordpress/scripts package tools, including default paths for linting scripts, ensuring the build folder is ignored from validation (pull request), and supporting multiple entry points for build (pull request).

#core-js, #javascript