JavaScript Chat Summary: December 10, 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.

Follow-Up: JSDoc Guidelines

(Slack conversation, previous meeting summary)

Proposed JSDoc guidelines were merged since the last meeting. They are available in a readable format in its own section in the Coding Guidelines for Gutenberg.

Discussion:

In the previous week, we talked about having some new conventions to support what we need for the types effort summarized in the tracking issue on GitHub.

@aduth shared that as he’s been working through these tasks (PR for Priority Queue package), he’s already found a few other things that might be worth contemplating. He has a sense this could be an evolving standard or at least a need for some additional clarity in specific cases as noted in the agenda:

  • Explicit recommendation on types capitalization ({Object} vs. {object}).
  • @see vs. @link correctness – the current guidelines are mistaken in treating @link as a non-inline tag.

The eslint-plugin-jsdoc plugin we now use in Gutenberg has most of the “defaults” we had already been preferring for some time. The point is to make this explicit in the recommendations, as well.

Prettier

(Slack conversation)

There were proposed revisions to JavaScript Coding Standards for Prettier compatibility.

Discussion:

There have been a couple of comments on the post already. Still, they don’t seem to be directly relevant for what’s being considered in these revisions, and more to the quality of the document generally-speaking.

There is also this question of how we document the expected way of using Prettier. @aduth assumed there’s some need for editor integration or pre-commit script for these formattings to take effect. He also emphasized that when doing anything on that front, we should be preemptive about making this as minimally-disruptive as possible.

Actions:

  • Let’s wait until next Tuesday to make any “decisions” since one day of soliciting feedback might not be enough.

Date Library in Gutenberg

(Slack conversation)

@davilera tried to use wp.date and encountered an issue, which somebody had already reported. We need some feedback on the proposed PR from those who worked on dates more closely in the past. In the current shape, the library is currently hard to work with, and therefore developers are forced to implement workarounds.

Open Floor

Currently, there is only simple support for block scaffolding in WP-CLI that generates code that runs in the browser without the need for a build step. It’s documented here.

@gziolo ported this script to work with Node.js without the need to have an active installation of WordPress. The plan is to introduce the concept of templates and provide the default support for ESNext, JSX and all modern JavaScript tooling installed out of the box with the single command from CLI:

npm init wordpress-block
npm init wordpress-block
Npm package in action.

Bonus item:

https://react.christmas/

#core-js, #javascript

WordPress 5.3.1 RC 2

WordPress 5.3.1 Release Candidate 2 (RC 2) is now available for testing!

You can test it in one of two ways:

What’s in this release candidate?

Beyond the tickets that were already fixed in WP 5.3.1 RC 1, this second release candidate includes three new patches, on these three tickets:

  1. #48943: comment_form() expects optional “email” field to be passed
  2. #47069: The admin bar on the front end has reduced functionality and bugs when jQuery not being used (reopened for some improvements)
  3. #48927: Aesthetic Issues with Language Select on Install introduced in 5.3.1 RC1

Final release is planned for December 12th.

Thanks @marybaum for proof-reading this post and @sergeybiryukov for building the packages.

#5-3-1, #minor-releases

Dev Chat Agenda for December 11, 2019

Here is the agenda for the weekly meeting happening later today: Wednesday, December 11, 2019, at 09:00 PM UTC.

Announcements

Upcoming Releases

Highlighted Blog Posts

Blog Posts Needing Review/Feedback/Help

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.

#agenda, #core, #devchat

WordPress 5.3.1 RC 1

WordPress 5.3.1 Release Candidate 1 (RC 1) is now available for testing!

There are two ways to test the WordPress 5.3.1 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 candidate?

5.3.1 features 44 bug and regression fixes, including improvements concerning the block editor, Twenty Twenty bundled theme, accessibility focus, Admin CSS, internationalization, media, date/time…

