Title: 2021 – Page 10 – Make WordPress Core

---

#  Yearly Archives: 2021

 [  ](https://profiles.wordpress.org/zieladam/) [Adam Zieliński](https://profiles.wordpress.org/zieladam/)
10:21 am _on_ October 29, 2021      

# 󠀁[Thunks in Gutenberg](https://make.wordpress.org/core/2021/10/29/thunks-in-gutenberg/)󠁿

[Gutenberg 11.6](https://github.com/WordPress/gutenberg/pull/27276) added support
for _thunks_. You can think of thunks as of functions that can be dispatched:

    ```javascript
    // actions.js
    export const myThunkAction = () => ( { select, dispatch } ) => {
    	return "I'm a thunk! I can be dispatched, use selectors, and even dispatch other actions.";
    };
    ```

## 󠀁[󠀁[Why are thunks useful?

Thunks [expand the meaning of what a Redux action is](https://jsnajdr.wordpress.com/2021/10/04/motivation-for-thunks/).
Before thunks, actions were purely functional and could only return and yield data.
Common use cases such as interacting with the store or requesting APIAPI An API 
or Application Programming Interface is a software intermediary that allows programs
to interact with each other and share data in limited, clearly defined ways. data
from an action required using a separate [control](https://developer.wordpress.org/block-editor/reference-guides/packages/packages-data/#controls).
You would often see code like:

    ```javascript
    export function* saveRecordAction( id ) {
    	const record = yield controls.select( 'current-store', 'getRecord', id );
    	yield { type: 'BEFORE_SAVE', id, record };
    	const results = yield controls.fetch({ url: 'https://...', method: 'POST', data: record });
    	yield { type: 'AFTER_SAVE', id, results };
    	return results;
    }

    const controls = {
    	select: // ...,
    	fetch: // ...,
    };
    ```

Side effects like store operations and fetch functions would be implemented outside
of the action. Thunks provide an alternative to this approach. They allow you to
use side effects inline, like this:

    ```javascript
    export const saveRecordAction = ( id ) => async ({ select, dispatch }) => {
    	const record = select( 'current-store', 'getRecord', id );
    	dispatch({ type: 'BEFORE_SAVE', id, record });
    	const response = await fetch({ url: 'https://...', method: 'POST', data: record });
    	const results = await response.json();
    	dispatch({ type: 'AFTER_SAVE', id, results });
    	return results;
    }
    ```

This removes the need to implement separate controls.

### 󠀁[󠀁[Thunks have access to the store helpers

Let’s take a look at an example from 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/](https://wordpress.org/gutenberg/)
coreCore Core is the set of software required to run WordPress. The Core Development
Team builds WordPress.. Prior to thunks, the `toggleFeature` action from the `@wordpress/
interface` package was implemented like this:

    ```javascript
    export function* toggleFeature( scope, featureName ) {
    	const currentValue = yield controls.select(
    		interfaceStoreName,
    		'isFeatureActive',
    		scope,
    		featureName
    	);

    	yield controls.dispatch(
    		interfaceStoreName,
    		'setFeatureValue',
    		scope,
    		featureName,
    		! currentValue
    	);
    }
    ```

Controls were the only way to `dispatch` actions and `select` data from the store.

With thunks, there is a cleaner way. This is how `toggleFeature` is implemented 
now:

    ```javascript
    export function toggleFeature( scope, featureName ) {
    	return function ( { select, dispatch } ) {
    		const currentValue = select.isFeatureActive( scope, featureName );
    		dispatch.setFeatureValue( scope, featureName, ! currentValue );
    	};
    }
    ```

Thanks to the `select` and `dispatch` arguments, thunks may use the store directly
without the need for generators and controls.

### 󠀁[󠀁[Thunks may be async

Imagine a simple ReactReact React is a JavaScript library that makes it easy to 
reason about, construct, and maintain stateless and stateful user interfaces. [https://reactjs.org](https://reactjs.org/)
app that allows you to set the temperature on a thermostat. It only has one input
and one button. Clicking the button dispatches a `saveTemperatureToAPI` action with
the value from the input.

If we used controls to save the temperature, the store definition would look like
below:

    ```javascript
    const store = wp.data.createReduxStore( 'my-store', {
        actions: {
            saveTemperatureToAPI: function*( temperature ) {
                const result = yield { type: 'FETCH_JSON', url: 'https://...', method: 'POST', data: { temperature } };
                return result;
            }
        },
        controls: { 
            async FETCH_JSON( action ) {
                const response = await window.fetch( action.url, {
                    method: action.method,
                    body: JSON.stringify( action.data ),
                } );
                return response.json();
            }
        },
        // reducers, selectors, ...
    } );
    ```

While the code is reasonably straightforward, there is a level of indirection. The`
saveTemperatureToAPI` action does not talk directly to the API, but has to go through
the `FETCH_JSON` control.

Let’s see how this indirection can be removed with thunks:

    ```javascript
    const store = wp.data.createReduxStore( 'my-store', {
        __experimentalUseThunks: true,
        actions: {
            saveTemperatureToAPI: ( temperature ) => async () => {
                const response = await window.fetch( 'https://...', {
                    method: 'POST',
                    body: JSON.stringify( { temperature } ),
                } );
                return await response.json();
            }
        },
        // reducers, selectors, ...
    } );
    ```

That’s pretty cool! What’s even better is that resolvers are supported as well:

    ```javascript
    const store = wp.data.createReduxStore( 'my-store', {
        // ...
        selectors: {
            getTemperature: ( state ) => state.temperature
        },
        resolvers: {
            getTemperature: () => async ( { dispatch } ) => {
                const response = await window.fetch( 'https://...' );
                const result = await response.json();
                dispatch.receiveCurrentTemperature( result.temperature );
            }
        },
        // ...
    } );
    ```

Support for thunks is experimental for now. You can enable it by setting `__experimentalUseThunks:
true` when registering your store.

## 󠀁[󠀁[Thunks API

A thunk receives a single object argument with the following keys:

### 󠀁[󠀁[select

An object containing the store’s selectors pre-bound to state, which means you don’t
need to provide the state, only the additional arguments. `select` triggers the 
related resolvers, if any, but does not wait for them to finish. It just returns
the current value even if it’s null.

If a selector is part of the public API, it’s available as a method on the select
object:

    ```javascript
    const thunk = () => ( { select } ) => {
        // select is an object of the store’s selectors, pre-bound to current state:
        const temperature = select.getTemperature();
    }
    ```

Since not all selectors are exposed on the store, `select` doubles as a function
that supports passing a selector as an argument:

    ```javascript
    const thunk = () => ( { select } ) => {
        // select supports private selectors:
        const doubleTemperature = select( ( temperature ) => temperature * 2 );
    }
    ```

### 󠀁[󠀁[resolveSelect

`resolveSelect` is the same as `select`, except it returns a promise that resolves
with the value provided by the related resolver.

    ```javascript
    const thunk = () => ( { resolveSelect } ) => {
        const temperature = await resolveSelect.getTemperature();
    }
    ```

### 󠀁[󠀁[dispatch

An object containing the store’s actions

If an action is part of the public API, it’s available as a method on the `dispatch`
object:

    ```javascript
    const thunk = () => ( { dispatch } ) => {
        // dispatch is an object of the store’s actions:
        const temperature = await dispatch.retrieveTemperature();
    }
    ```

Since not all actions are exposed on the store, `dispatch` doubles as a function
that supports passing a Redux action as an argument:

    ```javascript
    const thunk = () => async ( { dispatch } ) => {
    	// dispatch is also a function accepting inline actions:
    	dispatch({ type: 'SET_TEMPERATURE', temperature: result.value });

    	// thunks are interchangeable with actions
    	dispatch( updateTemperature( 100 ) );

    	// Thunks may be async, too. When they are, dispatch returns a promise
    	await dispatch( ( ) => window.fetch( /* ... */ ) );
    }
    ```

### 󠀁[󠀁[registry

A registry provides access to other stores through its `dispatch`, `select`, and`
resolveSelect` methods. These are very similar to the ones described above, with
a slight twist. Calling `registry.select( storeName )` returns a function returning
an object of selectors from `storeName`. This comes handy when you need to interact
with another store. For example:

    ```javascript
    const thunk = () => ( { registry } ) => {
      const error = registry.select( 'core' ).getLastEntitySaveError( 'root', 'menu', menuId );
      /* ... */
    }
    ```

This article is now a part of the [developer’s handbook](https://developer.wordpress.org/block-editor/how-to-guides/thunks/).

Special thanks to [@jsnajdr](https://profiles.wordpress.org/jsnajdr/), [@get_dave](https://profiles.wordpress.org/get_dave/),
and [@mcsf](https://profiles.wordpress.org/mcsf/) for their countless reviews and
ideas for improving this article.

 [  ](https://profiles.wordpress.org/tweetythierry/) [Thierry Muller](https://profiles.wordpress.org/tweetythierry/)
4:37 pm _on_ October 28, 2021     
Tags: [agenda ( 1,141 )](https://make.wordpress.org/core/tag/agenda/),
[meeting ( 405 )](https://make.wordpress.org/core/tag/meeting/), [performance ( 414 )](https://make.wordpress.org/core/tag/performance/),
[performance-chat ( 341 )](https://make.wordpress.org/core/tag/performance-chat/)

# 󠀁[WordPress Performance Team kick off](https://make.wordpress.org/core/2021/10/28/wordpress-performance-team-kick-off/)󠁿

Two weeks ago, Google and Yoast WordPress contributors posted a [proposal to create a Performance team](https://make.wordpress.org/core/2021/10/12/proposal-for-a-performance-team/)
responsible for coordinating efforts to increase the performance (speed) of WordPress.
The proposal was very well received overall, and many other contributors showed 
interest in joining the effort (thanks everyone).

This post aims at announcing the next steps.

## **Initial contributors coordination**

As authors of the initial proposal, long time WordPress contributors, [@tweetythierry](https://profiles.wordpress.org/tweetythierry/),
[@flixos90](https://profiles.wordpress.org/flixos90/), [@aristath](https://profiles.wordpress.org/aristath/),
[@j](https://profiles.wordpress.org/francina/)[ustinahinon](https://profiles.wordpress.org/justinahinon/),
[@adamsilverstein](https://profiles.wordpress.org/adamsilverstein/) (in no particular
order) are committed to:

 * lead the working groups formation
 * coordinate the initial administrative tasks (slackSlack Slack is a Collaborative
   Group Chat Platform [https://slack.com/](https://slack.com/). The WordPress community
   has its own Slack Channel at [https://make.wordpress.org/chat/](https://make.wordpress.org/chat/)
   channel, weekly meetings, schedule working groups representative nominations,
   etc.)
 * create a mission statement for the team
 * coordinate the areas to tackle
 * outline the scope and the roadmap

If you have interest in contributing to any of the above, please join the kickoff
meeting, if you can, or use the comments of this post to do so.

Everybody is welcome to join working groups and contribute to performance enhancements
without specific nomination 🙂

## **Kickoff meeting**

Given the large interest from many contributors, it sounds like getting together
is the first step.

By looking at the CoreCore Core is the set of software required to run WordPress.
The Core Development Team builds WordPress. Meetings calendar, Tuesdays at 3PM UTC
seem good candidates. [@j](https://profiles.wordpress.org/francina/)[ustinahinon](https://profiles.wordpress.org/justinahinon/)
has offered to run chats ad interim, the kick-off meeting will happen on [Tuesday, November 2nd 2021 at 3PM UTC](https://www.timeanddate.com/worldclock/fixedtime.html?iso=20211102T1500)
in the [#performance Slack channel](https://wordpress.slack.com/archives/C02KGN5K076).

### Agenda

 * Welcome
 * Contributor interest open floor
 * Defining areas of focus

## **Defining focus areas and working groups**

As we have seen from the initial post comments, there are no shortage of areas in
need of performance enhancements in WordPress (which is a good problem to have in
a way). With that in mind, we will initially aim to keep the scope limited by defining
the most impactful area of focus and create working groups if need be. Defined focus
areas will be the main points of discussion during weekly chats.

An agenda item for the first meetings will be to define the initial focus areas 
for the team. Every contributor will be asked to self-assign themselves to one or
two areas, to indicate what they would like to work on. [The performance projects are assembled in a spreadsheet](https://docs.google.com/spreadsheets/d/16N5oZ9wE6AkiqMz7b_707eh24vvpjMwsEG67XFAbxy8/edit)
which can already be reviewed ahead of the kickoff meeting.

This is not exclusive of any performance contributions.

## **Props**

Thanks to the following for their involvement in authoring, proofreading and providing
feedback on this post.

[@francina](https://profiles.wordpress.org/francina/), [@flixos90](https://profiles.wordpress.org/flixos90/),
[@aristath](https://profiles.wordpress.org/aristath/), [@tweetythierry](https://profiles.wordpress.org/tweetythierry/),
[@j](https://profiles.wordpress.org/francina/)[ustinahinon](https://profiles.wordpress.org/justinahinon/)(
in no particular order)

[#agenda](https://make.wordpress.org/core/tag/agenda/), [#meeting](https://make.wordpress.org/core/tag/meeting/),
[#performance](https://make.wordpress.org/core/tag/performance/), [#performance-chat](https://make.wordpress.org/core/tag/performance-chat/)

 [  ](https://profiles.wordpress.org/annezazu/) [annezazu](https://profiles.wordpress.org/annezazu/)
3:08 pm _on_ October 28, 2021     
Tags: [5.9 ( 104 )](https://make.wordpress.org/core/tag/5-9/),
[fse-answers ( 2 )](https://make.wordpress.org/core/tag/fse-answers/), [fse-outreach-program ( 5 )](https://make.wordpress.org/core/tag/fse-outreach-program/)

# 󠀁[FSE Program: Answers from Round Three of Questions](https://make.wordpress.org/core/2021/10/28/fse-program-answers-from-round-three-of-questions/)󠁿

This post is part of a wider series that provides [answers to questions gathered through the FSE Outreach Program](https://make.wordpress.org/test/tag/fse-answers/).
This round of questions [was started on October 13th](https://make.wordpress.org/core/2021/10/13/submit-full-site-editing-questions-by-oct-27th/)
and ended on October 27th. Thank you to everyone who submitted a question so our
knowledge can grow together! Stay tuned for future rounds and [join the FSE Outreach Program](https://make.wordpress.org/test/handbook/full-site-editing-outreach-experiment/)
if you’re keen to both learn more about these features and help shape how they evolve.

 [Continue reading →](https://make.wordpress.org/core/2021/10/28/fse-program-answers-from-round-three-of-questions/#more-91940)

[#5-9](https://make.wordpress.org/core/tag/5-9/), [#fse-answers](https://make.wordpress.org/core/tag/fse-answers/),
[#fse-outreach-program](https://make.wordpress.org/core/tag/fse-outreach-program/)

 [  ](https://profiles.wordpress.org/audrasjb/) [Jb Audras](https://profiles.wordpress.org/audrasjb/)
10:00 pm _on_ October 27, 2021     
Tags: [5.8.x ( 13 )](https://make.wordpress.org/core/tag/5-8-x/),
[5.9 ( 104 )](https://make.wordpress.org/core/tag/5-9/), [dev chat ( 920 )](https://make.wordpress.org/core/tag/dev-chat/),
[summary ( 975 )](https://make.wordpress.org/core/tag/summary/)   

# 󠀁[Dev chat summary – October 27, 2021](https://make.wordpress.org/core/2021/10/27/dev-chat-summary-october-27-2021/)󠁿

[@audrasjb](https://profiles.wordpress.org/audrasjb/) led the chat on [this agenda](https://make.wordpress.org/core/2021/10/27/dev-chat-agenda-for-october-27-2021/).
You can also read the [Slack logs](https://wordpress.slack.com/archives/C02RQBWTW/p1635364813263900).

## Highlighted blogblog (versus network, site) posts

Bringing to your attention some interesting reads and some call for feedback and/
or volunteers:

 * [Nominations for Core Team Reps 2022](https://make.wordpress.org/core/2021/10/26/nominations-for-core-team-reps-2022/)

After 1.5 year, [@francina](https://profiles.wordpress.org/francina/) and [@audrasjb](https://profiles.wordpress.org/audrasjb/)
decided to pass the CoreCore Core is the set of software required to run WordPress.
The Core Development Team builds WordPress. Team Representative baton for 2022. 
Everyone can nominate the people they think are best suited to be our new Core team
reps, just comment in the above post.

 * [Check out & contribute to the updated Gutenberg Examples](https://make.wordpress.org/core/2021/10/20/check-out-contribute-to-the-updated-gutenberg-examples/)
 * [A Week in Core – October 25, 2021](https://make.wordpress.org/core/2021/10/25/a-week-in-core-october-25-2021/)

## Upcoming releases updates

### Next minor releaseMinor Release A set of releases or versions having the same minor version number may be collectively referred to as .x , for example version 5.2.x to refer to versions 5.2, 5.2.1, 5.2.3, and all other versions in the 5.2 (five dot two) branch of that software. Minor Releases often make improvements to existing features and functionality.: WP 5.8.2

[@desrosj](https://profiles.wordpress.org/desrosj/) confirmed WP 5.8.2 Release Candidaterelease
candidate One of the final stages in the version release cycle, this version signals
the potential to be a final release to the public. Also see [alpha (beta)](https://make.wordpress.org/core/2021/page/10/?output_format=md#alpha-beta).
is still [planned for Tuesday November 2](https://make.wordpress.org/core/2021/10/04/wordpress-5-8-2-deferred/),
with a few tickets including [#54207](https://core.trac.wordpress.org/ticket/54207)
which has been quite a pain for many, so fixing it sooner rather than later is best.

### Next major releasemajor release A release, identified by the first two numbers (3.6), which is the focus of a full release cycle and feature development. WordPress uses decimaling count for major release versions, so 2.8, 2.9, 3.0, and 3.1 are sequential and comparable in scope.: WP 5.9

First the [Release Squad for WordPress 5.9 was published](https://make.wordpress.org/core/2021/10/27/wordpress-5-9-release-squad/).
If anyone is interested in volunteering for one of the roles needing more help, 
please comment on that post. If anyone has any questions about the release squad
roles, [some answers are available in the Core team handbook](https://make.wordpress.org/core/handbook/about/release-cycle/wordpress-release-team-and-focus-leads/).

[@audrasjb](https://profiles.wordpress.org/audrasjb/) and [@chaion07](https://profiles.wordpress.org/chaion07/)
published the [5.9 Bug scrub schedule](https://make.wordpress.org/core/2021/10/18/bug-scrub-schedule-for-5-9/).

Next scrubs are scheduled on [Thursday October 28, 2021 at 20:00 UTC](https://www.timeanddate.com/worldclock/fixedtime.html?iso=20211028T2000)
and on [Friday October 29, 2021 at 06:00 UTC](https://www.timeanddate.com/worldclock/fixedtime.html?iso=20211029T0600).

Please note that anyone can run a bugbug A bug is an error or unexpected result.
Performance improvements, code optimization, and are considered enhancements, not
defects. After feature freeze, only bugs are dealt with, with regressions (adverse
changes from the previous version) being the highest priority. scrub. Checkout the
[Leading Bug Scrubs section in the Core handbook](https://make.wordpress.org/core/handbook/tutorials/leading-bug-scrubs/).

Also, a [WordPress 5.9 Editor Update (26 October)](https://make.wordpress.org/core/2021/10/25/wordpress-5-9-editor-update-26-october/)
was published.

## Component maintainers updates

### Build/Test Tools – 󠀁[@sergeybiryukov](https://profiles.wordpress.org/sergeybiryukov/)󠁿

The SlackSlack Slack is a Collaborative Group Chat Platform [https://slack.com/](https://slack.com/).
The WordPress community has its own Slack Channel at [https://make.wordpress.org/chat/](https://make.wordpress.org/chat/)
Notifications workflow was modified to be a reusable one. See changeset [[51921]](https://core.trac.wordpress.org/changeset/51921)
and some follow-up changes on ticketticket Created for both bug reports and feature
development on the bug tracker. [#53363](https://core.trac.wordpress.org/ticket/53363).

### General – 󠀁[@sergeybiryukov](https://profiles.wordpress.org/sergeybiryukov/)󠁿

Work has continued on various coding standards fixes in core. See tickets [#53359](https://core.trac.wordpress.org/ticket/53359),
[#54177](https://core.trac.wordpress.org/ticket/54177), [#54279](https://core.trac.wordpress.org/ticket/54279),
[#54295](https://core.trac.wordpress.org/ticket/54295) for more details.

### Help/About – 󠀁[@marybaum](https://profiles.wordpress.org/marybaum/)󠁿

Two tickets are getting closer to commit but not completely there. Copy reviews 
are done, the component maintainers have new patches. Should be able to commit both
by next Monday’s component scrub.

## Open Floor

[@craigfrancis](https://profiles.wordpress.org/craigfrancis/) wanted to discuss 
[#54042](https://core.trac.wordpress.org/ticket/54042), as I’d like to make the `
IN()` operator easier/safer, and likewise with quoting table/field identifiers. 
Given the amount of information shared in the PR, [@audrasjb](https://profiles.wordpress.org/audrasjb/)
moved this ticket to 5.9, but it will need a deep review as soon as possible to 
be committed ahead of the feature freeze which is the target for such enhancements.

[@marybaum](https://profiles.wordpress.org/marybaum/) asked if there is still feature
freeze a week or so ahead of betaBeta A pre-release of software that is given out
to a large group of users to trial under real conditions. Beta versions have gone
through alpha testing in-house and are generally fairly close in look, feel and 
function to the final product; however, design changes often occur as part of the
process. 1. Feature freeze is scheduled on November 9th, and Beta 1 is on the 16th.

[@afragen](https://profiles.wordpress.org/afragen/) shared [a message](https://wordpress.slack.com/archives/CULBN711P/p1633905633375800)
of [@peterwilsoncc](https://profiles.wordpress.org/peterwilsoncc/) from the `#core-
auto-updates` Slack channel. The Upgrade/Install team will meet in this channel 
on next Tuesday to discuss [a proposal](https://docs.google.com/document/d/1Y5URlKW9GE89u7R3-z5o-0i5-9OVZd9HFaILhUE7mLA/edit?usp=sharing)
concerning the 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/](https://wordpress.org/plugins/)
or can be cost-based plugin from a third-party. Dependencies feature.

[#5-8-x](https://make.wordpress.org/core/tag/5-8-x/), [#5-9](https://make.wordpress.org/core/tag/5-9/),
[#dev-chat](https://make.wordpress.org/core/tag/dev-chat/), [#summary](https://make.wordpress.org/core/tag/summary/)

 [  ](https://profiles.wordpress.org/danfarrow/) [Dan Farrow](https://profiles.wordpress.org/danfarrow/)
9:20 pm _on_ October 27, 2021     
Tags: [core-css ( 191 )](https://make.wordpress.org/core/tag/core-css/),
[summary ( 975 )](https://make.wordpress.org/core/tag/summary/)   

# 󠀁[CSS Chat Summary: 21 October 2021](https://make.wordpress.org/core/2021/10/27/css-chat-summary-21-october-2021/)󠁿

[The meeting took place here on Slack](https://wordpress.slack.com/archives/CQ7V4966Q/p1634851016003200).
[@dryanpress](https://profiles.wordpress.org/dryanpress/) facilitated and [@danfarrow](https://profiles.wordpress.org/danfarrow/)
wrote up these notes.

The meeting was short but props are due to [@dryanpress](https://profiles.wordpress.org/dryanpress/)
for finding a way to run it despite having no internet!

## CSSCSS Cascading Style Sheets. Custom Properties (󠀁[#49930](https://core.trac.wordpress.org/ticket/49930)󠁿)

 * [@dryanpress](https://profiles.wordpress.org/dryanpress/) reported great progress
   on `customize-control.css`
 * [@ryelle](https://profiles.wordpress.org/ryelle/) has merged `site-health.css`
   and is reviewing other PRs
 * [@ryelle](https://profiles.wordpress.org/ryelle/) has updated the `css-audits`
   project with an [audit for opacity values](https://github.com/WordPress/css-audit/pull/57)
   and an [audit to find unused custom properties](https://github.com/WordPress/css-audit/pull/58)
 * [@ryelle](https://profiles.wordpress.org/ryelle/) asked for help testing [this PR for `jquery-ui-dialog.css`](https://github.com/ryelle/wordpress-develop/pull/20),
   or some instruction on how to trigger the dialog that the CSS applies to
 * [@ryelle](https://profiles.wordpress.org/ryelle/) encouraged anyone who couldn’t
   make the meeting to post some progress notes. She also noted that we’ll need 
   to decide in the next couple of weeks if we’re pushing for 5.9 or not

Thanks everybody!

[#core-css](https://make.wordpress.org/core/tag/core-css/), [#summary](https://make.wordpress.org/core/tag/summary/)

 [  ](https://profiles.wordpress.org/desrosj/) [Jonathan Desrosiers](https://profiles.wordpress.org/desrosj/)
6:36 pm _on_ October 27, 2021     
Tags: [5.9 ( 104 )](https://make.wordpress.org/core/tag/5-9/)

# 󠀁[WordPress 5.9 Release Squad](https://make.wordpress.org/core/2021/10/27/wordpress-5-9-release-squad/)󠁿

_Update on 5.9, the schedule and more on the [5.9 Development cycle page](https://make.wordpress.org/core/5-9/)._

[WordPress 5.9](https://make.wordpress.org/core/5-9/) is full steam ahead towards
the December 14, 2021 release date. With the [Go/No Go deadline behind us](https://make.wordpress.org/core/2021/10/15/wordpress-5-9-feature-go-no-go-october-14-2021/),
the necessary roles required for this version’s release squad have become more clear,
and the team is starting to take shape.

Below is the list of roles the squad roles for the 5.9 release with confirmed contributors
listed. Any role listed with a hand raised emoji (✋) still need contributors and
volunteers.

 * **Release LeadRelease Lead The community member ultimately responsible for the
   Release.:** [@matt](https://profiles.wordpress.org/matt/)
 * **Release Coordinators:** ✋
 * **Triagetriage The act of evaluating and sorting bug reports, in order to decide
   priority, severity, and other factors. Leads:** [@chaion07](https://profiles.wordpress.org/chaion07/),
   [@audrasjb](https://profiles.wordpress.org/audrasjb/).
 * **Editor Tech:** [@noisysocks](https://profiles.wordpress.org/noisysocks/), [@mamaduka](https://profiles.wordpress.org/mamaduka/).
 * **Editor Design:**✋
 * **CoreCore Core is the set of software required to run WordPress. The Core Development
   Team builds WordPress. Tech:** [@hellofromtonya](https://profiles.wordpress.org/hellofromtonya/).
   ✋
 * **Theme Leads:** [@kjellr](https://profiles.wordpress.org/kjellr/), [@jffng](https://profiles.wordpress.org/jffng/).
 * **Technical Writer:** [@psykro](https://profiles.wordpress.org/psykro/). ✋
 * **Documentation Leads:** [@mkaz](https://profiles.wordpress.org/mkaz/), [@milana_cap](https://profiles.wordpress.org/milana_cap/).
 * **Marketing & Communications:** [@chanthaboune](https://profiles.wordpress.org/chanthaboune/).
   ✋
 * **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) Lead:** ✋
 * **Test Leads:** [@boniu91](https://profiles.wordpress.org/boniu91/), [@annezazu](https://profiles.wordpress.org/annezazu/).

## Some Notes

 * The release squad list on the [5.9 development cycle page](https://make.wordpress.org/core/5-9/)
   has also been updated. As additional contributors are confirmed for the positions
   needing volunteers, they will only be added to the development cycle page (not
   accompanied by an additional post here).
 * [@noisysocks](https://profiles.wordpress.org/noisysocks/) is coordinating a group
   of feature-specific contributors, and will be the main information person for
   all editor related features.
 * All WordPress 5.9 related coordination will happen inside of the [#5-9-release-leads](https://wordpress.slack.com/archives/C02JUSF02TT)
   SlackSlack Slack is a Collaborative Group Chat Platform [https://slack.com/](https://slack.com/).
   The WordPress community has its own Slack Channel at [https://make.wordpress.org/chat/](https://make.wordpress.org/chat/)
   room. This room is a public viewing area for transparency (and knowledge sharing!),
   but is a workspace for that release squad so please limit posting as much as 
   possible for those not on the release squad.

_Props [@chanthaboune](https://profiles.wordpress.org/chanthaboune/) and _[@jeffpaul](https://profiles.wordpress.org/jeffpaul/)_
for peer review._

[#5-9](https://make.wordpress.org/core/tag/5-9/)

 [  ](https://profiles.wordpress.org/francina/) [Francesca Marano](https://profiles.wordpress.org/francina/)
12:41 pm _on_ October 27, 2021     
Tags: [5.9 ( 104 )](https://make.wordpress.org/core/tag/5-9/),
[agenda ( 1,141 )](https://make.wordpress.org/core/tag/agenda/), [core ( 743 )](https://make.wordpress.org/core/tag/core/),
[dev chat ( 920 )](https://make.wordpress.org/core/tag/dev-chat/)   

# 󠀁[Dev Chat Agenda for October 27, 2021](https://make.wordpress.org/core/2021/10/27/dev-chat-agenda-for-october-27-2021/)󠁿

Here is the agenda for this week’s developer meeting to occur on [October 27 2021, at 20:00 UTC](https://www.timeanddate.com/worldclock/fixedtime.html?iso=20211027T2000).

**Please note that depending on your timezone, the time may have changed with the
end of daylight saving time.**

## Blogblog (versus network, site) Post Highlights and announcements

Bringing to your attention some interesting reads and some call for feedback and/
or volunteers:

 * [Nominations for Core Team Reps 2022](https://make.wordpress.org/core/2021/10/26/nominations-for-core-team-reps-2022/)
 * [A Week in Core – October 25, 2021](https://make.wordpress.org/core/2021/10/25/a-week-in-core-october-25-2021/)
 * [Check out & contribute to the updated Gutenberg Examples](https://make.wordpress.org/core/2021/10/20/check-out-contribute-to-the-updated-gutenberg-examples/)

## Next releases status update

 * [WordPress 5.9 Release Squad](https://make.wordpress.org/core/2021/10/27/wordpress-5-9-release-squad/)
 * [WordPress 5.9 Editor Update – 26 October](https://make.wordpress.org/core/2021/10/25/wordpress-5-9-editor-update-26-october/)
 * Reminder! The [Bug Scrub Schedule for 5.9](https://make.wordpress.org/core/2021/10/18/bug-scrub-schedule-for-5-9/)
   is here, come join the fun!

Have you been working on 5.9 related issues? Let everyone know!

## Components check-in and status updates

 * Check-in with each component for status updates.
 * Poll for components that need assistance.

## Open Floor

Do you have something to propose for the agenda, or a specific item relevant to 
the usual agenda items above?

Please leave a comment, and say whether or not you’ll be in the chat, so the group
can either give you the floor or bring up your topic for you accordingly.

This meeting happens in the [#core](https://wordpress.slack.com/messages/C02RQBWTW)
channel. To join the meeting, you’ll need an account on the [Making WordPress Slack](https://make.wordpress.org/chat/).

[#5-9](https://make.wordpress.org/core/tag/5-9/), [#agenda](https://make.wordpress.org/core/tag/agenda/),
[#core](https://make.wordpress.org/core/tag/core/), [#dev-chat](https://make.wordpress.org/core/tag/dev-chat/)

 [  ](https://profiles.wordpress.org/francina/) [Francesca Marano](https://profiles.wordpress.org/francina/)
11:58 am _on_ October 26, 2021     
Tags: [team reps ( 21 )](https://make.wordpress.org/core/tag/team-reps/)

# 󠀁[Nominations for Core Team Reps 2022](https://make.wordpress.org/core/2021/10/26/nominations-for-core-team-reps-2022/)󠁿

This post kicks off the election process with nominations to replace [@audrasjb](https://profiles.wordpress.org/audrasjb/)
and [@francina](https://profiles.wordpress.org/francina/) as CoreCore Core is the
set of software required to run WordPress. The Core Development Team builds WordPress.
team reps. We have been in the role for over a year now, so 2022 marks the time 
to get new folks!

## The Role

In the WordPress open sourceOpen Source Open Source denotes software for which the
original source code is made freely available and may be redistributed and modified.
Open Source **must be** delivered via a licensing model, see GPL. project, each 
team has on average one or two representatives, abbreviated as _reps_. 

It is not called “team lead” for a reason. It’s an **administrative role**. While
people elected as team reps will generally come from the pool of folks that people
think of as experienced leaders, the team repTeam Rep A Team Rep is a person who
represents the Make WordPress team to the rest of the project, make sure issues 
are raised and addressed as needed, and coordinates cross-team efforts. role is 
designed to change hands regularly.

This role has a time commitment attached to it. Not a huge amount, it’s _at least_
two hours a week.

Here are the main tasks:

 * Post the devchat agenda, host the chats, and summarizing them. [More details on coordinating devchat are available in the Core handbook.](https://make.wordpress.org/core/handbook/tutorials/coordinating-devchat/)
 * Writing regular Core team recaps and posting it in the updates site ([example](https://make.wordpress.org/updates/2021/10/11/core-team-update-september-2021/))
 * Write the [Week in Review](https://make.wordpress.org/core/tag/week-in-core/)
   post
 * Keeping an eye on the moving parts of the team to be able to report for quarterly
   updates ([example](https://make.wordpress.org/updates/2018/04/24/quarterly-updates-q1-2018/))

[Full details on the Team Rep role is on the Team Update site.](https://make.wordpress.org/updates/team-reps/)

## How the election works

Please **nominate** people in the comments of this post. Self-nominations are welcome.
The deadline is **10 November 2021**.

After that, a poll will be opened for **voting**. It will stay open for about two
weeks. The new reps will start their role on January 1st, 2022.

If you want to nominate someone in private, please reach out to[ ](https://profiles.wordpress.org/francina/)
[@francina](https://profiles.wordpress.org/francina/) or [@audrasjb](https://profiles.wordpress.org/audrasjb/)
on SlackSlack Slack is a Collaborative Group Chat Platform [https://slack.com/](https://slack.com/).
The WordPress community has its own Slack Channel at [https://make.wordpress.org/chat/](https://make.wordpress.org/chat/).

_Disclaimer: if you get nominated, please don’t feel like you have to say yes. The
polls will only include the names of the people that are responding positively to
a nomination.  So feel free to reply with a “Thank you, but no thank you”._

If you have any questions, please feel free to ask in the comments, we will be happy
to reply.

_Thanks to [@audrasjb](https://profiles.wordpress.org/audrasjb/) for the peer review._

[#team-reps](https://make.wordpress.org/core/tag/team-reps/)

 [  ](https://profiles.wordpress.org/noisysocks/) [Robert Anderson](https://profiles.wordpress.org/noisysocks/)
11:54 pm _on_ October 25, 2021     
Tags: [5.9 ( 104 )](https://make.wordpress.org/core/tag/5-9/),
[core-editor ( 756 )](https://make.wordpress.org/core/tag/core-editor/)   

# 󠀁[WordPress 5.9 Editor Update – 26 October](https://make.wordpress.org/core/2021/10/25/wordpress-5-9-editor-update-26-october/)󠁿

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/](https://wordpress.org/gutenberg/)
11.9 (the last 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/](https://wordpress.org/plugins/)
or can be cost-based plugin from a third-party. release which will make its way 
into WP 5.9) will be cut on **_November 3_ which is in 9 days**!

The merge to CoreCore Core is the set of software required to run WordPress. The
Core Development Team builds WordPress. for this release will be tricky. I’m seeking
volunteers to assist with the 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.. Let me know if you can help.

[@mamaduka](https://profiles.wordpress.org/mamaduka/) has ran [an audit of our `__experimental` APIs](https://github.com/WordPress/gutenberg/issues/35920).
Please give it a look over.

I asked around to identity what the “must have” enhancements are for this release
and have added them to the [WordPress 5.9 Must-Haves project board](https://github.com/WordPress/gutenberg/projects/62).**
Please regularly check in with this project board.** There are a bunch of bugs in
the board, too, and you should also pay attention to them, but they’re slightly 
less important because bugs can be addressed after the feature freeze.

Here’s a overview of the “must have” enhancements:

 * Template editor (owner: [@kevin940726](https://profiles.wordpress.org/kevin940726/))
    - [Series of bugs and shortcomings faced during 5.9 go/no go prep #35662](https://github.com/WordPress/gutenberg/issues/35662)(**
      unassigned!**)
    - [Site Editing block placeholders #35501](https://github.com/WordPress/gutenberg/issues/35501)(**
      unassigned!**)
    - [Site Editor: not possible to change site icon #29126](https://github.com/WordPress/gutenberg/issues/29126)(**
      unassigned!**)
    - [FSE: Finalizing the name and menu item placement #29630](https://github.com/WordPress/gutenberg/issues/29630)(
      [@kellychoffman](https://profiles.wordpress.org/kellychoffman/) [@kevin940726](https://profiles.wordpress.org/kevin940726/)
 *  - [Improving multi-entity saving UI method. #31456](https://github.com/WordPress/gutenberg/issues/31456)(
      [@bernhard-reiter](https://profiles.wordpress.org/bernhard-reiter/))
    - [Template part editor: adjust height to contents #35512](https://github.com/WordPress/gutenberg/issues/35512)(
      [@kevin940726](https://profiles.wordpress.org/kevin940726/))
    - [Ensure the Customizer is available for plugins or theme options when using a FSE theme #35874](https://github.com/WordPress/gutenberg/issues/35874)(
      [@clorith](https://profiles.wordpress.org/clorith/))
 * Styling (owner: [@youknowriad](https://profiles.wordpress.org/youknowriad/))
    - [Global Styles: Form elements #29167](https://github.com/WordPress/gutenberg/issues/29167)(**
      unassigned!**)
    - [Add Button Hover Color options on Button Block #4543](https://github.com/WordPress/gutenberg/issues/4543)(**
      unassigned!**)
 *  - [Start a Global Styles endpoint and use it in the site editor #35801](https://github.com/WordPress/gutenberg/pull/35801)(
      [@youknowriad](https://profiles.wordpress.org/youknowriad/))
    - [Typography block support: add typography support and defaults #34064](https://github.com/WordPress/gutenberg/pull/34064)(
      [@ramonopoly](https://profiles.wordpress.org/ramonopoly/))
 * Patterns (owner: [@ntsekouras](https://profiles.wordpress.org/ntsekouras/))
 * Navigation 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. (owner: [@talldanwp](https://profiles.wordpress.org/talldanwp/))
    - [Navigation: Add an API to retrieve content-only inner blocks #30674](https://github.com/WordPress/gutenberg/issues/30674)(**
      unassigned!**)
    - [Migrate buttons & navigation to flex layout #34872](https://github.com/WordPress/gutenberg/issues/34872)(
      [@isabel_brison](https://profiles.wordpress.org/isabel_brison/))
    - [Blocks that link: Provide a split label/URL control and placeholder state #30170](https://github.com/WordPress/gutenberg/issues/30170)(
      [@get_dave](https://profiles.wordpress.org/get_dave/))
    - [Navigation Block: save data to a custom post type #34612](https://github.com/WordPress/gutenberg/issues/34612)(
      [@talldanwp](https://profiles.wordpress.org/talldanwp/))
    - [Navigation block – preserve navigation block data on theme switching #35750](https://github.com/WordPress/gutenberg/issues/35750)(
      [@get_dave](https://profiles.wordpress.org/get_dave/))
 * Twenty Twenty-two (owner: [@kjellr](https://profiles.wordpress.org/kjellr/))
    - [[Block Themes] Consider an FSE-compatible approach to starter content #35680](https://github.com/WordPress/gutenberg/issues/35680)(**
      unassigned!**)
    - [Discussion: Including images in FSE HTML templates #31815](https://github.com/WordPress/gutenberg/issues/31815)(**
      unassigned!**)
    - [Flex Layout: Allow control over flex-wrap #35525](https://github.com/WordPress/gutenberg/issues/35525)(**
      unassigned!**)
    - [i18n: Add pattern block #33217](https://github.com/WordPress/gutenberg/pull/33217)(
      [@scruffian](https://profiles.wordpress.org/scruffian/))
    - [[Post Comments Block] Displays “Comments are closed” messages on pages, even when comments have never been open #35732](https://github.com/WordPress/gutenberg/issues/35732)(
      [@jffng](https://profiles.wordpress.org/jffng/))

🤙

[#core-editor](https://make.wordpress.org/core/tag/core-editor/) [#5-9](https://make.wordpress.org/core/tag/5-9/)

 [  ](https://profiles.wordpress.org/audrasjb/) [Jb Audras](https://profiles.wordpress.org/audrasjb/)
10:10 pm _on_ October 25, 2021     
Tags: [5.8.2 ( 16 )](https://make.wordpress.org/core/tag/5-8-2/),
[5.9 ( 104 )](https://make.wordpress.org/core/tag/5-9/), [core ( 743 )](https://make.wordpress.org/core/tag/core/),
[week in core ( 245 )](https://make.wordpress.org/core/tag/week-in-core/)   

# 󠀁[A Week in Core – October 25, 2021](https://make.wordpress.org/core/2021/10/25/a-week-in-core-october-25-2021/)󠁿

Welcome back to a new issue of _Week in CoreCore Core is the set of software required
to run WordPress. The Core Development Team builds WordPress._. Let’s take a look
at what changed on TracTrac An open source project by Edgewall Software that serves
as a bug tracker and project management tool for WordPress. between October 18 and
October 25, 2021.

 * 14 commits
 * 9 contributors
 * 37 tickets created
 * 5 tickets reopened
 * 31 tickets closed

The Core team is currently working on the next point (5.8.2) and major (5.9) releases
🛠

Worth noting that [each feature slated to the 5.9 milestone has been validated](https://make.wordpress.org/core/2021/10/15/wordpress-5-9-feature-go-no-go-october-14-2021/),
that the [Twenty Twenty-Two Theme development is on the way](https://make.wordpress.org/core/2021/10/11/twenty-twenty-two-chat-summary-11-oct-2021/),
and the [5.9 bug scrub schedule has been published](https://make.wordpress.org/core/2021/10/18/bug-scrub-schedule-for-5-9/)
🚀

Ticketticket Created for both bug reports and feature development on the bug tracker.
numbers are based on the [Trac timeline for the period above](https://core.trac.wordpress.org/timeline?from=10%2F25%2F2021&daysback=7&authors=&ticket=on&changeset=on&repo-=on&repo-design=on&repo-tests=on&sfp_email=&sfph_mail=&update=Update).
The following is a summary of commits, organized by component and/or focus.

We can note that there has been a decrease in the number of commits. Hopefully this
will increase again quickly.

## Code changes

### Build/Test Tools

 * Use the correct workflow name in notifications on `workflow_run` – [#53363](https://core.trac.wordpress.org/ticket/53363)
 * Restore SlackSlack Slack is a Collaborative Group Chat Platform [https://slack.com/](https://slack.com/).
   The WordPress community has its own Slack Channel at [https://make.wordpress.org/chat/](https://make.wordpress.org/chat/)
   notifications for older branches – [#53363](https://core.trac.wordpress.org/ticket/53363)
 * Add `@ticket` references for `page_on_front` canonical tests – [#53363](https://core.trac.wordpress.org/ticket/53363)
 * Adjustments as a follow up to [51921] – [#53363](https://core.trac.wordpress.org/ticket/53363)
 * Modify the Slack notifications workflow to be a reusable one – [#53363](https://core.trac.wordpress.org/ticket/53363)
 * Fix syntax for passing secrets to a called workflow – [#53363](https://core.trac.wordpress.org/ticket/53363)
 * Pass required secrets to the Slack notifications workflow – [#53363](https://core.trac.wordpress.org/ticket/53363)

### Coding Standards

 * Rename `$theHeaders` variable to `$processed_headers` in `WP_Http_Curl::request()`–
   [#53359](https://core.trac.wordpress.org/ticket/53359)
 * Rename the `$arrHeaders` variable to `$processed_headers` in `WP_Http_Streams::
   request()` – [#53359](https://core.trac.wordpress.org/ticket/53359)
 * Escape `id` attributes in `WP_Customize_Control::render_content()` and `::print_template()`–
   [#54295](https://core.trac.wordpress.org/ticket/54295)
 * Improve escaping in `wp_login_form()` – [#54279](https://core.trac.wordpress.org/ticket/54279)
 * Improve escaping in `wp-admin/theme-install.php` – [#54277](https://core.trac.wordpress.org/ticket/54277)

### Docs

 * Use sign-up & signup consistently in `wp-signup.php` – [#54041](https://core.trac.wordpress.org/ticket/54041),
   [#53399](https://core.trac.wordpress.org/ticket/53399)

### Help/About

 * Don’t output empty tags on Credits screen – [#54275](https://core.trac.wordpress.org/ticket/54275)

## Props

**Thanks to the 9 people who contributed to WordPress Core on Trac last week:** 
[@audrasjb](https://profiles.wordpress.org/audrasjb/) (3), [@sabbirshouvo](https://profiles.wordpress.org/sabbirshouvo/)(
3), [@mukesh27](https://profiles.wordpress.org/mukesh27/) (3), [@jeffpaul](https://profiles.wordpress.org/jeffpaul/)(
1), [@henry](https://profiles.wordpress.org/henry/).wright (1), [@SergeyBiryukov](https://profiles.wordpress.org/sergeybiryukov/)(
1), [@sabernhardt](https://profiles.wordpress.org/sabernhardt/) (1), [@afragen](https://profiles.wordpress.org/afragen/)(
1), and [@sayedulsayem](https://profiles.wordpress.org/sayedulsayem/) (1).

**Core committers:** [@sergeybiryukov](https://profiles.wordpress.org/sergeybiryukov/)(
7), [@desrosj](https://profiles.wordpress.org/desrosj/) (6), and [@peterwilsoncc](https://profiles.wordpress.org/peterwilsoncc/)(
1).

[#5-8-2](https://make.wordpress.org/core/tag/5-8-2/), [#5-9](https://make.wordpress.org/core/tag/5-9/),
[#core](https://make.wordpress.org/core/tag/core/), [#week-in-core](https://make.wordpress.org/core/tag/week-in-core/)

# Post navigation

[← Older posts](https://make.wordpress.org/core/2021/page/11/?output_format=md)

[Newer posts →](https://make.wordpress.org/core/2021/page/9/?output_format=md)