Editor Chat Agenda: 5 August, 2020

Facilitator and notetaker: @annezazu

This is the agenda for the weekly editor chat scheduled for 2020-08-05 14:00 UTC

This meeting is held in the #core-editor channel in the Making WordPress SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/..

Even if you can’t makemake A collection of P2 blogs at make.wordpress.org, which are the home to a number of contributor groups, including core development (make/core, formerly "wpdevel"), the UI working group (make/ui), translators (make/polyglots), the theme reviewers (make/themes), resources for plugin authors (make/plugins), and the accessibility working group (make/accessibility). the meeting, you’re encouraged to share anything relevant for the discussion:

  • 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, #core-editor-agenda

Outcomes from the last WP Notify feedback post

A month ago I posted an update post for WP Notify, in order to start planning for the next phase of this project.

This post includes a short review of the feedback from that post, as well as the outcomes/next steps.

Feedback

  • Generally the feedback on the post and the requirements document was good. It was also pleasing that more new contributors were made aware of the project, and left their comments on the document.
  • It was generally agreed that a GitHubGitHub GitHub is a website that offers online implementation of git repositories that can can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ repository makes the most sense as a central location for all work to be done.
  • There was no general consensus around the weekly meetings.

Outcomes

The GitHub repository has been created. We need to decide if we’re going to start building using existing code, or completely from scratch.

We also need to start designing the user interfaces. There are already designs from @hedgefield on the original trac ticket, but those designs may need a refresh based on our current requirements document.

And finally, I’ll be resurrecting the weekly meetings in the #feature-notifications channel in SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/.. These meetings will however switch to an office hours format, without an informal agenda. These office hours will take place on Mondays at 14:00 UTC. Due to time constraints on my side, the first open office hours will be on Monday, August 17, 2020, 14:00 UTC.

I invite all interested parties to join me in our first office hours on the 17th of August 2020, as we start implementing the project we’ve all been planning for the past year.

#feature-plugins, #feature-notifications, #team-update

CSS Chat Summary: 30 July 2020

Full meeting transcript on Slack: https://wordpress.slack.com/archives/CQ7V4966Q/p1596142878412300

I (@notlaura) facilitated the meeting.

CSSCSS Cascading Style Sheets. Audit Updates

No CSS audit updates this week.

Color Scheming Updates

Global vs. UIUI User interface based color naming

tl;dr – We’ve gotten sidetracked by naming!

@ryelle pointed out @kburgoine‘s comment on the color schemes ticket #49999 – it gives an excellent summary of where are now and suggests a path forward. We discussed being sidetracked by the details in naming. While that will be important for an implementation, we aren’t there yet and as @kburgoine suggested in the ticketticket Created for both bug reports and feature development on the bug tracker., we first need to figure out a set of colors to work with based on what we have learned in the audit. @ryelle referenced this part of the comment for our next steps:

Look at the default colour usage in the adminadmin (and super admin) (which has been done as part of the audit already), identify the main colours (including colours not currently included in schemes i.e background-colour) and try to whittle it down to a usable/manageable colour palette

The goal here is to create a color inventory that can then be mapped into custom properties, which can then be used to implement one of the existing color schemes. I mentioned that I got access to the WordPress Figma library which can help us with the color inventory step.

@kburgoine‘s comment refers to this post about building a dark mode on StackOverflow and @ryelle mentioned it is a great read.

Dark mode as a toggle vs. a categoryCategory The 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging. for schemes

@danfarrow mentioned the concept of scheme categories makes sense to him, and @ryelle mentioned that we will likely start with default light and dark color schemes, and the others can be either. We can use some default detection for prefers-color-scheme and use the default dark scheme for users who have that preference.

But…this is all getting ahead of things again 🙂

I summarized our next steps for color schemes to be:

CSS Latest and Greatest Link Share

@danfarrow shared CSS Sweeper, an implementation of MineSweeper using only CSS and HTMLHTML HyperText Markup Language. The semantic scripting language primarily used for outputting content in web browsers.!! This uses the Space Toggle trick to manage state without JavaScriptJavaScript JavaScript or JS is an object-oriented computer programming language commonly used to create interactive effects within web browsers. WordPress makes extensive use of JS for a better user experience. While PHP is executed on the server, JS executes within a user’s browser. https://www.javascript.com/.. So cool!