Here’s the full list:

  • #30429: wp.newPost gets non-GMT date calculation wrong
  • #31245: Replace alloptions with a key cache
  • #42437: Thumbnails can overwrite other uploads if filename matches
  • #48271: Media Library: Tab structure does not use tab semantics
  • #48313: Administration email verification uses the site locale instead of the user’s locale
  • #48324: Undefined index: full in/wp-includes/media.php on line 214
  • #48334: Allow the remind interval for the admin email verification to be filtered
  • #48355: Media: add semantic indication for the buttons group active state
  • #48371: Update sodium_compat to v1.12.1
  • #48376: Update kses safecss_filter_attr function to allow gradient backgrounds
  • #48406: Dashboard: Some links can be identified as such only by their color
  • #48409: Menus: form controls disabled only visually when creating a new menu
  • #48420: Admin CSS: standardize form controls heights, alignments, etc.
  • #48550: Twenty Twenty: Customizer option to show or hide author bio
  • #48551: Twenty Twenty: Replace JS-based smooth scroll with CSS
  • #48582: Better to have some hover effects on credits list
  • #48585: Color contrast changes impact color schemes negatively
  • #48588: Unable to Replace Image in Image widget is using “Insert from URL”
  • #48592: About display of tag cloud widget
  • #48598: :active button color issue in all color schemes except for “Default”
  • #48601: Twenty Twenty: document.body is null
  • #48606: Some date formats get incorrectly output in Italian
  • #48619: Twenty Twenty: Author bio and bottom post meta misaligned on mobile
  • #48623: WP 5.3 time problem causes day number shifts in permalinks
  • #48624: Twenty Twenty: Duplicate array key/value in TwentyTwenty_Non_Latin_Languages::get_non_latin_css
  • #48652: Twenty Twenty: Input wp-comment-cookies-consent Checkbox in Comment Form is Too Small
  • #48674: Typo in wp_credits_section_title documentation
  • #48675: mysql2date adding timezone offset when given GMT time
  • #48688: TwentyTwenty: Issue with instagram oembed css
  • #48692: Add PHP time zone check to Site Health
  • #48696: Remove the CollegeHumor oEmbed provider
  • #48704: Twenty Twenty: Spelling correction of a variable and inline documentation.
  • #48725: Additional Capabilities list displayed in user-edit broke after 5.3 update
  • #48736: Exclude PNG images from scaling after upload
  • #48763: Twenty Twenty: SmoothScroll is broken
  • #48815: Select comment checkbox is partially hidden on pending comments in mobile
  • #48866: TwentyTwenty: Paginated comments don’t work
  • #48876: Twenty Twenty: High input fields are misaligned in Firefox
  • #48884: Update WordPress packages with fixes targeted for 5.3.1
  • #48906: Twenty Twenty: Add context for twentytwenty_start_of_post_meta_list and twentytwenty_end_of_post_meta_list
  • #48907: Media Editor: Consistent width for Scale and Crop inputs
  • #48918: Twenty Twenty: echoing bloginfo()
  • #48599: Warning: count(): Parameter must be an array or an object that implements Countable in ../wp-admin/includes/plugin.php on line 1392
  • #47069: Twenty Nineteen: the admin bar on the front end has reduced functionalities and bugs due to jQuery not being used

#5-3-1, #minor-releases

Core editor chat summary 4th December, 2019

This post summarizes the weekly editor chat meeting agenda here. Held on Wednesday, 4th December 2019 held in Slack. Moderated by @ellatrix.

Full Site Editing and themes

@ellatrix
The idea here is to recap what’s being worked on, what has been discussed in #themereview yesterday’s meeting and provide some space for feedback and discussions about the next steps.
Must Read:
– Summary for yesterday’s #themereview meeting
https://make.wordpress.org/themes/2019/12/04/questions-about-the-future-of-themes/
– Documentation for the current state of Block-based themes
https://github.com/WordPress/gutenberg/pull/18890

@youknowriad
The main takeaways/action items for me are:
– Let’s have theme authors experiment with these in Github/personal themes and provide feedback: Gather a list of Missing blocks?
– Potentially help build a demo theme in Gutenberg in this folder https://github.com/WordPress/gutenberg/blob/master/lib/demo-block-templates/index.html
– From the editor side, continue on the current PRs/work https://github.com/WordPress/gutenberg/labels/%5BFeature%5D%20Full%20Site%20Editing

@williampatton
Sounds good to me, in addition we will also be doing more to get stuck in and help you all out with comments, PRs and testing as we all make time for it in the coming weeks.

@noisysocks
If I’m a theme author and read these incredibly helpful links and have some questions or comments, where should I put them?

@youknowriad
I think at the moment (only during experiment phase), it should be fine to ask here and raise Github issues for bugs. We should also take these as opportunities to document things as we move forward from both themers and devs.

Weekly Priorities

@youknowriad
I’d like to share the new priorities post for December in case you missed it https://make.wordpress.org/core/2019/12/03/whats-next-in-gutenberg-december/
An emphasize on Block content areas / Full site editing and also a push for Block Patterns APIs and usage across blocks and inserter in addition to a few tightening up items.

Task Coordination

@aduth
I’ve been focusing more on framework-y stuff:
– Get types checking in place https://github.com/WordPress/gutenberg/issues/18838
– A never-ending crusade to stabilize Travis build
Hoping in the next week to revisit some feature work:
– Better _fields handling in wordpress/apiFetch and/or wordpress/data
– Revisit spoken messages in Notice pull request
– Also been fixing up a few theme interoperability issues, notably around background colors for custom editor styles:
https://github.com/WordPress/gutenberg/pull/18732
https://github.com/WordPress/gutenberg/pull/18871
https://github.com/WordPress/gutenberg/pull/18873

@noisysocks
I’m somewhat looking at deprecating the wordpress/nux package but mostly reviewing PRs this week.

@ellatrix
I’ve been working on “Lighter block DOM: detached controls in popovers”, improvements on Popover, multi block selection, and paste on multi block selection.

@get_dave
I’ve been working on…
…a PR to allow parent blocks to capture the Block toolbars of all child blocks which is just waiting on a thumbs up from @jorgefilipecosta:
https://github.com/WordPress/gutenberg/pull/18440
…adding justification tools to the Navigation Block:
https://github.com/WordPress/gutenberg/pull/18909

@jorgefilipecosta
Past week:
– Reviewed some media-related PR’s, namely the refactor to the gallery, to increase reusability with the native mobile APP.
– Helped the enhancements to useColors and merged the PR that uses the hook in the paragraph.
– Finish the remove editor module usages in block-editor by applying changes to the reusable blocks, rich-text, and native inserter. Some PR’s are waiting for a review.
– Updated the release tool to move readme and changelog files to the Github repository.
– Submitted several bug fixes.
– Continued the interactions/enhancements on the PR’s I have open e.g.: custom gradients.
Next week:
– Increase my involvement with the FSE work (by reviewing PR’s and working on a subtask — Suggestions for a possible subtask are welcome 🙂 ).
– Continue giving my support to some media-related PR’s by reviewing and testing them, and maybe submit follow up enhancements.
– Rebase Update the buttons block PR and try to unblock the PR.
– Address reviews Add a mechanism to set a width on withViewportMatch https://github.com/WordPress/gutenberg/pull/17085.
– Fix some widget related issues.

@youknowriad
I’ve mostly trying to make sure everyone is not blocked and also worked on some PR’s related to the block toolbar/UI (fixed toolbar, select/edit modes…) and some code quality refactorings.

@richtabor
I have a PR for adding background color support to the Columns block:
https://github.com/WordPress/gutenberg/pull/17813

@welcher
I have a small docs PR that explains how to work with the changes to serverSideRender location: https://github.com/WordPress/gutenberg/pull/18722

@gziolo
Last week:
– Worked on fixes for regression introduced in the block toolbar.
– Refactoring towards using the new accessible version of Toolbar component.
– Core patch to simplify the process of updating Gutenberg packages after every plugin release.
Next week:
– Resume work on Patterns API once we decide which blocks should be integrated (Table?, Cover?).
– Resume work on block.json transformation on the client side to allow automatic handling of translations.

Open Floor

@gziolo
Resume work on Patterns API once we decide which blocks should be integrated (Table?, Cover?)
We have Columns block integrate, we use some sort of setup step for Table block, should we integrate it with Patterns API as well?
The challenge is that it needs to allow the custom creator as well.

We tried Media & Text but we abandoned this idea
https://github.com/WordPress/gutenberg/issues/16283#issuecomment-508132004
Information here: https://github.com/WordPress/gutenberg/pull/18343

There was additional conversations about patterns and transforms during the open floor: https://wordpress.slack.com/archives/C02QB2JS7/p1575469981089100

WordPress 5.3 Retrospective Recap and Next Steps

The week of WP 5.3 release I posted a call for feedback for the development workflow.

Thank you to everyone that left their comments! Reflecting on what worked and what didn’t is a great way to move forward together and steer the wheel if and when needed.

Some comments didn’t follow the proposed format of start/stop/continue so it wasn’t very clear where they fit: I tried to put them in one of the categories. I also rephrased some feedback that was sometimes given as a positive statement (continue doing A instead of B) and sometimes a negative statement (stop doing B and do A). Finally, I added feedback I collected from the focus leads or from anonymous sources.

If something doesn’t feel right let me know and I will amend the post.

Read on for everyone’s feedback!

Continue reading

#5-3, #summary

Devchat summary: November 27, 2019

The year is winding down!

@francina led the chat; @marybaum here taking notes on a holiday-travel schedule.

20 people announced their presence – of course somewhere around 30K are members, and we could ALL have been watching. The more the merrier!

The chat worked from this agenda.

Announcements

Next minor: 5.3.1