#core-css, #summary

What’s next in Gutenberg? (August)

This is a monthly update containing the high-level items that GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ contributors are focusing on for August. Please join us in our efforts and let us know in the comments if anything is blocking you from doing so. 

How to follow along with Gutenberg: 

As a reminder, here’s an overview of different ways to keep up with Gutenberg and the Full Site Editing project. Tied to this, there’s a new page courtesy of @bph, @williampatton, and myself that provides an index of Gutenberg related posts across various Makemake A collection of P2 blogs at make.wordpress.org, which are the home to a number of contributor groups, including core development (make/core, formerly "wpdevel"), the UI working group (make/ui), translators (make/polyglots), the theme reviewers (make/themes), resources for plugin authors (make/plugins), and the accessibility working group (make/accessibility). blogs. 

Addressing WordPress 5.5 feedback

WordPress 5.5 is set to be released on August 11th and any efforts spent here will be focused only on addressing critical regressions that might come up with this releaseRelease A release is the distribution of the final version of an application. A software release may be either public or private and generally constitutes the initial or new generation of a new or upgraded application. A release is preceded by the distribution of alpha and then beta versions of the software.. Ideally though, this won’t be an area that needs great attention for this month’s work.  

Follow along:

You can follow the remaining items for 5.5 here.

Global Styles & Editor focused APIs

As a reminder, Global Styles refers to the system that defines and manages global aesthetics allowing overall site styles, theme styles, and blocks to work well together. Last month, this was a smaller focus but, with 5.5 shipping in August, more time will be spent building out the Global Styles system and editor focused APIs. Some of this work will include the following:

Follow along:

You can follow the progress for this overall system in this overview issue. For more recent and immediate next steps, you can follow this issue describing the current state of work. 

WidgetWidget A WordPress Widget is a small block that performs a specific function. You can add these widgets in sidebars also known as widget-ready areas on your web page. WordPress widgets were originally created to provide a simple and easy-to-use way of giving design and structure control of the WordPress theme to the user. Screen

As part of expanding the blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. editor to other screens in the adminadmin (and super admin), work slowly but surely continues to improve the widget screen as part of a wider effort to add more block enabled sections to the WordPress experience. You can find initial ideas for what this might look like in this issue. Work will include the following: 

Follow along:

You can follow the progress of this focus by reviewing issues with the [Feature] Widgets label.

Full Site Editing

Work on this major focus for phase 2 is ongoing and is expected to continue iterating over the next months. We’ve wrapped up the major work needed to build the technical foundation of this project and are now moving towards expanding the UX & UI:

We’re watching the Theme Experiments repo as well to see how themers are attempting to build block-based themes. Thank you to everyone participating there as it’s a super useful way for us to determine prioritization. 

Follow along:

The high level, important tasks have been split into sections and highlighted on this overview issue. If you’re interested in being a part of testing Full Site Editing, check out the experimental outreach program to learn more

Navigation Screen

As a reminder, those who have been working on a new, block-based, menus page (nav-menus.php) in wp-admin are running a weekly chat in #core to begin better syncing up efforts. The meeting happens in #core every Wednesday at 7AM UTC. These meetings will be focused on triaging issues in GitHubGitHub GitHub is a website that offers online implementation of git repositories that can can easily be shared, copied and modified by other developers. Public repositories are free to host, private repositories require a paid subscription. GitHub introduced the concept of the ‘pull request’ where code changes done in branches by contributors can be reviewed and discussed before being merged be the repository owner. https://github.com/ with the [Feature] Navigation screen or [Block] Navigation labels but are also open for discussing improving the navigation creation process in WordPress, increasing compatibility with Full Site Editing, and maintaining backward compatibility.

If this interests you, check out the following issues to join the discussion: 

Follow along:

You can follow the progress of this project on this project board, review the overview issues (Block Navigation, Navigation Screen) & join the weekly coreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. chat.

Areas to be aware of:

Block & PluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party Developers

The Block Directory is coming to WordPress 5.5 and to help get ready @tellyworth shared this post discussing proposed guidelines and the following resources:

The Gutenberg Times covered this new feature in a comprehensive article that includes historical information to help understand what this might unlock for the community. 

Theme Developers

@poena wrote an extensive block-based theme tutorial to help others get started with building their own.

Ways to Help:

While the above items are our focuses, don’t forget that you can always help with triage, needs testing issues, good first issues and reviewing PRs. If there’s anything we can do to make contributing easier, let us know in the comments or in #core-editor chats. While we can’t promise to fix everything, we’d appreciate being aware of any blockers.

#core-editor #gutenberg-next

Dev Chat Summary, July 29th, 2020

@whyisjake hosted this agenda and @marybaum and @audrasjb edited.

Recent Dev-Notes

The group didn’t discuss these, but @whyisjake added them to the announcements. Have an opinion? Add your thoughts to the comments:

Upcoming Releases

  • WordPress 5.5 RC was released July 28th
    • @whyisjake mentioned that work is underway to only show the auto-update UIUI User interface for themes that support updates.
    • Testing changeset [48688] will determine whether it lands in 5.5.
    • @pbiron confirmed there will be a dev notedev note Each important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include: a description of the change; the decision that led to this change a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. on these changes.
  • WordPress 5.5 RC 2 scheduled for August 4th
    • An extra RC is possible if the UI changes much for themes.
  • @desrosj and @justinahinon completed a docs scrub on July 29th
  • Tickets and issues of concern:
    • @Carike seeks feedback on how to streamline GutenbergGutenberg The Gutenberg project is the new Editor Interface for WordPress. The editor improves the process and experience of creating new content, making writing rich content much simpler. It uses ‘blocks’ to add richness rather than shortcodes, custom HTML etc. https://wordpress.org/gutenberg/ dev updates with any ticketticket Created for both bug reports and feature development on the bug tracker. on TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress..
    • @pbiron added a new patch to ticket #48507 for 5.5 RC 1.
    • @jeffpaul shared process on patchpatch A special text file that describes changes to code, by identifying the files and lines which are added, removed, and altered. It may also be referred to as a diff. A patch can be applied to a codebase for testing. reviews of releaseRelease A release is the distribution of the final version of an application. A software release may be either public or private and generally constitutes the initial or new generation of a new or upgraded application. A release is preceded by the distribution of alpha and then beta versions of the software. candidates

Component check-in and status updates

Open Floor

Props @jeffpaul for proofreading.

#5-5, #dev-chat, #devchat

Controlling Plugin and Theme auto-update email notifications and Site Health infos in WP 5.5

This is the second part of the plugins and themes auto-updates dev notesdev note Each important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include: a description of the change; the decision that led to this change a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase. for WordPress 5.5. The first part was dedicated to Controlling Plugins and Themes auto-updates user interface.

PluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party and Theme auto-update email notifications

As of WordPress 5.5, email notifications will be sent after each attempt to auto-update a plugin or theme regardless of outcome (success or failure).

Here’s what you need to know about these emails.

Filtering the emails

Using the auto_plugin_theme_update_email hook, the recipient, subject, headers, and email content can be filtered to adjust a site’s needs.

Example of use:

<?php
function myplugin_auto_plugin_theme_update_email( $email, $type, $successful_updates, $failed_updates ) {
	// Change the email recipient.
	$email['to'] = 'admin@example.com';
	// Change the email subject when updates failed
	if ( 'fail' === $type ) {
		$email['subject'] = __( 'ATTN: IT Department – SOME AUTO-UPDATES WENT WRONG!', 'my-plugin' );
	}

	return $email;
}
add_filter( 'auto_plugin_theme_update_email', 'myplugin_auto_plugin_theme_update_email', 10, 4 );

Repeated failures email notifications prevention

Sometimes, a specific update may fail multiple times. When this happens, a notification email will be sent for only the first failure. A failure is considered a repeat when attempting to update to the same version.

For example, if version 1.0.1 fails and then 1.0.2 is released and fails, that is not a repeat failure.

For more information, see #50448 on TracTrac An open source project by Edgewall Software that serves as a bug tracker and project management tool for WordPress..

Disabling email notifications

Email notifications can be disabled using two filters:

  • auto_plugin_update_send_email
  • auto_theme_update_send_email