The announcements were all about the next minor, WordPress 5.3.1.

@justinahinon and I (@marybaum) announced that he would move the Thursday bug scrub to Friday so folks in the US could join in without interrupting their Thanksgiving plans.

After some discussion, @azaozz suggested ad hoc bug scrubs every day until release on December 11. He got active emoji support from five people, and then @audrasjb volunteered to host a bug scrub every day this week (the week of December 2).

Highlighted Posts

@francina called the group’s attention to four conversations.

Got opinions? Especially if your feelings are strong, now’s the time to get over there and share your views:

  1. Recap from last week “Regular” chat https://make.wordpress.org/core/2019/11/20/dev-chat-summary-november-20-2019/ (edited) 3:15 PM
  2. Recap from last week “After Hour” chat https://make.wordpress.org/core/2019/11/25/devchat-after-the-hour-november-20/ (edited) 3:15 PM
  3. Tons of good feedback about the 5.3 release https://make.wordpress.org/core/2019/11/15/5-3-retrospective-call-for-feedback/ (edited) 3:16 PM
  4. And tentative release for 2020-2021 https://make.wordpress.org/core/2019/11/21/tentative-release-calendar-2020-2021/ (edited)

And you can always come to devchat, Wednesdays at 21:00 UTC. Find the agenda here, 24 hours in advance.

Calls from Component Maintainers

@francina opened the Call with this wide-ranging intro:

Do we have news from components? Do we have abandoned components that someone wants to adopt? (edited) 3:22 PM

Do we have components that are struggling with the amount of work and need more hands on deck? How can we come together as a community to recruit? (edited) 

See the discussion starting here.

What followed was a general clarification of the difference between a component and a focus, thanks to @sergeybiryukov, who linked to two posts that add some detail.

(I’m listing them in reverse order, so you can read from the general to the specific):

@isabel_brison‘s post introducing the idea of a focus versus a component.

And this post, introducing the Core-CSS group in Slack.

As that discussion ended, @isabel_brison offered to write a followup post, which you can find here.

What are our goals in publishing?

@francina handed the (virtual) mic to @joyously, whose comment on the agenda for this chat asked the group to address goals in publishing.

Essentially, @joyously reminded us that publishers – our users [and as I was trained to think of such folks ~30 years ago, our customers, both internal and external] create content that is going to go more places than just a browser: in emails, feed readers and more. And those environments vary radically in their support for CSS and JS.

In her words:

I am concerned that the trend is toward content that looks good only in a web browser (with JS and CSS) and not good anywhere else.

@joyously

See the rest of the discussion in chat here.

A highlight: @francina linked to this post on Smashing Magazine, that looks at another facet of this issue.

And be on the lookout for more blog posts addressing the topic, so you can add your thoughts.

#components, #core-css, #devchat, #focuses

JavaScript Chat Summary: November 26, 2019

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.

Open Floor: Types in Gutenberg

@aduth suggested to revisit the topic of improving types in Gutenberg. He mentions some work already done in URL module: https://github.com/WordPress/gutenberg/pull/17014

It was discussed to create a master issue with the progress of converting packages to use TypeScript validation based on JSDoc.

@gziolo fixed all ESLint warning related to the integration with the new plugin which combines JSDoc and ESLint, however this probably needs to be further investigated.

Action:

  • Create a tracking issue for module adoption of type checking
  • Push forward on effort to improve docgen ability to understand more of the TypeScript-specific syntax
  • Do some more conversions as demonstration

Open Floor: E2E Tests and Travis

Pushing a PR has been a bit of a chore recently with flakey tests, usually requiring a restart of a couple each time

For stability, it requires some diligence to investigate the underlying issues. Some improvements have been merged / proposed here:

@aduth have a few of these ideas in the Project Management Automation project board as well https://github.com/WordPress/gutenberg/projects/24

There was talk about documenting some of the common issues seen with E2E tests. Also to add a bot response with comments about the reasons of failing tests.

A CPU problem is mentioned: https://github.com/WordPress/gutenberg/pull/18770

Action: 

  • @noisysocks could look into some of this and write up findings/suggestions in an issue, not sure when though.

#core-js, #javascript

WP Notify hiatus till January 2020

As the year end almost upon us, the WP Notify team will be taking a hiatus until January 2020.

Personally I’ve not been in a position to drive the current requirements gathering process and the weekly meetings, and @hrmervin has just started a new position, which is currently his primary focus.

We are both still committed to moving this project forward, and will post the first meeting time for the new year closer to the time, but for at least the rest of this year, we both need to focus our time elsewhere.

If anyone would like to continue the meetings for the month of December 2019 and help drive the requirements gathering process forward, please comment here or reach out to myself or @hrmervin on Slack.

You can see the current status of this project in the #feature-notifications channel , to join, you’ll need an account on the Making WordPress Slack.

#feature-notifications

Editor chat summary: Wednesday, 27 November 2019

This post summarizes the weekly editor chat meeting on Wednesday, 27 November 2019, 14:00 WET held in Slack.

Gutenberg 7.0

Gutenberg 7.0 was released. It brings the navigation block out of the experimental state. The release was possible thanks to the efforts of 51 contributors. More details about this release can be checked on the release post.

Weekly Priorities

November priorities post: https://make.wordpress.org/core/2019/10/29/whats-next-in-gutenberg-november/

The priorities should remain pretty stable I think: Block Content Areas, Nesting Selection Tool, Navigation block will continue to be improved based on feedback. Gradients are almost “finished” and we may start thinking about improvements to the block interface based on this great issue https://github.com/WordPress/gutenberg/issues/18667.

@youknowriad

Task Coordination

@youknowriad

Worked on PR’s Edit/Navigation ToolFixed Toolbar on mobile, and Add a header menu to switch between edit and select tool. Hopes to continue a trend of 50% reviews and triage and 50% code.

@jorgefilipecosta

Gave support on the forums, triaged issues, rebased and updated some PR’s, submitted and merged several bug fixes, and worked on a PR that may increase the performance of the editor by caching styles https://github.com/WordPress/gutenberg/pull/18763.

On the next week: 

  • Plans to review and help some media-related PR’s, namely the refactor to the gallery, to increase reusability with the native mobile APP. 
  • Wants to finish the remove editor module usages in block-editor by applying changes to the reusable blocks and rich-text. 
  • Update the release tool to move readme and changelog files to the Github repository.

@noisysocks

Finished the work on adding a welcome guide modal, which is now ready for review.

Intends to spend the rest of this week playing with wordpress/env, seeing if we can deprecate local-env, and writing docs for this all.

@retrofox

Helped to finish the first approach of the Navigation block. Emphasize this comment: Navigation block will continue to be improved based on feedback.

@karmatosed

Contributed to the following tasks:

Is looking at iterations for navigation, going through design feedback in Tightening Up board, and seeing what needs work or is blocked, and is working on docs for the triage team.

@mapk 

 Worked on some reviews and triage, namely the NUX modal PR for @noisysocks.

@paaljoachim

Looked closer at this issue https://github.com/WordPress/gutenberg/issues/17640#issuecomment-556866662. Might need to create a new issue to bring a better focus on what he brought up.

@gziolo

Attended WordCamp Łódź, helped people on forums, worked on some triage based on reports from people. This week will resume the work on Block Patterns API.

@bph

Working on End User Documentation and connected with @melchoyce on her project to replacing gifs with videos.

Open floor

@scruffian brought the topic of how we handle Full Site Editing blocks for non-admin users.

@youknowriad referred the precedent we have in media blocks to allow/disallow features based on user capabilities, and @noisysocks referred the API we have to query user permissions.

@scruffian shared some questions he had on his mind:

  • Is the API change I suggested in https://github.com/WordPress/wordpress-develop/pull/120 sensible? 
  • I see a change in the block itself in the PR not the API and it seems reasonable.
  • How does the design of the block change when a non-admin see it – does it need a special treatment?
  • This is probably a per-block problem as you might have access to some features in the block but not everything (think alignment of a site title block)

For the API change question, @youknowriad answered, he sees a change in the block itself in the PR, not the API, and that the change seems reasonable. For the block design question, @youknowriad answered that this is probably a per-block problem as one might have access to some features in the block but not everything.

@mrMark asked the use case Navigation Block and if it is intended to replace the menu system eventually. @youknowriad said that replacing the menu system may be a possibility but not until we allow editing the full templates in Gutenberg.

As a follow-up question @mrMark asked:

As the Block Editor encroaches onto the realm of what themes would normally handle, ie presentation layer, what’s the plan for integration between the Block editor and themes?

And then @mrMark referred that the Next Generation of Themes and how they integrate with the Block Editor should start being conceptualized.

@youknowriad referred that this is a big topic and ongoing work that can be followed on https://github.com/WordPress/gutenberg/labels/%5BFeature%5D%20Full%20Site%20Editing. @youknowriad is also happy to answer any specific questions, and this topic will be part of the next week’s meeting. So in case, this is something that interests you, please join us and share your insights!

#core-editor, #editor-chat, #meeting, #summary