Emails are enabled by default (true). Returning false to either filterFilter Filters are one of the two types of Hooks https://codex.wordpress.org/Plugin_API/Hooks. They provide a way for functions to modify data of other functions. They are the counterpart to Actions. Unlike Actions, filters are meant to work in an isolated manner, and should never have side effects such as affecting global variables and output. will disable email notifications for that auto-update type.

The following snippet can be used to disable email notifications for themes and/or plugins auto-updates.

<?php
// Disable auto-update email notifications for plugins.
add_filter( 'auto_plugin_update_send_email', '__return_false' );

// Disable auto-update email notifications for themes.
add_filter( 'auto_theme_update_send_email', '__return_false' );

Auto-updates information in Site Health

Each plugin and theme’s auto-update status is also surfaced on the Site Health “Info” tab.

This text can be adjusted using the plugin_auto_update_debug_string and theme_auto_update_debug_string filters.

The following example replaces the text for the status of auto-updates for plugins:

<?php
function myplugin_plugin_auto_update_debug_string( $text, $plugin, $enabled ) {
	if ( false === $enabled ) {
		return __( 'Please consider turning on auto-updates!', 'my-plugin' );
	} else {
		return __( 'Thanks for enabling auto-updates!', 'my-plugin' );
	}
}
add_filter( 'plugin_auto_update_debug_string', 'myplugin_plugin_auto_update_debug_string', 10, 3 )

The following example replaces the text for the status of auto-updates for themes:

<?php
function mytheme_theme_auto_update_debug_string( $text, $active_theme, $enabled ) {
	if ( false === $enabled ) {
		return __( 'Please consider turning on auto-updates!', 'my-theme' );
	} else {
		return __( 'Thanks for enabling auto-updates!', 'my-theme' );
	}
}
add_filter( 'theme_auto_update_debug_string', 'mytheme_theme_auto_update_debug_string', 10, 3 )

Please note: Site Health support was introduced in the Feature Plugin, so there is no Changelog/Trac ticketticket Created for both bug reports and feature development on the bug tracker. to link.

Reviewed by @pbiron and @desrosj

#5-5, #dev-notes

CSS Chat Agenda: 30 July 2020

This is the agenda for the upcoming CSSCSS Cascading Style Sheets. meeting scheduled for Thursday, July 30, 2020, 5:00 PM EDT.

This meeting will be held in the #core-css channel in the Making WordPress SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/..

If there’s any topic you’d like to discuss, please leave a comment below!

  • Pronouns
  • CSS Audit Updates
    • Collecting tickets and docs about Stylelint and CSS coding standards
    • Media query counts with css-audit tool
  • Color Scheming Updates
    • UIUI User interface agnostic color naming (e.g. global-text-color vs. menu-text-color)
    • Considering unified approach for the editor and wp-adminadmin (and super admin) – e.g. dark mode toggle vs. dark mode as a scheme categoryCategory The 'category' taxonomy lets you group posts / content together that share a common bond. Categories are pre-defined and broad ranging..
  • CSS Latest and Greatest Link Share

#agenda, #core-css

CSS Chat Summary: 23 July 2020

Full meeting transcript on Slack: https://wordpress.slack.com/archives/CQ7V4966Q/p1595538061342900

I (@notlaura) facilitated the meeting.

CSSCSS Cascading Style Sheets. Audit Updates

@isabel_brison had a few updates to report!

  • Audited CSS in JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. files
  • Values/counts for font-family and letter-spacing (only 3 for the latter!)
  • Values/counts for z-index

This data can be seen in the audit report Google Doc. It looks like the remaining items are media query counts and the history of CSS coding standards and the stylelint configuration. @isabel_brison suggested collecting related documentation and tickets for this history piece, and using @ryelle‘s css-audit tool to accommodate the media query counts.

List of data to track on a recurring basis

For the CSS audit of wp-adminadmin (and super admin), #49582, we have discussed running recurring reports, and this agenda item was to determine what data should be tracked in a recurring report. We decided that, for now, we can place to include the same data we are including now where the collection is automated with the css-audit tool or stylelint. These items can be seen in the audit report Google doc.

Color Scheming Updates

Themes vs. Modes

One outcome of the meeting previous to this one was the concept of color “themes” vs. “modes”. I started off the conversation with this question:

Do you see a distinction between the nature of admin color schemes and something like dark mode, in the way we treat colors? For example:

  • Ectoplasm – Dark
  • Ectoplasm – High Contrast

(where “Ectoplasm” = any of the admin themes)

@tellthemachines said that she saw “dark mode” or “high contrast” to be a collection of themes that support that criteria. We discussed that “modes” are most like a way to categorize themes, and are not a separate implementation.

I shared a link @youknowriad posted during the last meeting to a prototype of dark mode in the editor. In this prototype, dark mode is a separate toggle that can be applied on top of themes. I also shares a code snipped @youknowriad posted before as an example of themes and modes treated separately:

.button {
   color: var( --wp-admin-theme-color );
   background: white;
}

.is-dark-mode .button  {
   background: var( --wp-admin-theme-color );
   color: white;
}

.my-admin-scheme {
   --wp-admin-theme-color: blue;
   // potentially other variables
}

We discussed that the rigidity of this approach will be restrictive for other themes and accommodating they variety of user needs required for accessibilityAccessibility Accessibility (commonly shortened to a11y) refers to the design of products, devices, services, or environments for people with disabilities. The concept of accessible design ensures both “direct access” (i.e. unassisted) and “indirect access” meaning compatibility with a person’s assistive technology (for example, computer screen readers). (https://en.wikipedia.org/wiki/Accessibility). In this case, the text for .button in dark mode will always be white, but we need to accommodate lower contrast dark mode themes as well. @tellthemachines mentioned that the “decisions not options” motto of WordPress, and that regarding accessibility, it should be the opposite (and after the meeting @ryelle followed up with the phrase “options not restrictions” … nice!).

So, to conclude here:

  • The notions of “dark mode” and “high contrast” seem like categories for color schemes – they are characteristics of a color scheme, not separate features.
  • In order to provide options, not restrictions, regarding accessibility, it will be important to have control over all colors in the implementation of color schemes.

CSS Latest and Greatest Link Share

I shared a link to CSS Scroll Snap – the possibility of slider-like interfaces with only CSS is not so far in the future!

#core-css, #summary

Various changes to WordPress React Components in WordPress 5.5

BlockPreview component

In previous versions, when using the BlockPreview component, setting a height for the container was necessary in order to show the blockBlock Block is the abstract term used to describe units of markup that, composed together, form the content or layout of a webpage using the WordPress editor. The idea combines concepts of what in the past may have achieved with shortcodes, custom HTML, and embed discovery into a single consistent API and user experience. preview properly. This was not working properly in situations where the height of the content was dynamic and changing from preview to another.

In WordPress 5.5, the BlockPreview component automatically scales the content to the available width and adapts its height to its content height.

In most situations, this will improve the rendering of BlockPreview components but if you used to rely on the fixed heights, you should consider checking whether the new behavior is working properly.

Popover component

On WordPress 5.5, the Popover component has different default values for the noArrow and position props. If you relied on the previous default behavior, you must explicitly assign these props.

<Popover noArrow={ false } position="top center" /> 

#5-5, #block-editor, #dev-notes

Auto-updates feature weekly meeting agenda – July 28th, 2020

Next meeting is scheduled on Tuesday July 28, 2020 at 17:00 UTC and will take place on #core-auto-updates SlackSlack Slack is a Collaborative Group Chat Platform https://slack.com/. The WordPress community has its own Slack Channel at https://make.wordpress.org/chat/. channel with the following agenda:

  • Progress report on Docs
    • HelpHub end-user documentation
    • Dev notesdev note Each important change in WordPress Core is documented in a developers note, (usually called dev note). Good dev notes generally include: a description of the change; the decision that led to this change a description of how developers are supposed to work with that change. Dev notes are published on Make/Core blog during the beta phase of WordPress release cycle. Publishing dev notes is particularly important when plugin/theme authors and WordPress developers need to be aware of those changes.In general, all dev notes are compiled into a Field Guide at the beginning of the release candidate phase.
    • About page/communication
  • Remaining tickets:

Got something to propose for the agenda? Please leave a comment below.

#auto-update, #auto-updates, #core-auto-updates, #feature-plugins, #feature-projects, #feature-autoupdates