Skip to content

Editor: Store the finalize response as the attachment record - #81947

Merged
adamsilverstein merged 12 commits into
trunkfrom
fix/81844-finalize-response-record
Sep 9, 2026
Merged

adamsilverstein merged 12 commits into
trunkfrom
fix/81844-finalize-response-record

Conversation

@adamsilverstein

@adamsilverstein adamsilverstein commented Aug 21, 2026 •

Copy link
Copy Markdown
Member

Test this PR in WordPress Playground

I asked Claude to take the problem from the other end, here is what came back:

Fixes #81844

What?

The editor stores the attachment record the finalize endpoint returns, instead of refetching the attachment once a client-side upload finishes.

Why?

A client-side upload is three steps: create the attachment, sideload each generated sub-size, then finalize. finalize is the commit point - it writes the sub-size metadata collected from the sideloads and only then is media_details.sizes populated. Anything that reads the attachment before that gets "sizes": {}, which is exactly the response body in the issue.

That last request already answers with the finished record. Checked against a real install rather than assumed:

attachment id: 349
create response sizes:      {}
mid-upload GET(view) sizes: {}
FINALIZE response sizes:    {"thumbnail":{...,"source_url":"...-10x10.png"},"full":{...}}
post-finalize GET(view):    ["thumbnail","full"]

The finalize response carries every size, each with the source_url the Resolution control needs, and matches what a later read returns. The editor threw it away: mediaFinalize handed it to the upload queue for the block URL, and mediaUploadOnSuccess then called invalidateResolution so core-data would go and fetch the same data a second time.

That second fetch is where it breaks. It asks for the same URL as the read issued mid-upload, so:

  • a host that caches REST responses keyed on the request URL - even authenticated ones WordPress marks no-cache - answers it with the pre-finalize record, and
  • an overloaded server can deliver the two responses out of order.

Either way core-data keeps a record with no sizes, nothing invalidates it afterwards, and the Image block's Resolution control never appears. Not making the request at all removes both failure modes, and saves a round trip on every upload.

How?

mediaFinalize receives the finalize response into core-data under the two queries the editor resolves attachments with - { context: 'view' } and no query at all - the same two mediaUploadOnSuccess used to invalidate. The record is passed on its own rather than in an array, so core-data treats it as a single-item receive and list queries (the media library, the inserter's Media tab) are left alone.

mediaUploadOnSuccess then skips those attachments and still invalidates the rest. Uploads the server processed on its own never go through finalize - videos, audio, PDFs, images too large for wasm-vips - so their records refresh exactly as before.

Two things worth flagging:

  • The finalize response is prepared in the edit context. For an attachment that is a superset of view: every field view exposes is present, plus a few edit-only ones. The key listing in the probe above confirms it.
  • A PHP test now asserts the finalize response contains the generated sub-sizes and matches what a refetch returns, since the client depends on that.

How this sits with the other three PRs

These were checked by running each PR's e2e test against this branch:

Test From Result here
Resolution control survives a URL-keyed cache #81938 passes
Resolution control survives a stale record response delivered late #81846 fails
Attachment list survives a stale list response delivered late #81886 fails

So this is not a replacement for #81846 or #81886, and the three overlap less than they look:

Testing Instructions

All tests were verified to fail without the change and pass with it.

E2E - simulates a full-URL-keyed cache in front of wp-json and uploads through the real client-side pipeline:

npm run wp-env-test start
npm run test:e2e -- test/e2e/specs/editor/various/client-side-media-processing.spec.js --project=chromium -g "URL-keyed cache stands in front"

Unit:

npm run test:unit -- packages/editor/src/utils/media-upload packages/editor/src/utils/media-finalize

PHP - the finalize response contract the client now relies on:

npm run test:unit:php -- --filter test_finalize_response_contains_generated_sub_sizes

Manual: insert an Image block, upload a JPEG, and watch the Network tab filtered on /wp/v2/media. There is no attachment GET after finalize any more, and the Resolution control is in the block's Settings panel.

AI Use

Code and description both written with 🤖 Claude Code. I will review and test.

A client-side upload writes the sub-size metadata in its final finalize
request, and that request already answers with the attachment as prepared
after the write - media_details.sizes included. The editor threw that
response away and invalidated the record instead, so the sizes had to be
fetched a second time.

That refetch is where the Image block loses its Resolution control. It
asks for the same URL as the read issued mid-upload, so a host cache
keyed on the request URL answers it with the pre-finalize record, and an
overloaded server can deliver the two responses out of order. Receiving
the finalize response removes the refetch, and with it both failure
modes. Uploads the server processed on its own never finalize, so those
still invalidate and refetch as before.
@github-actions

github-actions Bot commented Aug 21, 2026 •

Copy link
Copy Markdown

The following accounts have interacted with this PR and/or linked issues. I will continue to update these lists as activity occurs. You can also manually ask me to refresh this list by adding the props-bot label.

If you're merging code through a pull request on GitHub, copy and paste the following into the bottom of the merge commit message.

Co-authored-by: adamsilverstein <adamsilverstein@git.wordpress.org>
Co-authored-by: andrewserong <andrewserong@git.wordpress.org>
Co-authored-by: t-hamano <wildworks@git.wordpress.org>
Co-authored-by: gregbenz <gregbenz@git.wordpress.org>

To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook.

@github-actions github-actions Bot added the [Package] Editor /packages/editor label Aug 21, 2026
@github-actions

github-actions Bot commented Aug 21, 2026 •

Copy link
Copy Markdown

Size Change: -3.16 kB (-0.04%)

Total Size: 7.91 MB

📦 View Changed
Filename Size Change
build/modules/boot/index.min.js 58.1 kB +35 B (+0.06%)
build/scripts/block-editor/index.min.js 475 kB -1.96 kB (-0.41%)
build/scripts/block-library/index.min.js 369 kB -556 B (-0.15%)
build/scripts/blocks/index.min.js 45.5 kB +79 B (+0.17%)
build/scripts/components/index.min.js 265 kB -756 B (-0.28%)
build/scripts/core-data/index.min.js 37.3 kB -86 B (-0.23%)
build/scripts/edit-post/index.min.js 52.7 kB +44 B (+0.08%)
build/scripts/edit-site/index.min.js 380 kB -1.03 kB (-0.27%)
build/scripts/edit-widgets/index.min.js 22.6 kB +32 B (+0.14%)
build/scripts/editor/index.min.js 579 kB -1.74 kB (-0.3%)
build/scripts/format-library/index.min.js 38.9 kB -197 B (-0.5%)
build/scripts/list-reusable-blocks/index.min.js 2.52 kB -1.83 kB (-42.05%) 🎉
build/scripts/media-utils/index.min.js 198 kB -1.2 kB (-0.6%)
build/scripts/private-apis/index.min.js 1.16 kB +6 B (+0.52%)
build/scripts/reusable-blocks/index.min.js 3.27 kB +2.37 kB (+263.99%) 🆘
build/styles/block-editor/style-rtl.css 20.2 kB +129 B (+0.64%)
build/styles/block-editor/style-rtl.min.css 17.2 kB +55 B (+0.32%)
build/styles/block-editor/style.css 20.3 kB +133 B (+0.66%)
build/styles/block-editor/style.min.css 17.2 kB +55 B (+0.32%)
build/styles/edit-site/style-rtl.min.css 17.9 kB +6 B (+0.03%)
build/styles/edit-site/style.min.css 17.9 kB +5 B (+0.03%)
build/styles/editor/style-rtl.css 31.9 kB +156 B (+0.49%)
build/styles/editor/style-rtl.min.css 27.3 kB +103 B (+0.38%)
build/styles/editor/style.css 32 kB +158 B (+0.5%)
build/styles/editor/style.min.css 27.3 kB +107 B (+0.39%)
build/styles/reusable-blocks/style-rtl.css 1.21 kB +1.08 kB (+850.39%) 🆘
build/styles/reusable-blocks/style-rtl.min.css 275 B +275 B (new file) 🆕
build/styles/reusable-blocks/style.css 1.21 kB +1.08 kB (+850.39%) 🆘
build/styles/reusable-blocks/style.min.css 275 B +275 B (new file) 🆕

compressed-size-action

@t-hamano

Copy link
Copy Markdown
Contributor

@adamsilverstein, do you think we should ship this in the 7.1 minor release?

@adamsilverstein adamsilverstein added the [Feature] Client Side Media Media processing in the browser with WASM label Aug 24, 2026
@adamsilverstein

Copy link
Copy Markdown
Member Author

@adamsilverstein, do you think we should ship this in the 7.1 minor release?

Yes we should - once we confirm it fixes the issue reported by @gregbenz. We should be able to merge this to the 7.1 branch and update the SHA from there with the 7.1.1 release if that makes sense.

For these two I'm less certain we need to back port them and I'm not sure they fix the issue Greg (so far not in his testing) reported and seem both more of an edge case and less client-side media specific.

@adamsilverstein adamsilverstein self-assigned this Aug 24, 2026
@adamsilverstein adamsilverstein added the [Type] Bug An existing feature does not function as intended label Aug 24, 2026
@t-hamano t-hamano added the Backport to WP Minor Release Pull request that needs to be backported to a WordPress minor release label Aug 25, 2026
@adamsilverstein

Copy link
Copy Markdown
Member Author

Yes we should - once we confirm it fixes the issue reported by @gregbenz. We should be able to merge this to the 7.1 branch and update the SHA from there with the 7.1.1 release if that makes sense.

I confirmed with Greg that this does indeed fix #81844.

@t-hamano Do I need to do anything special to get this merged into the 7.1 branch? Is that done manually or in a separate PR?

…esponse-record

# Conflicts:
#	packages/editor/CHANGELOG.md
finalize_item() snapshots $post before it applies the
wp_generate_attachment_metadata filter, then prepares its response from
that snapshot. A filter callback is free to rewrite the attachment's post
row - an optimizer updating post_mime_type once it has converted the file
- and that rewrite is missing from the response.

This was recoverable while the editor refetched the attachment once an
upload finished. It now stores the finalize response as its copy of the
record instead, so a stale row here is what the block keeps for the rest
of the session. Re-read the post before preparing the response.
Trunk routes new test files to Vitest, so the two tests added here use
vi.mock( import() ) and the on-success test becomes a TypeScript file.
Re-reading the post row silently kept the stale row when the re-read
failed, which is the one case where the row is most wrong: a metadata
filter callback that rejected the file and deleted the attachment got a
200 built from the pre-filter row, and the editor stored it as the
record. Return the error so the upload is reported as failed instead.
receiveEntityRecords does not finish a getEntityRecord resolution, so a
first read after finalize still fetches; what the stored record removes
is the invalidation in mediaUploadOnSuccess.
@coderabbitai

coderabbitai Bot commented Sep 7, 2026 •

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. To trigger a review, include @coderabbitai review in the PR description. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Advanced

Run ID: f350a0e6-8d55-4645-a25e-5813ea237df2

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

github-actions Bot commented Sep 7, 2026 •

Copy link
Copy Markdown

🤖 PR meta 🤖

📦 Bundle size

Size Change: +79 B (0%)

Total Size: 8 MB

📦 View Changed
Filename Size Change
build/scripts/editor/index.min.js 584 kB +79 B (+0.01%)

356c5fd Run

⚡ Performance

Show the results

Client side metrics exclude the server response time.

front-end-block-theme

Metric d899bf9 trunk % Change
timeToFirstByte 41.65 ms +12.36% -7.08% 44.4 ms +3.15% -12.16% -6.19%
largestContentfulPaint 68 ms +5.88% -5.88% 68 ms +2.94% -0% 0%
lcpMinusTtfb 25.05 ms +4.59% -6.39% 23.85 ms +28.51% -5.87% 5.03%
wpBeforeTemplate 20.52 ms +14.91% -7.02% 23.22 ms +1.34% -16.88% -11.63%
wpTemplate 17.22 ms +3.95% -6.74% 17.24 ms +4.23% -3.71% -0.12%
wpTotal 38.32 ms +10.62% -6.52% 40.45 ms +2.65% -11.22% -5.27%
wpMemoryUsage 7.52 MB +0% -0% 7.48 MB +0% -0% 0.46%
wpDbQueries 17 +0% -0% 17 +0% -0% 0%

front-end-classic-theme

Metric d899bf9 trunk % Change
timeToFirstByte 30.65 ms +3.43% -3.92% 29.9 ms +14.05% -3.68% 2.51%
largestContentfulPaint 64 ms +6.25% -0% 64 ms +6.25% -3.13% 0%
lcpMinusTtfb 33.95 ms +3.53% -1.77% 32.9 ms +7.14% -3.19% 3.19%
wpBeforeTemplate 17.02 ms +9.93% -2.29% 16.7 ms +9.94% -1.92% 1.92%
wpTemplate 10.87 ms +5.15% -8.37% 10.88 ms +4.04% -9.1% -0.09%
wpTotal 28.09 ms +3.88% -4.17% 27.47 ms +13.83% -3.64% 2.26%
wpMemoryUsage 5.51 MB +0% -0% 5.47 MB +0% -0% 0.64%
wpDbQueries 14 +0% -0% 14 +0% -0% 0%

media-processing

Metric d899bf9 trunk % Change
mediaProcessingJpeg 289.35 ms +2.46% -0.91% 284.04 ms +1.17% -0.93% 1.87%
mediaProcessingAvif 4097.61 ms +1.5% -0.05% 4092.65 ms +0.42% -0.45% 0.12%
mediaProcessingJpegToAvif 2803.06 ms +3.63% -0.78% 2783 ms +0.04% -0.3% 0.72%

media-upload

Metric d899bf9 trunk % Change
jpegUploadProcessing 1408.84 ms +0.88% -0.6% 1395.21 ms +1.04% -0.7% 0.98%
pngUploadProcessing 176.41 ms +35.46% -6.37% 160.86 ms +1.46% -5.85% 9.67%
largeJpegUploadProcessing 1412.61 ms +0.16% -0.46% 1394.3 ms +1.14% -0.59% 1.31%
multipleImageUploadProcessing 1454.83 ms +0.57% -0.03% 1448.04 ms +1.17% -0.1% 0.47%

post-editor

Metric d899bf9 trunk % Change
serverResponse 414.81 ms +6.52% -5.01% 427.83 ms +2.49% -1.51% -3.04%
firstPaint 227.35 ms +9.06% -23.33% 197.16 ms +6.5% -5.13% 15.31%
domContentLoaded 1225.62 ms +0.86% -0.71% 1196.07 ms +1.74% -1.66% 2.47%
loaded 1226.91 ms +0.87% -0.71% 1197.23 ms +1.76% -1.65% 2.48%
firstContentfulPaint 409.87 ms +0.73% -0.6% 391.38 ms +4.22% -4.25% 4.72%
firstBlock 3228.77 ms +0.96% -0.76% 3168 ms +0.81% -2.39% 1.92%
type 15.14 ms +3.83% -3.3% 15.32 ms +7.38% -3.92% -1.17%
typeWithoutInspector 16.61 ms +2.59% -11.2% 15.72 ms +3.05% -4.83% 5.66%
typeWithTopToolbar 18.18 ms +6.33% -11.66% 19.34 ms +4.14% -9.05% -6%
typeContainer 9.07 ms +10.36% -9.92% 8.97 ms +10.26% -7.92% 1.11%
focus 76.19 ms +16.73% -8.44% 75.5 ms +15.56% -8.32% 0.91%
firstFocus 172.27 ms +0% -0% 163.66 ms +0% -0% 5.26%
selectAll 454.52 ms +3.72% -3.66% 452.46 ms +6.67% -1% 0.46%
listViewOpen 66.8 ms +15.85% -16.03% 65 ms +10.71% -9.54% 2.77%
inserterOpen 23.32 ms +3.13% -7.2% 23.19 ms +9.06% -4.92% 0.56%
inserterHover 4.2 ms +8.57% -7.38% 3.78 ms +9.52% -6.61% 11.11%
inserterSearch 8.71 ms +13.78% -6.89% 8.28 ms +24.64% -4.59% 5.19%
loadPatterns 629.74 ms +2.02% -1.69% 620.02 ms +5.52% -5% 1.57%
wpTotal 404.58 ms +6.63% -5.03% 417.94 ms +2.53% -1.63% -3.2%
wpMemoryUsage 13.05 MB +0% -0% 13.02 MB +0% -0% 0.28%
wpDbQueries 54 +0% -1.85% 54 +0% -1.85% 0%

site-editor

Metric d899bf9 trunk % Change
serverResponse 491.64 ms +4.97% -1.51% 518.59 ms +3.01% -6.09% -5.2%
firstPaint 297.5 ms +9.6% -8.67% 297.57 ms +50.35% -13.54% -0.02%
domContentLoaded 1402.37 ms +1.06% -0.16% 1410.63 ms +1.12% -0.41% -0.59%
loaded 1403.66 ms +1.06% -0.17% 1411.91 ms +1.12% -0.41% -0.58%
firstContentfulPaint 439.75 ms +2.35% -1.19% 449.19 ms +2.15% -1.79% -2.1%
firstBlock 4517.77 ms +0.51% -1.76% 4480.05 ms +0.56% -0.76% 0.84%
type 15.39 ms +5.85% -2.01% 15.06 ms +5.05% -11.95% 2.19%
navigate 118.12 ms +4.53% -8.13% 100.22 ms +5.77% -2.93% 17.86%
loadPatterns 1410.65 ms +11.58% -5.53% 1369.11 ms +15.03% -9.52% 3.03%
loadPages 1360.85 ms +11.67% -13.44% 1091.55 ms +2.91% -5.71% 24.67%
wpTotal 481.88 ms +5.06% -1.62% 508.81 ms +3.14% -6.22% -5.29%
wpMemoryUsage 12.06 MB +0% -0% 12.03 MB +0% -0% 0.3%
wpDbQueries 43 +2.33% -0% 43 +2.33% -0% 0%

356c5fd Run

🏁 Flaky tests

Show the failures

Some tests passed with failed attempts. The failures may not be related to this commit but are still reported for visibility. See the documentation for more information.

should move focus to the block in /test/e2e/specs/widgets/customizing-widgets.spec.js, passed after 1 failed attempt.
Error: apiRequestContext.fetch: socket hang up
Call log:
  - → POST http://localhost:8889/wp-json/wp/v2/sidebars/sidebar-2
    - user-agent: Playwright/1.62.1 (x64; ubuntu 24.04) node/24.18 CI/1
    - accept: */*
    - accept-encoding: gzip,deflate,br
    - X-WP-Nonce: d3edfa686e
    - content-type: application/json
    - content-length: 31
    - cookie: wordpress_test_cookie=WP%20Cookie%20check; wordpress_logged_in_23778236db82f19306f247e20a353a99=admin%7C1789085648%7CPVgEpyDzcubEUxOZs0eHTloBkKO6CAeuiF2RLMh930b%7Cf32bb9f5e565410da6906a656447d2fa76631b4f6dfe04d047e6886b7aae142b; wp-settings-time-1=1788913706

    at RequestUtils.rest (/home/runner/work/gutenberg/gutenberg/packages/e2e-test-utils-playwright/src/request-utils/rest.ts:112:39)
    at map (/home/runner/work/gutenberg/gutenberg/packages/e2e-test-utils-playwright/src/request-utils/widgets.js:22:9)
    at RequestUtils.deleteAllWidgets (/home/runner/work/gutenberg/gutenberg/packages/e2e-test-utils-playwright/src/request-utils/widgets.js:21:12)
    at /home/runner/work/gutenberg/gutenberg/test/e2e/specs/widgets/customizing-widgets.spec.js:34:3

356c5fd Run

@adamsilverstein

adamsilverstein commented Sep 7, 2026 •

Copy link
Copy Markdown
Member Author

Merged trunk in and made a pass on review feedback here. The server half now has a core PR and a Trac ticket on the 7.1.1 milestone.

Claude handled the merge and the review round, its notes:

  • Trunk moved the new tests onto Vitest, so the two new test files use vi.mock( import( ... ) ) now and the on-success test is a .ts file.
  • finalize_item() returns the WP_Error when the re-read of the post fails, instead of answering 200 with the row as it stood before the wp_generate_attachment_metadata filter ran. A callback that deletes the attachment now fails the upload rather than leaving the editor holding a record for a post that is gone. A new PHP test covers it.
  • The changelog entry links this PR rather than the issue.

The server change only runs with the plugin active, since lib/media/load.php swaps in the Gutenberg controller. A site on 7.1.1 with the updated packages but without the plugin would keep the stale-row behavior, so the same re-read is in WordPress/wordpress-develop#13412 with https://core.trac.wordpress.org/ticket/66056.

adamsilverstein and others added 2 commits September 6, 2026 17:38
The server half ships in wordpress-develop #13412 (Trac 66056), slated for
7.1.1 alongside the package update.

@andrewserong andrewserong left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch! This is all testing well for me, and good idea returning the updated post from the endpoint, that makes a lot of sense, and nice test coverage 👍

Left a couple of idle thoughts about the packages/editor side of things and how we keep track of which things have already been finalized and which things need their cache invalidated. Nothing blocking there, just capturing some thoughts about how the consumer does things in case it informs things for upload-media (and its consumers) in follow-ups.

LGTM! 🎉

Comment thread packages/editor/src/utils/media-upload/finalized-attachments.ts Outdated
Comment thread packages/editor/src/utils/media-upload/on-success.js
Comment on lines +42 to +61
export function receiveFinalizedAttachment(
record: FinalizedAttachment
): void {
if ( ! record?.id ) {
return;
}

const { receiveEntityRecords } = dispatch( coreDataStore );

for ( const query of ATTACHMENT_QUERIES ) {
/*
* Passing the record on its own rather than in an array keeps this a
* single-item receive, which leaves list queries (the media library,
* the inserter's Media tab) untouched.
*/
receiveEntityRecords( 'postType', 'attachment', record, query );
}

finalized.add( record.id );
}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This comment is a bit nit-picky, but this file is in utils/media-upload but the main behaviour is this function which feels a bit more naturally part of utils/media-finalize rather than media-upload. Both media-finalize and media-upload need to use this module since it has module-level state, but wondering if media-finalize would be a better home for this file?

It doesn't really matter, but mentioning it because in a separate comment I'm also curious if we'd ever want the knowledge of whether an attachment has been finalized to be a responsibility of upload-media rather than the consumer.

Again this isn't a blocker or anything, I'm mostly just thinking out loud about this because we're starting to think about using the client-side media processing in other areas, so I'm curious how we can keep things as simple as we can for consumers.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

structurally thats a really good point, success tracking behavior and awareness does feel like it all belongs in the media-upload package. I'll investigate this a bit and either add something into this PR or more likely open a follow up pr to address.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Captured in #82613 along with the onSuccess point, will take this up there.

Use the shared Attachment type instead of a local one-field type, so the
finalized-attachments helper reads as taking a real attachment record
rather than an opaque object with an ID.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JrQHYVWEr61osMiYVd4AJG

jest.mock( '@wordpress/api-fetch', () => jest.fn() );

jest.mock( '../../media-upload/finalized-attachments', () => ( {

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is failing because it looks like trunk has moved to vitest in #82212 (looks like the fix might be just to swap this out for vi.mock?)

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will do

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, exactly that. Merged trunk and switched it to vi.mock( import( ... ) ) in 356c5fd.

adamsilverstein and others added 2 commits September 8, 2026 17:02
Trunk moved this test onto Vitest in #82212, so the Jest mock added on
this branch throws "jest is not defined" once the two are merged.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01JrQHYVWEr61osMiYVd4AJG
@adamsilverstein
adamsilverstein merged commit a474f40 into trunk Sep 9, 2026
71 of 76 checks passed
@github-project-automation github-project-automation Bot moved this from 🔎 Needs Review to ✅ Done in WordPress 7.1.x Editor Tasks Sep 9, 2026
@adamsilverstein
adamsilverstein deleted the fix/81844-finalize-response-record branch September 9, 2026 00:38
@github-actions github-actions Bot added this to the Gutenberg 24.0 milestone Sep 9, 2026
adamsilverstein added a commit that referenced this pull request Sep 9, 2026
wporg-sync pushed a commit to WordPress/wordpress-develop that referenced this pull request Sep 9, 2026
… data.

`finalize_item()` prepares its response from the `$post` fetched before the `wp_generate_attachment_metadata` filter runs, so anything a callback writes to the post row is missing from the response. The editor now stores that response as the attachment record instead of refetching, so re-read the post after the metadata is written and return the `WP_Error` if a callback deleted the attachment. See WordPress/gutenberg#81844 and WordPress/gutenberg#81947.

Props gregbenz, andrewserong.
Fixes #66056.



git-svn-id: https://develop.svn.wordpress.org/trunk@63564 602fd350-edb4-49c9-b593-d223f7449a82
wporg-sync pushed a commit to WordPress/WordPress that referenced this pull request Sep 9, 2026
… data.

`finalize_item()` prepares its response from the `$post` fetched before the `wp_generate_attachment_metadata` filter runs, so anything a callback writes to the post row is missing from the response. The editor now stores that response as the attachment record instead of refetching, so re-read the post after the metadata is written and return the `WP_Error` if a callback deleted the attachment. See WordPress/gutenberg#81844 and WordPress/gutenberg#81947.

Props gregbenz, andrewserong.
Fixes #66056.


Built from https://develop.svn.wordpress.org/trunk@63564


git-svn-id: http://core.svn.wordpress.org/trunk@62740 1a063a9b-81f0-0310-95a4-ce76da25c4cd
wporg-sync pushed a commit to WordPress/wordpress-develop that referenced this pull request Sep 9, 2026
… data.

`finalize_item()` prepares its response from the `$post` fetched before the `wp_generate_attachment_metadata` filter runs, so anything a callback writes to the post row is missing from the response. The editor now stores that response as the attachment record instead of refetching, so re-read the post after the metadata is written and return the `WP_Error` if a callback deleted the attachment. See WordPress/gutenberg#81844 and WordPress/gutenberg#81947.

Reviewed by joedolson.
Merges [63564] to the 7.1 branch.

Props gregbenz, andrewserong.
Fixes #66056.i



git-svn-id: https://develop.svn.wordpress.org/branches/7.1@63572 602fd350-edb4-49c9-b593-d223f7449a82
wporg-sync pushed a commit to WordPress/WordPress that referenced this pull request Sep 9, 2026
… data.

`finalize_item()` prepares its response from the `$post` fetched before the `wp_generate_attachment_metadata` filter runs, so anything a callback writes to the post row is missing from the response. The editor now stores that response as the attachment record instead of refetching, so re-read the post after the metadata is written and return the `WP_Error` if a callback deleted the attachment. See WordPress/gutenberg#81844 and WordPress/gutenberg#81947.

Reviewed by joedolson.
Merges [63564] to the 7.1 branch.

Props gregbenz, andrewserong.
Fixes #66056.i


Built from https://develop.svn.wordpress.org/branches/7.1@63572


git-svn-id: http://core.svn.wordpress.org/branches/7.1@62748 1a063a9b-81f0-0310-95a4-ce76da25c4cd
draganescu pushed a commit that referenced this pull request Sep 10, 2026
wporg-sync pushed a commit to WordPress/wordpress-develop that referenced this pull request Sep 10, 2026
This updates the pinned commit hash of the Gutenberg repository from `943e0d825bb66ba582e9a10d32743cbb136de460` to `dd294ab86ceaf9f3d7d42a09b78f399238ce8826` and merges cherry-picked changes to the `wp/7.1` branch into the 7.1.1 release. Only the `editor` and `upload-media` package hashes changed in the regenerated manifest.

A full list of changes included in this commit can be found on GitHub:
WordPress/gutenberg@943e0d8...dd294ab

The following commits are included:
- useViewConfig: don't request the view config twice (WordPress/gutenberg#82183)
- Framework: Update Node.js to v24 LTS and npm to v11 (WordPress/gutenberg#82635)
- Block Editor: Add translator context to pseudo-state labels (WordPress/gutenberg#81770)
- Fix: Post Editor: 403 on /wp/v2/settings at boot for users without manage_options cap (WordPress/gutenberg#81813)
- Media: Refuse a multi-file drop on a placeholder that takes one file (WordPress/gutenberg#82046)
- List: outdent an empty middle item without adding an item (WordPress/gutenberg#82011)
- Accordion Panel: Reset padding-block when panel is hidden (WordPress/gutenberg#81782)
- List View: Don't focus the last Table cell on keyboard activation (WordPress/gutenberg#81964)
- Media: Stop claiming "Upload complete" when upload failed (WordPress/gutenberg#81397)
- Media: keep indexed PNG sub-sizes indexed (WordPress/gutenberg#81884)
- Image block cropping: Sync image size and link destination settings (WordPress/gutenberg#82316)
- Gallery block: Fix 'Crop images to fit' broken in editor (WordPress/gutenberg#82318)
- Pages: require authentication and a capability to render generated standalone pages (WordPress/gutenberg#82254)
- Media Utils: Preserve arrays in multipart form data (WordPress/gutenberg#82353)
- wp-env: Fix Docker build errors with Debian Bullseye repositories (WordPress/gutenberg#82478)
- Query Loop: Fall back to `post` when the query has no `postType` (WordPress/gutenberg#82465)
- Block Supports: Bail early in state styles when a block has no style attribute (WordPress/gutenberg#81908)
- Fix: Restore layout styles for block style variations (WordPress/gutenberg#82335)
- CI: Unify the automation comments into a single PR comment (WordPress/gutenberg#82249)
- Editor: Store the finalize response as the attachment record (WordPress/gutenberg#81947)
- Media: Only blame the browser's codecs when HEIC really cannot be decoded (WordPress/gutenberg#82265)

The PHP changes carried by three of those pull requests do not travel through the package build and are already on the branch.

Follow-up to [63319], [63489], [63547], [63572].
Reviewed by jorbin.

Props andraganescu, wildworks.
Fixes #66037.



git-svn-id: https://develop.svn.wordpress.org/branches/7.1@63587 602fd350-edb4-49c9-b593-d223f7449a82
wporg-sync pushed a commit to WordPress/WordPress that referenced this pull request Sep 10, 2026
This updates the pinned commit hash of the Gutenberg repository from `943e0d825bb66ba582e9a10d32743cbb136de460` to `dd294ab86ceaf9f3d7d42a09b78f399238ce8826` and merges cherry-picked changes to the `wp/7.1` branch into the 7.1.1 release. Only the `editor` and `upload-media` package hashes changed in the regenerated manifest.

A full list of changes included in this commit can be found on GitHub:
WordPress/gutenberg@943e0d8...dd294ab

The following commits are included:
- useViewConfig: don't request the view config twice (WordPress/gutenberg#82183)
- Framework: Update Node.js to v24 LTS and npm to v11 (WordPress/gutenberg#82635)
- Block Editor: Add translator context to pseudo-state labels (WordPress/gutenberg#81770)
- Fix: Post Editor: 403 on /wp/v2/settings at boot for users without manage_options cap (WordPress/gutenberg#81813)
- Media: Refuse a multi-file drop on a placeholder that takes one file (WordPress/gutenberg#82046)
- List: outdent an empty middle item without adding an item (WordPress/gutenberg#82011)
- Accordion Panel: Reset padding-block when panel is hidden (WordPress/gutenberg#81782)
- List View: Don't focus the last Table cell on keyboard activation (WordPress/gutenberg#81964)
- Media: Stop claiming "Upload complete" when upload failed (WordPress/gutenberg#81397)
- Media: keep indexed PNG sub-sizes indexed (WordPress/gutenberg#81884)
- Image block cropping: Sync image size and link destination settings (WordPress/gutenberg#82316)
- Gallery block: Fix 'Crop images to fit' broken in editor (WordPress/gutenberg#82318)
- Pages: require authentication and a capability to render generated standalone pages (WordPress/gutenberg#82254)
- Media Utils: Preserve arrays in multipart form data (WordPress/gutenberg#82353)
- wp-env: Fix Docker build errors with Debian Bullseye repositories (WordPress/gutenberg#82478)
- Query Loop: Fall back to `post` when the query has no `postType` (WordPress/gutenberg#82465)
- Block Supports: Bail early in state styles when a block has no style attribute (WordPress/gutenberg#81908)
- Fix: Restore layout styles for block style variations (WordPress/gutenberg#82335)
- CI: Unify the automation comments into a single PR comment (WordPress/gutenberg#82249)
- Editor: Store the finalize response as the attachment record (WordPress/gutenberg#81947)
- Media: Only blame the browser's codecs when HEIC really cannot be decoded (WordPress/gutenberg#82265)

The PHP changes carried by three of those pull requests do not travel through the package build and are already on the branch.

Follow-up to [63319], [63489], [63547], [63572].
Reviewed by jorbin.

Props andraganescu, wildworks.
Fixes #66037.


Built from https://develop.svn.wordpress.org/branches/7.1@63587


git-svn-id: http://core.svn.wordpress.org/branches/7.1@62763 1a063a9b-81f0-0310-95a4-ce76da25c4cd
@draganescu draganescu added Backported to WP Core Pull request that has been successfully merged into WP Core and removed Backport to WP Minor Release Pull request that needs to be backported to a WordPress minor release labels Sep 11, 2026
t-hamano added a commit to t-hamano/wordpress-develop that referenced this pull request Oct 6, 2026
General: Bump the pinned hash for Gutenberg to `50ad79e`.

This updates the pinned commit hash of the Gutenberg repository from `5715a61334c4d29f21b67cf34b46061dc1b62502` to `50ad79ef7ebc5f1d2a75def068887e33a15f2634` (version `24.0.0`).

A full list of changes included in this commit can be found on GitHub: WordPress/gutenberg@5715a61...50ad79e.

- Tabs: remove core's duplicate render_block_context filter (WordPress/gutenberg#82610)
- Automated Testing: Fix unit test compatibility with Node.js v26 (WordPress/gutenberg#82618)
- Test: Drop the jest-dom Vitest entry point from test files (WordPress/gutenberg#82606)
- Packages: Replace stale jest types with the Vitest test environment (WordPress/gutenberg#82605)
- Editor: Store the finalize response as the attachment record (WordPress/gutenberg#81947)
- Update Style Engine block supports documentation (WordPress/gutenberg#82585)
- Fix the high-severity sharp audit failure in AI development tests (WordPress/gutenberg#82627)
- Bump vitest from 4.1.10 to 4.1.11 (WordPress/gutenberg#82629)
- Editor: Render change diffs in the post title in revisions (WordPress/gutenberg#82586)
- Editor: Derive post-only block list layout from the assigned template (WordPress/gutenberg#82599)
- Gallery: Shorten "Use images attached to the post" button, add description (WordPress/gutenberg#82617)
- Theme: Enforce active fill contrast (WordPress/gutenberg#82542)
- UI: Reset completed calendar ranges by default (WordPress/gutenberg#82612)
- Video block: switch to UI Badge (WordPress/gutenberg#82441)
- DataViews: Remove obsolete Node 20 timezone test gate (WordPress/gutenberg#82644)
- Disabled: keep the consumer className when isDisabled is false (WordPress/gutenberg#82648)
- Autocompleters: Consider email address context in user mention (WordPress/gutenberg#47249)
- Searchable selects: Hide creatable footer when it is filtered out (WordPress/gutenberg#82566)
- Popover storybook: add infotip with link example (WordPress/gutenberg#82653)
- Block editor, Components: Stop relying on Disabled class name (WordPress/gutenberg#82651)
- FormTokenField: wrap to the last suggestion on ArrowUp with nothing selected (WordPress/gutenberg#82646)
- Components: Match the @wordpress/ui disabled styles in form controls (WordPress/gutenberg#82454)
- Framework: Update @types/node to v24 (WordPress/gutenberg#82616)
- Bump vite from 8.2.1 to 8.2.2 (WordPress/gutenberg#82668)
- Site editor v2: Use the canonical fields in the templates list (WordPress/gutenberg#82666)
- api-fetch: Resolve to null for a 200 response with an empty body (WordPress/gutenberg#79325)
- Site editor v2: Use the canonical wp_block fields in the patterns list (WordPress/gutenberg#82672)
- Theme: Remove chroma capacity cache (WordPress/gutenberg#82591)
- Remove the content-only inspector fields (block fields) experiment (WordPress/gutenberg#82531)
- Site editor v2: templates take view config from endpoint (WordPress/gutenberg#82456)
- Post URL: translate the copy permalink button label (WordPress/gutenberg#82642)
- UI: Test Calendar raw-offset timezones (WordPress/gutenberg#82658)
- DOM: Exclude visibility-hidden elements from focusable results (WordPress/gutenberg#82574)
- Test: Update SWC dependencies (WordPress/gutenberg#82660)
- Theme, Widget dashboard: Declare the @storybook/addon-docs dependency (WordPress/gutenberg#82676)
- Update Playwright to 1.63.0 (WordPress/gutenberg#82654)
- Site editor v2: patterns take view config from endpoint (WordPress/gutenberg#82458)
- BlockPreview: Assert preview contents are inert (WordPress/gutenberg#82682)
- Theme: Add bin-specific tsconfig with nodenext module resolution (WordPress/gutenberg#82622)
- Block Editor: Remove the dead Write/Design editor tool plumbing (WordPress/gutenberg#82677)
- Create Block: Test package at supported Node.js versions (WordPress/gutenberg#82657)
- Update Actions and Octokit dependencies (WordPress/gutenberg#82663)
- Theme: Use Node.js native type-stripping for scripts (WordPress/gutenberg#82680)
- Build Scripts: Suggest --verbose when a type check fails (WordPress/gutenberg#82604)
- e2e-test-utils-playwright: Update Lighthouse and web-vitals (WordPress/gutenberg#81916)
- Test: Update Vitest to version 5 (WordPress/gutenberg#82687)
- Site editor v2: template parts take view config from endpoint (WordPress/gutenberg#82457)
- Theme: Reduce repeated color ramp search work (WordPress/gutenberg#82545)
- Media: Only blame the browser's codecs when HEIC really cannot be decoded (WordPress/gutenberg#82265)
- Site editor v2: Identity takes its form from the view config endpoint (WordPress/gutenberg#82692)
- Storybook: Include stories in docgen TypeScript project (WordPress/gutenberg#82694)
- Test: Root the Vitest browser project where its dependencies are declared (WordPress/gutenberg#82699)
- Build: Fix regular CSS injection in Vitest Browser Mode (WordPress/gutenberg#82154)
- Workflow: Replace cmdk with the @wordpress/ui Autocomplete primitive (WordPress/gutenberg#82504)
- Bump plugin version to 24.0.0-rc.1
- [24.0] Packages: Backport the September 10 npm release metadata to release/24.0 (WordPress/gutenberg#82708)
- Bump plugin version to 24.0.0

See #66070.

Co-Authored-By: Claude <noreply@anthropic.com>
wporg-sync pushed a commit to WordPress/wordpress-develop that referenced this pull request Oct 6, 2026
This updates the pinned commit hash of the Gutenberg repository from `5715a61334c4d29f21b67cf34b46061dc1b62502` to `50ad79ef7ebc5f1d2a75def068887e33a15f2634` (version `24.0.0`).

A full list of changes included in this commit can be found on GitHub: WordPress/gutenberg@5715a61...50ad79e.

- Tabs: remove core's duplicate render_block_context filter (WordPress/gutenberg#82610)
- Automated Testing: Fix unit test compatibility with Node.js v26 (WordPress/gutenberg#82618)
- Test: Drop the jest-dom Vitest entry point from test files (WordPress/gutenberg#82606)
- Packages: Replace stale jest types with the Vitest test environment (WordPress/gutenberg#82605)
- Editor: Store the finalize response as the attachment record (WordPress/gutenberg#81947)
- Update Style Engine block supports documentation (WordPress/gutenberg#82585)
- Fix the high-severity sharp audit failure in AI development tests (WordPress/gutenberg#82627)
- Bump vitest from 4.1.10 to 4.1.11 (WordPress/gutenberg#82629)
- Editor: Render change diffs in the post title in revisions (WordPress/gutenberg#82586)
- Editor: Derive post-only block list layout from the assigned template (WordPress/gutenberg#82599)
- Gallery: Shorten "Use images attached to the post" button, add description (WordPress/gutenberg#82617)
- Theme: Enforce active fill contrast (WordPress/gutenberg#82542)
- UI: Reset completed calendar ranges by default (WordPress/gutenberg#82612)
- Video block: switch to UI Badge (WordPress/gutenberg#82441)
- DataViews: Remove obsolete Node 20 timezone test gate (WordPress/gutenberg#82644)
- Disabled: keep the consumer className when isDisabled is false (WordPress/gutenberg#82648)
- Autocompleters: Consider email address context in user mention (WordPress/gutenberg#47249)
- Searchable selects: Hide creatable footer when it is filtered out (WordPress/gutenberg#82566)
- Popover storybook: add infotip with link example (WordPress/gutenberg#82653)
- Block editor, Components: Stop relying on Disabled class name (WordPress/gutenberg#82651)
- FormTokenField: wrap to the last suggestion on ArrowUp with nothing selected (WordPress/gutenberg#82646)
- Components: Match the @wordpress/ui disabled styles in form controls (WordPress/gutenberg#82454)
- Framework: Update @types/node to v24 (WordPress/gutenberg#82616)
- Bump vite from 8.2.1 to 8.2.2 (WordPress/gutenberg#82668)
- Site editor v2: Use the canonical fields in the templates list (WordPress/gutenberg#82666)
- api-fetch: Resolve to null for a 200 response with an empty body (WordPress/gutenberg#79325)
- Site editor v2: Use the canonical wp_block fields in the patterns list (WordPress/gutenberg#82672)
- Theme: Remove chroma capacity cache (WordPress/gutenberg#82591)
- Remove the content-only inspector fields (block fields) experiment (WordPress/gutenberg#82531)
- Site editor v2: templates take view config from endpoint (WordPress/gutenberg#82456)
- Post URL: translate the copy permalink button label (WordPress/gutenberg#82642)
- UI: Test Calendar raw-offset timezones (WordPress/gutenberg#82658)
- DOM: Exclude visibility-hidden elements from focusable results (WordPress/gutenberg#82574)
- Test: Update SWC dependencies (WordPress/gutenberg#82660)
- Theme, Widget dashboard: Declare the @storybook/addon-docs dependency (WordPress/gutenberg#82676)
- Update Playwright to 1.63.0 (WordPress/gutenberg#82654)
- Site editor v2: patterns take view config from endpoint (WordPress/gutenberg#82458)
- BlockPreview: Assert preview contents are inert (WordPress/gutenberg#82682)
- Theme: Add bin-specific tsconfig with nodenext module resolution (WordPress/gutenberg#82622)
- Block Editor: Remove the dead Write/Design editor tool plumbing (WordPress/gutenberg#82677)
- Create Block: Test package at supported Node.js versions (WordPress/gutenberg#82657)
- Update Actions and Octokit dependencies (WordPress/gutenberg#82663)
- Theme: Use Node.js native type-stripping for scripts (WordPress/gutenberg#82680)
- Build Scripts: Suggest --verbose when a type check fails (WordPress/gutenberg#82604)
- e2e-test-utils-playwright: Update Lighthouse and web-vitals (WordPress/gutenberg#81916)
- Test: Update Vitest to version 5 (WordPress/gutenberg#82687)
- Site editor v2: template parts take view config from endpoint (WordPress/gutenberg#82457)
- Theme: Reduce repeated color ramp search work (WordPress/gutenberg#82545)
- Media: Only blame the browser's codecs when HEIC really cannot be decoded (WordPress/gutenberg#82265)
- Site editor v2: Identity takes its form from the view config endpoint (WordPress/gutenberg#82692)
- Storybook: Include stories in docgen TypeScript project (WordPress/gutenberg#82694)
- Test: Root the Vitest browser project where its dependencies are declared (WordPress/gutenberg#82699)
- Build: Fix regular CSS injection in Vitest Browser Mode (WordPress/gutenberg#82154)
- Workflow: Replace cmdk with the @wordpress/ui Autocomplete primitive (WordPress/gutenberg#82504)
- Bump plugin version to 24.0.0-rc.1
- [24.0] Packages: Backport the September 10 npm release metadata to release/24.0 (WordPress/gutenberg#82708)
- Bump plugin version to 24.0.0

Props mamaduka, wildworks.
Fixes #66070.

git-svn-id: https://develop.svn.wordpress.org/trunk@64123 602fd350-edb4-49c9-b593-d223f7449a82
wporg-sync pushed a commit to WordPress/WordPress that referenced this pull request Oct 6, 2026
This updates the pinned commit hash of the Gutenberg repository from `5715a61334c4d29f21b67cf34b46061dc1b62502` to `50ad79ef7ebc5f1d2a75def068887e33a15f2634` (version `24.0.0`).

A full list of changes included in this commit can be found on GitHub: WordPress/gutenberg@5715a61...50ad79e.

- Tabs: remove core's duplicate render_block_context filter (WordPress/gutenberg#82610)
- Automated Testing: Fix unit test compatibility with Node.js v26 (WordPress/gutenberg#82618)
- Test: Drop the jest-dom Vitest entry point from test files (WordPress/gutenberg#82606)
- Packages: Replace stale jest types with the Vitest test environment (WordPress/gutenberg#82605)
- Editor: Store the finalize response as the attachment record (WordPress/gutenberg#81947)
- Update Style Engine block supports documentation (WordPress/gutenberg#82585)
- Fix the high-severity sharp audit failure in AI development tests (WordPress/gutenberg#82627)
- Bump vitest from 4.1.10 to 4.1.11 (WordPress/gutenberg#82629)
- Editor: Render change diffs in the post title in revisions (WordPress/gutenberg#82586)
- Editor: Derive post-only block list layout from the assigned template (WordPress/gutenberg#82599)
- Gallery: Shorten "Use images attached to the post" button, add description (WordPress/gutenberg#82617)
- Theme: Enforce active fill contrast (WordPress/gutenberg#82542)
- UI: Reset completed calendar ranges by default (WordPress/gutenberg#82612)
- Video block: switch to UI Badge (WordPress/gutenberg#82441)
- DataViews: Remove obsolete Node 20 timezone test gate (WordPress/gutenberg#82644)
- Disabled: keep the consumer className when isDisabled is false (WordPress/gutenberg#82648)
- Autocompleters: Consider email address context in user mention (WordPress/gutenberg#47249)
- Searchable selects: Hide creatable footer when it is filtered out (WordPress/gutenberg#82566)
- Popover storybook: add infotip with link example (WordPress/gutenberg#82653)
- Block editor, Components: Stop relying on Disabled class name (WordPress/gutenberg#82651)
- FormTokenField: wrap to the last suggestion on ArrowUp with nothing selected (WordPress/gutenberg#82646)
- Components: Match the @wordpress/ui disabled styles in form controls (WordPress/gutenberg#82454)
- Framework: Update @types/node to v24 (WordPress/gutenberg#82616)
- Bump vite from 8.2.1 to 8.2.2 (WordPress/gutenberg#82668)
- Site editor v2: Use the canonical fields in the templates list (WordPress/gutenberg#82666)
- api-fetch: Resolve to null for a 200 response with an empty body (WordPress/gutenberg#79325)
- Site editor v2: Use the canonical wp_block fields in the patterns list (WordPress/gutenberg#82672)
- Theme: Remove chroma capacity cache (WordPress/gutenberg#82591)
- Remove the content-only inspector fields (block fields) experiment (WordPress/gutenberg#82531)
- Site editor v2: templates take view config from endpoint (WordPress/gutenberg#82456)
- Post URL: translate the copy permalink button label (WordPress/gutenberg#82642)
- UI: Test Calendar raw-offset timezones (WordPress/gutenberg#82658)
- DOM: Exclude visibility-hidden elements from focusable results (WordPress/gutenberg#82574)
- Test: Update SWC dependencies (WordPress/gutenberg#82660)
- Theme, Widget dashboard: Declare the @storybook/addon-docs dependency (WordPress/gutenberg#82676)
- Update Playwright to 1.63.0 (WordPress/gutenberg#82654)
- Site editor v2: patterns take view config from endpoint (WordPress/gutenberg#82458)
- BlockPreview: Assert preview contents are inert (WordPress/gutenberg#82682)
- Theme: Add bin-specific tsconfig with nodenext module resolution (WordPress/gutenberg#82622)
- Block Editor: Remove the dead Write/Design editor tool plumbing (WordPress/gutenberg#82677)
- Create Block: Test package at supported Node.js versions (WordPress/gutenberg#82657)
- Update Actions and Octokit dependencies (WordPress/gutenberg#82663)
- Theme: Use Node.js native type-stripping for scripts (WordPress/gutenberg#82680)
- Build Scripts: Suggest --verbose when a type check fails (WordPress/gutenberg#82604)
- e2e-test-utils-playwright: Update Lighthouse and web-vitals (WordPress/gutenberg#81916)
- Test: Update Vitest to version 5 (WordPress/gutenberg#82687)
- Site editor v2: template parts take view config from endpoint (WordPress/gutenberg#82457)
- Theme: Reduce repeated color ramp search work (WordPress/gutenberg#82545)
- Media: Only blame the browser's codecs when HEIC really cannot be decoded (WordPress/gutenberg#82265)
- Site editor v2: Identity takes its form from the view config endpoint (WordPress/gutenberg#82692)
- Storybook: Include stories in docgen TypeScript project (WordPress/gutenberg#82694)
- Test: Root the Vitest browser project where its dependencies are declared (WordPress/gutenberg#82699)
- Build: Fix regular CSS injection in Vitest Browser Mode (WordPress/gutenberg#82154)
- Workflow: Replace cmdk with the @wordpress/ui Autocomplete primitive (WordPress/gutenberg#82504)
- Bump plugin version to 24.0.0-rc.1
- [24.0] Packages: Backport the September 10 npm release metadata to release/24.0 (WordPress/gutenberg#82708)
- Bump plugin version to 24.0.0

Props mamaduka, wildworks.
Fixes #66070.
Built from https://develop.svn.wordpress.org/trunk@64123


git-svn-id: http://core.svn.wordpress.org/trunk@63279 1a063a9b-81f0-0310-95a4-ce76da25c4cd
wporg-sync pushed a commit to WordPress/wordpress-develop that referenced this pull request Oct 7, 2026
This updates the pinned commit hash of the Gutenberg repository from `5715a61334c4d29f21b67cf34b46061dc1b62502` to `954fe7f9e04631c41aec4552acd627a7203a2aad` (version 24.1.0).

A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/50ad79ef7ebc5f1d2a75def068887e33a15f2634...954fe7f9e04631c41aec4552acd627a7203a2aad.

- Tabs: remove core's duplicate render_block_context filter (https://github.com/WordPress/gutenberg/pull/82610)
- Automated Testing: Fix unit test compatibility with Node.js v26 (https://github.com/WordPress/gutenberg/pull/82618)
- Test: Drop the jest-dom Vitest entry point from test files (https://github.com/WordPress/gutenberg/pull/82606)
- Packages: Replace stale jest types with the Vitest test environment (https://github.com/WordPress/gutenberg/pull/82605)
- Editor: Store the finalize response as the attachment record (https://github.com/WordPress/gutenberg/pull/81947)
- Update Style Engine block supports documentation (https://github.com/WordPress/gutenberg/pull/82585)
- Fix the high-severity sharp audit failure in AI development tests (https://github.com/WordPress/gutenberg/pull/82627)
- Bump vitest from 4.1.10 to 4.1.11 (https://github.com/WordPress/gutenberg/pull/82629)
- Editor: Render change diffs in the post title in revisions (https://github.com/WordPress/gutenberg/pull/82586)
- Editor: Derive post-only block list layout from the assigned template (https://github.com/WordPress/gutenberg/pull/82599)
- Gallery: Shorten "Use images attached to the post" button, add description (https://github.com/WordPress/gutenberg/pull/82617)
- Theme: Enforce active fill contrast (https://github.com/WordPress/gutenberg/pull/82542)
- UI: Reset completed calendar ranges by default (https://github.com/WordPress/gutenberg/pull/82612)
- Video block: switch to UI Badge (https://github.com/WordPress/gutenberg/pull/82441)
- DataViews: Remove obsolete Node 20 timezone test gate (https://github.com/WordPress/gutenberg/pull/82644)
- Disabled: keep the consumer className when isDisabled is false (https://github.com/WordPress/gutenberg/pull/82648)
- Autocompleters: Consider email address context in user mention (https://github.com/WordPress/gutenberg/pull/47249)
- Searchable selects: Hide creatable footer when it is filtered out (https://github.com/WordPress/gutenberg/pull/82566)
- Popover storybook: add infotip with link example (https://github.com/WordPress/gutenberg/pull/82653)
- Block editor, Components: Stop relying on Disabled class name (https://github.com/WordPress/gutenberg/pull/82651)
- FormTokenField: wrap to the last suggestion on ArrowUp with nothing selected (https://github.com/WordPress/gutenberg/pull/82646)
- Components: Match the @wordpress/ui disabled styles in form controls (https://github.com/WordPress/gutenberg/pull/82454)
- Framework: Update @types/node to v24 (https://github.com/WordPress/gutenberg/pull/82616)
- Bump vite from 8.2.1 to 8.2.2 (https://github.com/WordPress/gutenberg/pull/82668)
- Site editor v2: Use the canonical fields in the templates list (https://github.com/WordPress/gutenberg/pull/82666)
- api-fetch: Resolve to null for a 200 response with an empty body (https://github.com/WordPress/gutenberg/pull/79325)
- Site editor v2: Use the canonical wp_block fields in the patterns list (https://github.com/WordPress/gutenberg/pull/82672)
- Theme: Remove chroma capacity cache (https://github.com/WordPress/gutenberg/pull/82591)
- Remove the content-only inspector fields (block fields) experiment (https://github.com/WordPress/gutenberg/pull/82531)
- Site editor v2: templates take view config from endpoint (https://github.com/WordPress/gutenberg/pull/82456)
- Post URL: translate the copy permalink button label (https://github.com/WordPress/gutenberg/pull/82642)
- UI: Test Calendar raw-offset timezones (https://github.com/WordPress/gutenberg/pull/82658)
- DOM: Exclude visibility-hidden elements from focusable results (https://github.com/WordPress/gutenberg/pull/82574)
- Test: Update SWC dependencies (https://github.com/WordPress/gutenberg/pull/82660)
- Theme, Widget dashboard: Declare the @storybook/addon-docs dependency (https://github.com/WordPress/gutenberg/pull/82676)
- Update Playwright to 1.63.0 (https://github.com/WordPress/gutenberg/pull/82654)
- Site editor v2: patterns take view config from endpoint (https://github.com/WordPress/gutenberg/pull/82458)
- BlockPreview: Assert preview contents are inert (https://github.com/WordPress/gutenberg/pull/82682)
- Theme: Add bin-specific tsconfig with nodenext module resolution (https://github.com/WordPress/gutenberg/pull/82622)
- Block Editor: Remove the dead Write/Design editor tool plumbing (https://github.com/WordPress/gutenberg/pull/82677)
- Create Block: Test package at supported Node.js versions (https://github.com/WordPress/gutenberg/pull/82657)
- Update Actions and Octokit dependencies (https://github.com/WordPress/gutenberg/pull/82663)
- Theme: Use Node.js native type-stripping for scripts (https://github.com/WordPress/gutenberg/pull/82680)
- Build Scripts: Suggest --verbose when a type check fails (https://github.com/WordPress/gutenberg/pull/82604)
- e2e-test-utils-playwright: Update Lighthouse and web-vitals (https://github.com/WordPress/gutenberg/pull/81916)
- Test: Update Vitest to version 5 (https://github.com/WordPress/gutenberg/pull/82687)
- Site editor v2: template parts take view config from endpoint (https://github.com/WordPress/gutenberg/pull/82457)
- Theme: Reduce repeated color ramp search work (https://github.com/WordPress/gutenberg/pull/82545)
- Media: Only blame the browser's codecs when HEIC really cannot be decoded (https://github.com/WordPress/gutenberg/pull/82265)
- Site editor v2: Identity takes its form from the view config endpoint (https://github.com/WordPress/gutenberg/pull/82692)
- Storybook: Include stories in docgen TypeScript project (https://github.com/WordPress/gutenberg/pull/82694)
- Test: Root the Vitest browser project where its dependencies are declared (https://github.com/WordPress/gutenberg/pull/82699)
- Build: Fix regular CSS injection in Vitest Browser Mode (https://github.com/WordPress/gutenberg/pull/82154)
- Workflow: Replace cmdk with the @wordpress/ui Autocomplete primitive (https://github.com/WordPress/gutenberg/pull/82504)
- Add textShadow typography support and UI (https://github.com/WordPress/gutenberg/pull/79584)
- Block editor: migrate block-card Badge to UI Badge (https://github.com/WordPress/gutenberg/pull/82503)
- Bump github/codeql-action/upload-sarif (https://github.com/WordPress/gutenberg/pull/82339)
- Rich text: separate applying the selection from focusing the field (https://github.com/WordPress/gutenberg/pull/82581)
- Bump svgo from 3.3.4 to 3.3.5 (https://github.com/WordPress/gutenberg/pull/82631)
- Inner Blocks: Support legacy inherit-based layouts (https://github.com/WordPress/gutenberg/pull/82637)
- Bump js-yaml from 3.15.1 to 3.15.2 (https://github.com/WordPress/gutenberg/pull/82628)
- Bump colord from 2.9.3 to 2.9.4 (https://github.com/WordPress/gutenberg/pull/82625)
- Bump @humanfs/node from 0.16.7 to 0.16.8 (https://github.com/WordPress/gutenberg/pull/82352)
- Site Editor: Restore Global Styles access on the front page (https://github.com/WordPress/gutenberg/pull/82624)
- Bump browserslist from 4.28.4 to 4.28.7 (https://github.com/WordPress/gutenberg/pull/82315)
- Bump fast-uri from 3.1.5 to 3.1.7 (https://github.com/WordPress/gutenberg/pull/82351)
- DataViews: Label clickable grid media by the item title when the title is hidden (https://github.com/WordPress/gutenberg/pull/82639)
- Layout hooks: roll out usage of normalizeLegacyLayout to the block-editor layout hooks (https://github.com/WordPress/gutenberg/pull/82710)
- Checkbox: Expand hit target without changing visual size (https://github.com/WordPress/gutenberg/pull/82597)
- Components: Align CheckboxControl checkmark and disabled styles with UI (https://github.com/WordPress/gutenberg/pull/82555)
- Improve Math Inline and Block UI (https://github.com/WordPress/gutenberg/pull/77743)
- Widgets: carry declarative `attributes` through the widget pipeline (https://github.com/WordPress/gutenberg/pull/82485)
- Editor: Coerce `multiple` to a boolean in the media modal wrapper (https://github.com/WordPress/gutenberg/pull/82715)
- Packages: Backport the September 10 npm release metadata to trunk (https://github.com/WordPress/gutenberg/pull/82709)
- Update lerna to 10 and markdownlint-cli to 0.49.1 (https://github.com/WordPress/gutenberg/pull/81917)
- Navigation: don't force submenus open inside a custom overlay (https://github.com/WordPress/gutenberg/pull/82596)
- TextareaAutosize: Replace with native textareas and `field-sizing` (https://github.com/WordPress/gutenberg/pull/64208)
- Fields: Show a message in MediaEdit when the user can't upload media (https://github.com/WordPress/gutenberg/pull/82720)
- Fix playlist track selector stability (https://github.com/WordPress/gutenberg/pull/81760)
- Workflow: Remove deprecated word-wrapping (https://github.com/WordPress/gutenberg/pull/82562)
- Post publish panel: replace deprecated word-break with overflow-wrap (https://github.com/WordPress/gutenberg/pull/82495)
- CI: Run the required trunk changes check through the pr-baseline action (https://github.com/WordPress/gutenberg/pull/82725)
- Stroke icons: 3rd batch, 142 icon updates (https://github.com/WordPress/gutenberg/pull/82540)
- AI development tests: Use repository Node version (https://github.com/WordPress/gutenberg/pull/82662)
- Components: Clean up legacy focus/button overrides in Snackbar and Notice (https://github.com/WordPress/gutenberg/pull/82640)
- Command Palette: Only add the admin bar button when Core does not provide it (https://github.com/WordPress/gutenberg/pull/82733)
- Release: Verify SVN deployment after publication (https://github.com/WordPress/gutenberg/pull/82513)
- Test: Run rendered browser behavior in Vitest Browser Mode (https://github.com/WordPress/gutenberg/pull/80995)
- DOM: Find focusable image map areas (https://github.com/WordPress/gutenberg/pull/82736)
- Add backwards-compatible Y option to provider creator, do not use wp.sync directly in tests (https://github.com/WordPress/gutenberg/pull/82621)
- Fields: replace word-break with `overflow-wrap: anywhere` on slug permalink (https://github.com/WordPress/gutenberg/pull/82693)
- Env: Preserve complete lifecycle script error output (https://github.com/WordPress/gutenberg/pull/82735)
- Remove deprecated word-wrapping Stylelint suppressions (https://github.com/WordPress/gutenberg/pull/82426)
- Test: Stabilize Menu iframe listener lifecycle assertions (https://github.com/WordPress/gutenberg/pull/82575)
- Media: Stop injecting crossorigin attributes under Document-Isolation-Policy (https://github.com/WordPress/gutenberg/pull/82614)
- Global Styles: Retain responsive styles in block style variation partials (https://github.com/WordPress/gutenberg/pull/82403)
- Editor: Add a fixedRenderingMode prop for contexts with one mode (https://github.com/WordPress/gutenberg/pull/82711)
- Site Editor v2: Show the template on the routes that show the site (https://github.com/WordPress/gutenberg/pull/82712)
- Fix: Navigation: block appender button is 26×24 instead of square (https://github.com/WordPress/gutenberg/pull/82718)
- Add missing listitem role to ConnectorItem. (https://github.com/WordPress/gutenberg/pull/82664)
- Block alignment: List unavailable wide and full alignments instead of hiding them (https://github.com/WordPress/gutenberg/pull/82600)
- Test: Make browser tests independent of execution order (https://github.com/WordPress/gutenberg/pull/82743)
- Project Management: Exclude private APIs config from CODEOWNERS (https://github.com/WordPress/gutenberg/pull/82750)
- Unit Tests: Resolve @ariakit/utils through its dependents (https://github.com/WordPress/gutenberg/pull/82756)
- Interface: Convert the package to TypeScript (https://github.com/WordPress/gutenberg/pull/82753)
- Grid: Migrate Emotion styles to SCSS Modules (https://github.com/WordPress/gutenberg/pull/82571)
- Test: Finish repository Vitest migration and expand Browser Mode coverage (https://github.com/WordPress/gutenberg/pull/82742)
- Plugin: Bump minimum required WordPress version to 7.0 (https://github.com/WordPress/gutenberg/pull/82404)
- Circular Option Picker: Show focus with button's outline ring (https://github.com/WordPress/gutenberg/pull/82521)
- Interface: Fix the ActionItem click handler and selector types (https://github.com/WordPress/gutenberg/pull/82758)
- Editor: Remove pass-through more menu Slot wrappers (https://github.com/WordPress/gutenberg/pull/82759)
- Upgrade React 19 to 19.3.0 (https://github.com/WordPress/gutenberg/pull/82760)
- Edit Post: Fix meta boxes unreachable in Code Editor split view (https://github.com/WordPress/gutenberg/pull/78644)
- Docs: Add blank line between `@since` and `@param`/`@return` in block parser (https://github.com/WordPress/gutenberg/pull/82690)
- UI: Add statusContent to searchable selects (https://github.com/WordPress/gutenberg/pull/82592)
- UI: Add CheckboxGroup form primitive (https://github.com/WordPress/gutenberg/pull/82556)
- Notice: add custom icon Storybook example (https://github.com/WordPress/gutenberg/pull/82762)
- Test: Remove obsolete internal test setup and transforms (https://github.com/WordPress/gutenberg/pull/82761)
- Code Modernization: Use null coalescing operator in `WP_Block_Parser` methods (https://github.com/WordPress/gutenberg/pull/82763)
- Global Styles UI: Use UI Menu (https://github.com/WordPress/gutenberg/pull/81921)
- Icons: Allow icons to ship to WordPress Core without exposing them in the Icon block  (https://github.com/WordPress/gutenberg/pull/82634)
- Fix doubly-zipped plugin artifacts in GitHub Actions (https://github.com/WordPress/gutenberg/pull/76857)
- Icons: Ship the admin bar and admin menu icons to WordPress Core (https://github.com/WordPress/gutenberg/pull/79451)
- Autocomplete: Show focus with design system's focus ring (https://github.com/WordPress/gutenberg/pull/82766)
- Keycodes: Add a shared keyboard shortcut representation helper (https://github.com/WordPress/gutenberg/pull/82632)
- CI: Scope the required trunk changes refresh to what a move can invalidate (https://github.com/WordPress/gutenberg/pull/82767)
- Editor: Honor post types in `post-thumbnails` theme support when registering the featured image field (https://github.com/WordPress/gutenberg/pull/82773)
- Docs: Clarify parent behavior during block registration (https://github.com/WordPress/gutenberg/pull/78967)
- Cover: Prevent content cutoff when aspect ratio is set in Safari (https://github.com/WordPress/gutenberg/pull/70152)
- Docs: Clarify dependency extraction asset filename (https://github.com/WordPress/gutenberg/pull/78968)
- Re-enable editableRoot for multi-selection on mobile web (https://github.com/WordPress/gutenberg/pull/81542)
- Post Taxonomies: Replace FormTokenField in the flat term selector (https://github.com/WordPress/gutenberg/pull/80967)
- E2E: Reset preferences in the post editor preload spec (https://github.com/WordPress/gutenberg/pull/82818)
- Fonts: Remove the deprecated Fonts API BC layer and leftovers (https://github.com/WordPress/gutenberg/pull/82813)
- Commands: Avoid re-registering command loaders on every render (https://github.com/WordPress/gutenberg/pull/82819)
- Data: Remove the unused AsyncModeConsumer export (https://github.com/WordPress/gutenberg/pull/82822)
- Tooling: Extract shared TypeScript configs into a `@wordpress/config-tools` workspace (https://github.com/WordPress/gutenberg/pull/82334)
- Style states: Improve block inspector UI (https://github.com/WordPress/gutenberg/pull/82649)
- Tooling: Add @wordpress/monorepo-tools to root devDependencies (https://github.com/WordPress/gutenberg/pull/82824)
- DataViews: replace `word-break` with `overflow-wrap: anywhere` on `DataForm` panel field control (https://github.com/WordPress/gutenberg/pull/82776)
- CI: Stop actions/setup-node from invoking the bundled npm (https://github.com/WordPress/gutenberg/pull/82775)
- CI: Keep the bundled npm when devEngines is absent (https://github.com/WordPress/gutenberg/pull/82823)
- Icons: Move plugin icon registration out of the 7.1 compat directory (https://github.com/WordPress/gutenberg/pull/82832)
- Image block: stop interpreting `$`/`\` in img attributes as regex backreferences (https://github.com/WordPress/gutenberg/pull/79369)
- CI: Disable setup-node npm caching in the Create Block packed package job (https://github.com/WordPress/gutenberg/pull/82833)
- Build: Deduplicate npm dependencies (https://github.com/WordPress/gutenberg/pull/82698)
- PaletteEdit: Use @wordpress/ui Menu for palette options (https://github.com/WordPress/gutenberg/pull/82768)
- Editor: Use UI Menu for post actions (https://github.com/WordPress/gutenberg/pull/81922)
- Block Editor: Use UI Menu for bindings and variation transforms (https://github.com/WordPress/gutenberg/pull/81925)
- Select.Positioner: Revert to Base UI alignItemWithTrigger default (https://github.com/WordPress/gutenberg/pull/82043)
- API Fetch: Document that requests are meant for the current site's REST API. (https://github.com/WordPress/gutenberg/pull/82373)
- UI: Add Select.ItemLabel and ItemDescription (https://github.com/WordPress/gutenberg/pull/82369)
- Widgets: Fix the Welcome Guide menu item triggering a preference speak message (https://github.com/WordPress/gutenberg/pull/82395)
- UI: Move interaction tests to Browser Mode (https://github.com/WordPress/gutenberg/pull/82838)
- Packages: Update Ariakit to 0.4.39 (https://github.com/WordPress/gutenberg/pull/82831)
- Block Editor: replace deprecated word-wrap with overflow-wrap in responsive block control (https://github.com/WordPress/gutenberg/pull/82855)
- Button: replace deprecated `word-break` with `overflow-wrap: anywhere` (https://github.com/WordPress/gutenberg/pull/82854)
- UI: Update Base UI to 1.8.0 (https://github.com/WordPress/gutenberg/pull/82835)
- Docs: Document published dependency constraints (https://github.com/WordPress/gutenberg/pull/80631)
- Docs: Document page stability convention (https://github.com/WordPress/gutenberg/pull/80632)
- Cover Block: Fix resizable handle visibility on mobile when sidebar is opened (https://github.com/WordPress/gutenberg/pull/80355)
- Block Inspector: Stabilize display of inherited global styles and keep UI changes behind experiment (https://github.com/WordPress/gutenberg/pull/82840)
- Data: optimize store listeners and their execution (https://github.com/WordPress/gutenberg/pull/82842)
- Core Data: Fix return types on generated save/delete entity actions (https://github.com/WordPress/gutenberg/pull/77162)
- Notes: Use UI Menu for note actions (https://github.com/WordPress/gutenberg/pull/81930)
- Widget Dashboard: Use UI Menu for dashboard controls (https://github.com/WordPress/gutenberg/pull/81929)
- Media & Text Block: Add a Media section to the block inspector panel (https://github.com/WordPress/gutenberg/pull/82593)
- Fields: Hide the date, author and password fields when the user can't publish or reassign (https://github.com/WordPress/gutenberg/pull/82844)
- Docs: Guard against ESLint bulk suppression abuse (https://github.com/WordPress/gutenberg/pull/82944)
- BorderBoxControl: Restore the split borders layout (https://github.com/WordPress/gutenberg/pull/82939)
- Icons: Restore the dimmed box on the side and corner icons (https://github.com/WordPress/gutenberg/pull/82940)
- Fields: Show the template field to users who can't create templates (https://github.com/WordPress/gutenberg/pull/82857)
- Calendar Block: Use the args array signature of get_calendar() (https://github.com/WordPress/gutenberg/pull/82943)
- DataViews README: clarify readOnly vs isDisabled (https://github.com/WordPress/gutenberg/pull/82956)
- Template panel: Hide edit and create actions from users who can't create templates (https://github.com/WordPress/gutenberg/pull/82858)
- Fix stray fill rule in SelectControl. (https://github.com/WordPress/gutenberg/pull/82949)
- Stroke icons: final batch, 96 icons (https://github.com/WordPress/gutenberg/pull/82754)
- Fix Stylelint config and coding standards for font weight numeric values and disallow relative weights (https://github.com/WordPress/gutenberg/pull/82778)
- Widget Dashboard: Use UI Spinner and remove Components dependency (https://github.com/WordPress/gutenberg/pull/82837)
- Fix: Inherit link color for image block anchor elements (https://github.com/WordPress/gutenberg/pull/79401)
- Data: Fix the latest changelog entry and structure (https://github.com/WordPress/gutenberg/pull/82959)
- Menu: Fix vertical alignment across item combinations (https://github.com/WordPress/gutenberg/pull/82847)
- Docs: Fix the dead anchor in the block development environment list (https://github.com/WordPress/gutenberg/pull/82878)
- Collaborators Presence: Update to use design system's focus ring in header avatar stack (https://github.com/WordPress/gutenberg/pull/82941)
- UI: Fix highlighted item indicator in forced-colors mode (https://github.com/WordPress/gutenberg/pull/82772)
- Docs: Fix the broken Query block link in the Interactivity API guide (https://github.com/WordPress/gutenberg/pull/82862)
- Fix: Widgets customizer Undo and Redo buttons are disabled and the document tools focus style is not visible (https://github.com/WordPress/gutenberg/pull/82412)
- DataForm: Hide the edit button of disabled fields in the panel layout (https://github.com/WordPress/gutenberg/pull/82957)
- BoxControl: Migrate the side indicator to an SCSS module (https://github.com/WordPress/gutenberg/pull/82570)
- Distraction Free: raise top bar above notices when revealed by hover or keyboard focus (https://github.com/WordPress/gutenberg/pull/80349)
- Extensible Site Editor: Use the view config form for Quick Edit (https://github.com/WordPress/gutenberg/pull/82962)
- Fix: Query Pagination block ignores the parent block gap in the editor (https://github.com/WordPress/gutenberg/pull/82399)
- Customize Widgets: Await asynchronous toolbar updates in history test (https://github.com/WordPress/gutenberg/pull/82963)
- Elevation: Migrate from Emotion to SCSS modules (https://github.com/WordPress/gutenberg/pull/82572)
- Enable viewport state values for Gallery aspect ratio (https://github.com/WordPress/gutenberg/pull/82233)
- Scripts: Switch unit tests to Vitest and deprecate Jest tooling (https://github.com/WordPress/gutenberg/pull/82843)
- Speed up collaboration e2e by shortening poll interval (https://github.com/WordPress/gutenberg/pull/78746)
- UI: replace deprecated word-wrap with overflow-wrap in `VisuallyHidden` (https://github.com/WordPress/gutenberg/pull/82970)
- Block Library: replace deprecated word-wrap with overflow-wrap in screen-reader-text (https://github.com/WordPress/gutenberg/pull/82972)
- CustomGradientPicker: Show the control point's focus ring with the design system's outline (https://github.com/WordPress/gutenberg/pull/82834)
- Fix: Default block gap is ignored in the editor for themes without block gap support (https://github.com/WordPress/gutenberg/pull/82401)
- Remove the zero width space hack from getRectangleFromRange (https://github.com/WordPress/gutenberg/pull/82977)
- Block Toolbar: Show the parent selector for blocks inside patterns (https://github.com/WordPress/gutenberg/pull/82912)
- Keep the iOS keyboard capitalized after Return inside the editing host (https://github.com/WordPress/gutenberg/pull/82911)
- Docs: Say how long a notice can be, in the copy guide (https://github.com/WordPress/gutenberg/pull/81195)
- Widget Primitives: add `HostLink` over the `links` capability (https://github.com/WordPress/gutenberg/pull/82952)
- Pattern block: Run autoembed() before do_blocks() (https://github.com/WordPress/gutenberg/pull/82860)
- Widget Dashboard: default tile padding to `padding-lg` (https://github.com/WordPress/gutenberg/pull/82961)
- Upgrade wp-prettier to 3.9.6 (https://github.com/WordPress/gutenberg/pull/82731)
- Fix prettier lint issues after prettier upgrade (https://github.com/WordPress/gutenberg/pull/83015)
- Widget Dashboard: show a clipped widget title in the header infotip (https://github.com/WordPress/gutenberg/pull/82226)
- Post Title: remove the inline-block from the title link (https://github.com/WordPress/gutenberg/pull/80231)
- Collaborators Presence & Document Bar: Clean up styles by removing overrides (https://github.com/WordPress/gutenberg/pull/83013)
- Docs: document the no-hard-wrap rule for Markdown (https://github.com/WordPress/gutenberg/pull/83017)
- Icons: Allow `rect` and `circle` in the registry sanitizer (https://github.com/WordPress/gutenberg/pull/82846)
- Upgrade wp-prettier to 3.9.6 final (https://github.com/WordPress/gutenberg/pull/83026)
- Fix: Navigation submenu detection leaks between Navigation blocks. (https://github.com/WordPress/gutenberg/pull/82366)
- Use `WCSelectControl` alias for legacy SelectControl imports (https://github.com/WordPress/gutenberg/pull/83027)
- Upload media: guard processItem against re-entrant dispatch (https://github.com/WordPress/gutenberg/pull/83031)
- Math: Source the LaTeX from the MathML annotation (https://github.com/WordPress/gutenberg/pull/82987)
- Remove the interactivity-router script module data shim (https://github.com/WordPress/gutenberg/pull/83011)
- Data: Add `getResolutionArgs` to share a resolution across selector calls (https://github.com/WordPress/gutenberg/pull/82638)
- Code: Add shadow support (https://github.com/WordPress/gutenberg/pull/83014)
- Footnotes: Add shadow support (https://github.com/WordPress/gutenberg/pull/83044)
- Excerpt: Add shadow support (https://github.com/WordPress/gutenberg/pull/83018)
- Content: Add shadow support (https://github.com/WordPress/gutenberg/pull/83016)
- Icons: Test the registry sanitizer with a data provider (https://github.com/WordPress/gutenberg/pull/83024)
- Heading: Add shadow support (https://github.com/WordPress/gutenberg/pull/83045)
- Details: Add shadow support (https://github.com/WordPress/gutenberg/pull/83021)
- Post template panel: Remove the dead template read capability check (https://github.com/WordPress/gutenberg/pull/82861)
- Dependency Extraction Webpack Plugin: Add global-styles-engine and global-styles-ui as bundled packages (https://github.com/WordPress/gutenberg/pull/82589)
- Verse: Add shadow support (https://github.com/WordPress/gutenberg/pull/83057)
- Docs: Data: Fix typo in code example for __unstableNormalizeArgs (https://github.com/WordPress/gutenberg/pull/83070)
- Icons: Test that the registry sanitizer preserves every library icon (https://github.com/WordPress/gutenberg/pull/83008)
- Stylelint: add `custom-property-pattern` to disallow `--_gcd-*` custom properties (https://github.com/WordPress/gutenberg/pull/83025)
- Tooling: Add .mts and .cts support (https://github.com/WordPress/gutenberg/pull/83071)
- Block Mover: Cleanup focus ring override (https://github.com/WordPress/gutenberg/pull/83068)
- Tests: Remove obsolete internal Jest infrastructure (https://github.com/WordPress/gutenberg/pull/82975)
- Move the unit-test-date.sh script to workspace, rewrite to JS (https://github.com/WordPress/gutenberg/pull/83066)
- Gallery: Skip gap style generation for themes opting out of layout styles (https://github.com/WordPress/gutenberg/pull/81633)
- Monorepo tools: Move the experimental API audit out of bin/ (https://github.com/WordPress/gutenberg/pull/83081)
- Add category filtering to the start page options patterns modal (https://github.com/WordPress/gutenberg/pull/81396)
- UI: Mark Select and SelectControl as recommended (https://github.com/WordPress/gutenberg/pull/83030)
- Updated Changelog Entry (https://github.com/WordPress/gutenberg/pull/83037)
- Rich text: fix mobile selection hair pin grab at edge of block (https://github.com/WordPress/gutenberg/pull/83041)
- Link Control: Only tag pages as the front page or blog home (https://github.com/WordPress/gutenberg/pull/83082)
- Tooling: Name the shared tsconfig presets `tsconfig.*.json` (https://github.com/WordPress/gutenberg/pull/83077)
- Multi-line text of menu items is not aligned (https://github.com/WordPress/gutenberg/pull/70917)
- Fix Connectors and Fonts pages background color and contrast. (https://github.com/WordPress/gutenberg/pull/82827)
- Post Template: Add shadow support (https://github.com/WordPress/gutenberg/pull/83059)
- Page List: Add shadow support (https://github.com/WordPress/gutenberg/pull/83056)
- Playlist: Add shadow support (https://github.com/WordPress/gutenberg/pull/83055)
- Math: Add shadow support (https://github.com/WordPress/gutenberg/pull/83052)
- Latest Posts: Add shadow support (https://github.com/WordPress/gutenberg/pull/83051)
- Latest Comments: Add shadow support (https://github.com/WordPress/gutenberg/pull/83047)
- Home Link: Add shadow support (https://github.com/WordPress/gutenberg/pull/83046)
- Login/out: Add shadow support (https://github.com/WordPress/gutenberg/pull/83050)
- Excerpt field: Render nothing when the excerpt is empty (https://github.com/WordPress/gutenberg/pull/82423)
- No Results: Add shadow support (https://github.com/WordPress/gutenberg/pull/83054)
- ESLint: Allow string literal IDs in tests and Storybook (https://github.com/WordPress/gutenberg/pull/83090)
- UI: Add RadioGroup form primitive (https://github.com/WordPress/gutenberg/pull/83038)
- Components: Deprecate Divider (https://github.com/WordPress/gutenberg/pull/83040)
- Data: Stabilize `__unstableNormalizeArgs` as `normalizeArgs` (https://github.com/WordPress/gutenberg/pull/83067)
- Stylelint: add  `--_wp-*`  to `custom-property-pattern` rule (https://github.com/WordPress/gutenberg/pull/83075)
- Build: Declare `@wordpress/theme` as a dev dependency of `@wordpress/build` (https://github.com/WordPress/gutenberg/pull/83129)
- UI: Tighten Fieldset legend and description gap (https://github.com/WordPress/gutenberg/pull/82729)
- Core Data: Fix overwriting scored matches for duplicate ids (https://github.com/WordPress/gutenberg/pull/83113)
- Block Editor: Update LinkControl and LinkPicker to use `Badge` from `@wordpress/ui` (https://github.com/WordPress/gutenberg/pull/82684)
- Storybook: Remove obsolete manifest extractor render workaround (https://github.com/WordPress/gutenberg/pull/83124)
- UI: Add Switch form primitive (https://github.com/WordPress/gutenberg/pull/83039)
- Automated Testing: Document and validate expected changelog structure (https://github.com/WordPress/gutenberg/pull/83043)
- ESLint: Disallow Storybook build-style side-effect imports (https://github.com/WordPress/gutenberg/pull/82960)
- Global Styles: replace experimental ZStack in the palette preview (https://github.com/WordPress/gutenberg/pull/83060)
- UI: Place Fieldset description after the legend in stories (https://github.com/WordPress/gutenberg/pull/83144)
- Use WCCheckboxControl alias for legacy CheckboxControl imports. (https://github.com/WordPress/gutenberg/pull/83145)
- The image dimensions have been removed from the name. (https://github.com/WordPress/gutenberg/pull/82828)
- Fix the high-severity adm-zip audit failure in AI development tests (https://github.com/WordPress/gutenberg/pull/83170)
- Bump adm-zip from 0.6.0 to 0.6.1 (https://github.com/WordPress/gutenberg/pull/83167)
- Post Navigation Link: Add shadow support (https://github.com/WordPress/gutenberg/pull/83058)
- Bump csv-parse from 7.0.1 to 7.0.2 in /test/ai-development (https://github.com/WordPress/gutenberg/pull/82619)
- Video block: Remove GIF variation handling (https://github.com/WordPress/gutenberg/pull/82696)
- PostLastRevisionPanel: Fix doubled focus ring on the revisions button (https://github.com/WordPress/gutenberg/pull/82955)
- Navigation Overlay Close: Add shadow support (https://github.com/WordPress/gutenberg/pull/83053)
- Fix typos in comments and test descriptions (https://github.com/WordPress/gutenberg/pull/83172)
- Block Editor: Remove the deprecated `__experimentalGroup` prop (https://github.com/WordPress/gutenberg/pull/83171)
- Site Tagline: Add fit text support (https://github.com/WordPress/gutenberg/pull/83034)
- Block Editor: Highlight the block when its content list item is hovered (https://github.com/WordPress/gutenberg/pull/83049)
- Navigation: Fix always-open submenus jumping in width on hover (https://github.com/WordPress/gutenberg/pull/83142)
- Post Navigation Link: Add border and spacing support (https://github.com/WordPress/gutenberg/pull/83122)
- Preformatted: Add shadow support (https://github.com/WordPress/gutenberg/pull/83174)
- Pullquote: Add shadow support (https://github.com/WordPress/gutenberg/pull/83177)
- Quote: Add shadow support (https://github.com/WordPress/gutenberg/pull/83178)
- Site Title: Add shadow support (https://github.com/WordPress/gutenberg/pull/83182)
- Post Title: Add shadow support (https://github.com/WordPress/gutenberg/pull/83195)
- Video: Add shadow support (https://github.com/WordPress/gutenberg/pull/83196)
- Read More: Add shadow support (https://github.com/WordPress/gutenberg/pull/83180)
- Post Terms: Add shadow support (https://github.com/WordPress/gutenberg/pull/83175)
- Query Total: Add shadow support (https://github.com/WordPress/gutenberg/pull/83176)
- RSS: Add shadow support (https://github.com/WordPress/gutenberg/pull/83179)
- Tab Panel: Add shadow support (https://github.com/WordPress/gutenberg/pull/83183)
- Post Time to Read: Add shadow support (https://github.com/WordPress/gutenberg/pull/83194)
- Tab Panels: Add shadow support (https://github.com/WordPress/gutenberg/pull/83184)
- UI: Document that public --wp-ui-* CSS custom properties are frozen. (https://github.com/WordPress/gutenberg/pull/83147)
- Tag Cloud: Add shadow support (https://github.com/WordPress/gutenberg/pull/83188)
- Table of Contents: Add shadow support (https://github.com/WordPress/gutenberg/pull/83187)
- Tabs: Add shadow support (https://github.com/WordPress/gutenberg/pull/83186)
- Term Description: Add shadow support (https://github.com/WordPress/gutenberg/pull/83190)
- Term Count: Add shadow support (https://github.com/WordPress/gutenberg/pull/83189)
- Site Tagline: Add shadow support (https://github.com/WordPress/gutenberg/pull/83181)
- Terms List: Add shadow support (https://github.com/WordPress/gutenberg/pull/83193)
- Details: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83222)
- Social Icons: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83249)
- Accordion Item: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83197)
- Post Author Name: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83200)
- Code: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83204)
- Comment Author Name: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83207)
- Comment Content: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83208)
- Comment Date: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83209)
- Term Template: Add shadow support (https://github.com/WordPress/gutenberg/pull/83192)
- Footnotes: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83224)
- Post Date: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83218)
- Comments Title: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83217)
- Gallery: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83225)
- Heading: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83226)
- Term Name: Add shadow support (https://github.com/WordPress/gutenberg/pull/83191)
- Breadcrumbs: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83202)
- Comment Reply Link: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83211)
- File: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83223)
- Post Author Biography: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83199)
- Next Page: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83232)
- Post Excerpt: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83221)
- Previous Page: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83240)
- Accordion Panel: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83201)
- Post Comments Count: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83213)
- RSS: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83244)
- Columns: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83206)
- Archives: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83198)
- Latest Posts: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83228)
- Preformatted: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83239)
- Comments Previous Page: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83220)
- Read More: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83245)
- Comments Pagination: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83219)
- Query Title: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83242)
- Post Title: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83260)
- Tag Cloud: Add background and link colour support (https://github.com/WordPress/gutenberg/pull/83264)
- Storybook: List every top-level folder in the sidebar order, design system first (https://github.com/WordPress/gutenberg/pull/82429)
- Featured image field: support the `editor.PostFeaturedImage` filter in the post summary (https://github.com/WordPress/gutenberg/pull/83133)
- Storybook: Fold Foundations, DataViews, Fields, Admin UI and Icons under Design System (https://github.com/WordPress/gutenberg/pull/82430)
- Block Editor: replace denylisted layout components in the Duotone filter label (https://github.com/WordPress/gutenberg/pull/83061)
- Storybook: Group Widget Primitives, Widget Dashboard and Grid under Widgets (https://github.com/WordPress/gutenberg/pull/82431)
- Storybook: Group the editor UI under Editor (https://github.com/WordPress/gutenberg/pull/82432)
- Components: Deprecate Elevation (https://github.com/WordPress/gutenberg/pull/83269)
- Post Time to Read: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83258)
- Buttons: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83203)
- Storybook: Group component packages under Components (https://github.com/WordPress/gutenberg/pull/82433)
- Terms List: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83257)
- UI: Add SwitchControl component (https://github.com/WordPress/gutenberg/pull/83146)
- Release tools: Move the plugin ZIP build out of bin/ (https://github.com/WordPress/gutenberg/pull/83087)
- Storybook: Remove the legacy Tokens pages (https://github.com/WordPress/gutenberg/pull/82434)
- Storybook: Show the component status in the sidebar as status-* tags (https://github.com/WordPress/gutenberg/pull/82435)
- Storybook: Guard the set of top-level sidebar folders with a test (https://github.com/WordPress/gutenberg/pull/82436)
- Storybook: Rewrite the introduction page as the front door of the design system (https://github.com/WordPress/gutenberg/pull/82437)
- Workflows: Refine and complete the push and pull_request branch filters (https://github.com/WordPress/gutenberg/pull/82744)
- Public API for supporting viewport states in custom controls (https://github.com/WordPress/gutenberg/pull/82741)
- Fix: Term Name block skips the term name display filters. (https://github.com/WordPress/gutenberg/pull/82365)
- Tag Cloud: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83259)
- Comments Next Page: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83215)
- Comments Page Numbers: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83216)
- Pagination: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83236)
- Comment Edit Link: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83210)
- Page Numbers: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83235)
- Column: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83205)
- Comments: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83212)
- Post Comments Form: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83214)
- Latest Comments: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83227)
- Home Link: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83230)
- Term Description: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83254)
- Storybook: Load the media editor package styles in its stories (https://github.com/WordPress/gutenberg/pull/83303)
- Site Tagline: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83246)
- Media Editor: fix crop canvas handlers and rotation ruler in RTL (https://github.com/WordPress/gutenberg/pull/83304)
- Site Title: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83247)
- Query Total: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83243)
- Tab Panels: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83250)
- Term Template: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83256)
- Term Count: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83253)
- Math: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83231)
- Tabs: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83252)
- Table of Contents: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83251)
- Tab Panel: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83248)
- Term Name: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83255)
- Page List: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83234)
- Login/out: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83229)
- No Results: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83233)
- Post Template: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83237)
- UI: Add RadioGroupControl (https://github.com/WordPress/gutenberg/pull/83143)
- Post Terms: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83238)
- Components: Deprecate Scrollable (https://github.com/WordPress/gutenberg/pull/83273)
- Storybook: Place RadioGroup, Switch, and SwitchControl under @wordpress-ui (https://github.com/WordPress/gutenberg/pull/83314)
- Block Editor: Show the in-between inserter on wrapped lines (https://github.com/WordPress/gutenberg/pull/83276)
- Docs: Add missing `@since` tags to two functions (https://github.com/WordPress/gutenberg/pull/83116)
- Upgrade eslint-plugin-jsdoc to latest version 64. (https://github.com/WordPress/gutenberg/pull/82727)
- i18n: add context to breadcrumbs area label (https://github.com/WordPress/gutenberg/pull/78134)
- Storybook: Omit the recommended checkmark from the sidebar (https://github.com/WordPress/gutenberg/pull/83309)
- Fix: Social Icons: In-between inserter does not work (https://github.com/WordPress/gutenberg/pull/83327)
- Storybook: Convert story-only stylesheets to CSS modules (https://github.com/WordPress/gutenberg/pull/83272)
- Block Editor: replace experimental ZStack in overlapping color indicators (https://github.com/WordPress/gutenberg/pull/83062)
- FocalPointPicker: Fix Sidebar Overflow Issue (https://github.com/WordPress/gutenberg/pull/68915)
- Storybook: Reject non-module stylesheet imports (https://github.com/WordPress/gutenberg/pull/83313)
- Components: Align CheckboxControl border, hover, and disabled colors with UI (https://github.com/WordPress/gutenberg/pull/83271)
- Icons: Move the public property from icons to collections (https://github.com/WordPress/gutenberg/pull/83277)
- ESLint Plugin: Check type-only imports for undeclared dependencies (https://github.com/WordPress/gutenberg/pull/83336)
- TypeScript: Give each widget its own typecheck project (https://github.com/WordPress/gutenberg/pull/83328)
- Components: Deprecate ResponsiveWrapper (https://github.com/WordPress/gutenberg/pull/83347)
- Remove npm from package engines (https://github.com/WordPress/gutenberg/pull/83326)
- Data: keep a pending listener when store not yet registered (https://github.com/WordPress/gutenberg/pull/83346)
- Add Template: Show template descriptions in the template list (https://github.com/WordPress/gutenberg/pull/83064)
- Block Editor: Consolidate search ranking into one shared module (https://github.com/WordPress/gutenberg/pull/83312)
- DataViews: Let a picker compose its footer from the page select and its actions (https://github.com/WordPress/gutenberg/pull/83281)
- Bump the github-actions group across 1 directory with 2 updates (https://github.com/WordPress/gutenberg/pull/83080)
- Rich text: Show the format boundary when the canvas root has focus (https://github.com/WordPress/gutenberg/pull/83385)
- Rich text: Select an inline image by clicking it, and show the edit UI of the object clicked (https://github.com/WordPress/gutenberg/pull/83370)
- Global Styles: Switch the revisions screen to the DataViews pickerActivity layout (https://github.com/WordPress/gutenberg/pull/80856)
- Try: Add left border to Notes panel. (https://github.com/WordPress/gutenberg/pull/83330)
- Media: Detect HEIC uploads from the file header rather than the file name (https://github.com/WordPress/gutenberg/pull/81737)
- Revise block direct dragging to fix adjacent issues (https://github.com/WordPress/gutenberg/pull/72983)
- Submenu: Add shadow support (https://github.com/WordPress/gutenberg/pull/83185)
- Disable caching when publishing built assets (https://github.com/WordPress/gutenberg/pull/79835)
- Tabs: Add border support (https://github.com/WordPress/gutenberg/pull/83361)
- Image: Restore alt text and caption when undoing a media editor save (https://github.com/WordPress/gutenberg/pull/82829)
- Accordion: Add link, heading, and button colour support (https://github.com/WordPress/gutenberg/pull/83373)
- Navigation Overlay Close: Add border support (https://github.com/WordPress/gutenberg/pull/83362)
- Tab Panel: Hide the shadow on closed panels (https://github.com/WordPress/gutenberg/pull/83369)
- Preformatted: Add link colour support (https://github.com/WordPress/gutenberg/pull/83386)
- Audio: Add link colour support (https://github.com/WordPress/gutenberg/pull/83375)
- No Results: Add heading and button colour support (https://github.com/WordPress/gutenberg/pull/83382)
- Comment Content: Add heading and button colour support (https://github.com/WordPress/gutenberg/pull/83376)
- Tab Panel: Add border support (https://github.com/WordPress/gutenberg/pull/83363)
- Comments: Add button colour support (https://github.com/WordPress/gutenberg/pull/83378)
- Accordion Item: Add link, heading, and button colour support (https://github.com/WordPress/gutenberg/pull/83371)
- Details: Add heading and button colour support (https://github.com/WordPress/gutenberg/pull/83381)
- Media & Text: Add button colour support (https://github.com/WordPress/gutenberg/pull/83380)
- Post Comments Form: Add button colour support (https://github.com/WordPress/gutenberg/pull/83377)
- Tab Panels: Add button colour support (https://github.com/WordPress/gutenberg/pull/83388)
- Post Content: Add button colour support (https://github.com/WordPress/gutenberg/pull/83379)
- Components: Stop rendering a hidden drag preview and a media query per draggable (https://github.com/WordPress/gutenberg/pull/83423)
- Post Template: Add heading and button colour support (https://github.com/WordPress/gutenberg/pull/83384)
- Table of Contents: Add text align support (https://github.com/WordPress/gutenberg/pull/83430)
- Group: Add text columns support (https://github.com/WordPress/gutenberg/pull/83425)
- Tabs: Add typography support (https://github.com/WordPress/gutenberg/pull/83431)
- Fields: Resolve the MediaEdit picker through the editor.MediaUpload filter (https://github.com/WordPress/gutenberg/pull/82678)
- Tab Panel: Add link, heading, and button colour support (https://github.com/WordPress/gutenberg/pull/83389)
- Global Styles: Rank block search results by title match (https://github.com/WordPress/gutenberg/pull/83435)
- Post Author Biography: Add text columns support (https://github.com/WordPress/gutenberg/pull/83424)
- Block Editor: Avoid a store subscription per inserter item (https://github.com/WordPress/gutenberg/pull/83434)
- Home Link: Add border support (https://github.com/WordPress/gutenberg/pull/83360)
- Tab Panels: Add typography support (https://github.com/WordPress/gutenberg/pull/83428)
- Tab Panel: Add typography support (https://github.com/WordPress/gutenberg/pull/83426)
- Storybook: Drop CustomSelectControlV2 stories and the unused WIP tag (https://github.com/WordPress/gutenberg/pull/83349)
- Docs: clarify DEWP asset file naming rule (https://github.com/WordPress/gutenberg/pull/80620)
- Components: Deprecate ZStack (https://github.com/WordPress/gutenberg/pull/83344)
- Media Utils: Stabilize `unstableFeaturedImageFlow` as `featuredImageFlow` (https://github.com/WordPress/gutenberg/pull/83439)
- Accordion Panel: Add link, heading, and button colour support (https://github.com/WordPress/gutenberg/pull/83374)
- Terms List: Add text columns support (https://github.com/WordPress/gutenberg/pull/83432)
- Enable setting position within viewport states (https://github.com/WordPress/gutenberg/pull/83094)
- Term Count: Add text align support (https://github.com/WordPress/gutenberg/pull/83429)
- Dependency Extraction Webpack Plugin: Always pretty-print PHP asset files (https://github.com/WordPress/gutenberg/pull/79650)
- Block Editor: Drop the O(n) tie-break in orderBy (https://github.com/WordPress/gutenberg/pull/83443)
- Cover Block: Add a Media section to the block inspector panel (https://github.com/WordPress/gutenberg/pull/82751)
- Admin bar: backport removal of site icon background from 7.1.1 (https://github.com/WordPress/gutenberg/pull/83433)
- Tests: Update Testing Library DOM to 10.4.2 (https://github.com/WordPress/gutenberg/pull/83279)
- Tabs: Add link, heading, and button colour support (https://github.com/WordPress/gutenberg/pull/83390)
- Icons: Add a core-admin collection for the admin interface (https://github.com/WordPress/gutenberg/pull/83261)
- Post Content: Add text align support (https://github.com/WordPress/gutenberg/pull/83427)
- Components: Give control labels an explicit foreground color (https://github.com/WordPress/gutenberg/pull/83318)
- Radio: Expand hit target without changing visual size (https://github.com/WordPress/gutenberg/pull/83275)
- Tests: Isolate deprecation warnings between cases (https://github.com/WordPress/gutenberg/pull/83097)
- Block Toolbar: Fix parent selector inserter for locked blocks (https://github.com/WordPress/gutenberg/pull/83444)
- Icon block: Don't render icons from non-public collections on the frontend (https://github.com/WordPress/gutenberg/pull/82774)
- Hide alignment control when nothing available. (https://github.com/WordPress/gutenberg/pull/83265)
- Fields: Use the post type labels in the featured image field and drop `mediaUploadProps` (https://github.com/WordPress/gutenberg/pull/83445)
- Icons: Rebalance a few, add other new icons. (https://github.com/WordPress/gutenberg/pull/83338)
- Docs: Replace retired reduce-motion mixin in animation guidelines (https://github.com/WordPress/gutenberg/pull/83335)
- Block Editor: Update block visibility badges to use from @wordpress/ui package (https://github.com/WordPress/gutenberg/pull/82670)
- PHP-only blocks: Detect enums in array attributes (https://github.com/WordPress/gutenberg/pull/83394)
- Data: Defer async-mode useSelect notification to idle time (https://github.com/WordPress/gutenberg/pull/82821)

Developed in https://github.com/WordPress/wordpress-develop/pull/14045.

Props wildworks.
Fixes #66254.


git-svn-id: https://develop.svn.wordpress.org/trunk@64223 602fd350-edb4-49c9-b593-d223f7449a82
wporg-sync pushed a commit to WordPress/WordPress that referenced this pull request Oct 7, 2026
This updates the pinned commit hash of the Gutenberg repository from `5715a61334c4d29f21b67cf34b46061dc1b62502` to `954fe7f9e04631c41aec4552acd627a7203a2aad` (version 24.1.0).

A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/50ad79ef7ebc5f1d2a75def068887e33a15f2634...954fe7f9e04631c41aec4552acd627a7203a2aad.

- Tabs: remove core's duplicate render_block_context filter (https://github.com/WordPress/gutenberg/pull/82610)
- Automated Testing: Fix unit test compatibility with Node.js v26 (https://github.com/WordPress/gutenberg/pull/82618)
- Test: Drop the jest-dom Vitest entry point from test files (https://github.com/WordPress/gutenberg/pull/82606)
- Packages: Replace stale jest types with the Vitest test environment (https://github.com/WordPress/gutenberg/pull/82605)
- Editor: Store the finalize response as the attachment record (https://github.com/WordPress/gutenberg/pull/81947)
- Update Style Engine block supports documentation (https://github.com/WordPress/gutenberg/pull/82585)
- Fix the high-severity sharp audit failure in AI development tests (https://github.com/WordPress/gutenberg/pull/82627)
- Bump vitest from 4.1.10 to 4.1.11 (https://github.com/WordPress/gutenberg/pull/82629)
- Editor: Render change diffs in the post title in revisions (https://github.com/WordPress/gutenberg/pull/82586)
- Editor: Derive post-only block list layout from the assigned template (https://github.com/WordPress/gutenberg/pull/82599)
- Gallery: Shorten "Use images attached to the post" button, add description (https://github.com/WordPress/gutenberg/pull/82617)
- Theme: Enforce active fill contrast (https://github.com/WordPress/gutenberg/pull/82542)
- UI: Reset completed calendar ranges by default (https://github.com/WordPress/gutenberg/pull/82612)
- Video block: switch to UI Badge (https://github.com/WordPress/gutenberg/pull/82441)
- DataViews: Remove obsolete Node 20 timezone test gate (https://github.com/WordPress/gutenberg/pull/82644)
- Disabled: keep the consumer className when isDisabled is false (https://github.com/WordPress/gutenberg/pull/82648)
- Autocompleters: Consider email address context in user mention (https://github.com/WordPress/gutenberg/pull/47249)
- Searchable selects: Hide creatable footer when it is filtered out (https://github.com/WordPress/gutenberg/pull/82566)
- Popover storybook: add infotip with link example (https://github.com/WordPress/gutenberg/pull/82653)
- Block editor, Components: Stop relying on Disabled class name (https://github.com/WordPress/gutenberg/pull/82651)
- FormTokenField: wrap to the last suggestion on ArrowUp with nothing selected (https://github.com/WordPress/gutenberg/pull/82646)
- Components: Match the @wordpress/ui disabled styles in form controls (https://github.com/WordPress/gutenberg/pull/82454)
- Framework: Update @types/node to v24 (https://github.com/WordPress/gutenberg/pull/82616)
- Bump vite from 8.2.1 to 8.2.2 (https://github.com/WordPress/gutenberg/pull/82668)
- Site editor v2: Use the canonical fields in the templates list (https://github.com/WordPress/gutenberg/pull/82666)
- api-fetch: Resolve to null for a 200 response with an empty body (https://github.com/WordPress/gutenberg/pull/79325)
- Site editor v2: Use the canonical wp_block fields in the patterns list (https://github.com/WordPress/gutenberg/pull/82672)
- Theme: Remove chroma capacity cache (https://github.com/WordPress/gutenberg/pull/82591)
- Remove the content-only inspector fields (block fields) experiment (https://github.com/WordPress/gutenberg/pull/82531)
- Site editor v2: templates take view config from endpoint (https://github.com/WordPress/gutenberg/pull/82456)
- Post URL: translate the copy permalink button label (https://github.com/WordPress/gutenberg/pull/82642)
- UI: Test Calendar raw-offset timezones (https://github.com/WordPress/gutenberg/pull/82658)
- DOM: Exclude visibility-hidden elements from focusable results (https://github.com/WordPress/gutenberg/pull/82574)
- Test: Update SWC dependencies (https://github.com/WordPress/gutenberg/pull/82660)
- Theme, Widget dashboard: Declare the @storybook/addon-docs dependency (https://github.com/WordPress/gutenberg/pull/82676)
- Update Playwright to 1.63.0 (https://github.com/WordPress/gutenberg/pull/82654)
- Site editor v2: patterns take view config from endpoint (https://github.com/WordPress/gutenberg/pull/82458)
- BlockPreview: Assert preview contents are inert (https://github.com/WordPress/gutenberg/pull/82682)
- Theme: Add bin-specific tsconfig with nodenext module resolution (https://github.com/WordPress/gutenberg/pull/82622)
- Block Editor: Remove the dead Write/Design editor tool plumbing (https://github.com/WordPress/gutenberg/pull/82677)
- Create Block: Test package at supported Node.js versions (https://github.com/WordPress/gutenberg/pull/82657)
- Update Actions and Octokit dependencies (https://github.com/WordPress/gutenberg/pull/82663)
- Theme: Use Node.js native type-stripping for scripts (https://github.com/WordPress/gutenberg/pull/82680)
- Build Scripts: Suggest --verbose when a type check fails (https://github.com/WordPress/gutenberg/pull/82604)
- e2e-test-utils-playwright: Update Lighthouse and web-vitals (https://github.com/WordPress/gutenberg/pull/81916)
- Test: Update Vitest to version 5 (https://github.com/WordPress/gutenberg/pull/82687)
- Site editor v2: template parts take view config from endpoint (https://github.com/WordPress/gutenberg/pull/82457)
- Theme: Reduce repeated color ramp search work (https://github.com/WordPress/gutenberg/pull/82545)
- Media: Only blame the browser's codecs when HEIC really cannot be decoded (https://github.com/WordPress/gutenberg/pull/82265)
- Site editor v2: Identity takes its form from the view config endpoint (https://github.com/WordPress/gutenberg/pull/82692)
- Storybook: Include stories in docgen TypeScript project (https://github.com/WordPress/gutenberg/pull/82694)
- Test: Root the Vitest browser project where its dependencies are declared (https://github.com/WordPress/gutenberg/pull/82699)
- Build: Fix regular CSS injection in Vitest Browser Mode (https://github.com/WordPress/gutenberg/pull/82154)
- Workflow: Replace cmdk with the @wordpress/ui Autocomplete primitive (https://github.com/WordPress/gutenberg/pull/82504)
- Add textShadow typography support and UI (https://github.com/WordPress/gutenberg/pull/79584)
- Block editor: migrate block-card Badge to UI Badge (https://github.com/WordPress/gutenberg/pull/82503)
- Bump github/codeql-action/upload-sarif (https://github.com/WordPress/gutenberg/pull/82339)
- Rich text: separate applying the selection from focusing the field (https://github.com/WordPress/gutenberg/pull/82581)
- Bump svgo from 3.3.4 to 3.3.5 (https://github.com/WordPress/gutenberg/pull/82631)
- Inner Blocks: Support legacy inherit-based layouts (https://github.com/WordPress/gutenberg/pull/82637)
- Bump js-yaml from 3.15.1 to 3.15.2 (https://github.com/WordPress/gutenberg/pull/82628)
- Bump colord from 2.9.3 to 2.9.4 (https://github.com/WordPress/gutenberg/pull/82625)
- Bump @humanfs/node from 0.16.7 to 0.16.8 (https://github.com/WordPress/gutenberg/pull/82352)
- Site Editor: Restore Global Styles access on the front page (https://github.com/WordPress/gutenberg/pull/82624)
- Bump browserslist from 4.28.4 to 4.28.7 (https://github.com/WordPress/gutenberg/pull/82315)
- Bump fast-uri from 3.1.5 to 3.1.7 (https://github.com/WordPress/gutenberg/pull/82351)
- DataViews: Label clickable grid media by the item title when the title is hidden (https://github.com/WordPress/gutenberg/pull/82639)
- Layout hooks: roll out usage of normalizeLegacyLayout to the block-editor layout hooks (https://github.com/WordPress/gutenberg/pull/82710)
- Checkbox: Expand hit target without changing visual size (https://github.com/WordPress/gutenberg/pull/82597)
- Components: Align CheckboxControl checkmark and disabled styles with UI (https://github.com/WordPress/gutenberg/pull/82555)
- Improve Math Inline and Block UI (https://github.com/WordPress/gutenberg/pull/77743)
- Widgets: carry declarative `attributes` through the widget pipeline (https://github.com/WordPress/gutenberg/pull/82485)
- Editor: Coerce `multiple` to a boolean in the media modal wrapper (https://github.com/WordPress/gutenberg/pull/82715)
- Packages: Backport the September 10 npm release metadata to trunk (https://github.com/WordPress/gutenberg/pull/82709)
- Update lerna to 10 and markdownlint-cli to 0.49.1 (https://github.com/WordPress/gutenberg/pull/81917)
- Navigation: don't force submenus open inside a custom overlay (https://github.com/WordPress/gutenberg/pull/82596)
- TextareaAutosize: Replace with native textareas and `field-sizing` (https://github.com/WordPress/gutenberg/pull/64208)
- Fields: Show a message in MediaEdit when the user can't upload media (https://github.com/WordPress/gutenberg/pull/82720)
- Fix playlist track selector stability (https://github.com/WordPress/gutenberg/pull/81760)
- Workflow: Remove deprecated word-wrapping (https://github.com/WordPress/gutenberg/pull/82562)
- Post publish panel: replace deprecated word-break with overflow-wrap (https://github.com/WordPress/gutenberg/pull/82495)
- CI: Run the required trunk changes check through the pr-baseline action (https://github.com/WordPress/gutenberg/pull/82725)
- Stroke icons: 3rd batch, 142 icon updates (https://github.com/WordPress/gutenberg/pull/82540)
- AI development tests: Use repository Node version (https://github.com/WordPress/gutenberg/pull/82662)
- Components: Clean up legacy focus/button overrides in Snackbar and Notice (https://github.com/WordPress/gutenberg/pull/82640)
- Command Palette: Only add the admin bar button when Core does not provide it (https://github.com/WordPress/gutenberg/pull/82733)
- Release: Verify SVN deployment after publication (https://github.com/WordPress/gutenberg/pull/82513)
- Test: Run rendered browser behavior in Vitest Browser Mode (https://github.com/WordPress/gutenberg/pull/80995)
- DOM: Find focusable image map areas (https://github.com/WordPress/gutenberg/pull/82736)
- Add backwards-compatible Y option to provider creator, do not use wp.sync directly in tests (https://github.com/WordPress/gutenberg/pull/82621)
- Fields: replace word-break with `overflow-wrap: anywhere` on slug permalink (https://github.com/WordPress/gutenberg/pull/82693)
- Env: Preserve complete lifecycle script error output (https://github.com/WordPress/gutenberg/pull/82735)
- Remove deprecated word-wrapping Stylelint suppressions (https://github.com/WordPress/gutenberg/pull/82426)
- Test: Stabilize Menu iframe listener lifecycle assertions (https://github.com/WordPress/gutenberg/pull/82575)
- Media: Stop injecting crossorigin attributes under Document-Isolation-Policy (https://github.com/WordPress/gutenberg/pull/82614)
- Global Styles: Retain responsive styles in block style variation partials (https://github.com/WordPress/gutenberg/pull/82403)
- Editor: Add a fixedRenderingMode prop for contexts with one mode (https://github.com/WordPress/gutenberg/pull/82711)
- Site Editor v2: Show the template on the routes that show the site (https://github.com/WordPress/gutenberg/pull/82712)
- Fix: Navigation: block appender button is 26×24 instead of square (https://github.com/WordPress/gutenberg/pull/82718)
- Add missing listitem role to ConnectorItem. (https://github.com/WordPress/gutenberg/pull/82664)
- Block alignment: List unavailable wide and full alignments instead of hiding them (https://github.com/WordPress/gutenberg/pull/82600)
- Test: Make browser tests independent of execution order (https://github.com/WordPress/gutenberg/pull/82743)
- Project Management: Exclude private APIs config from CODEOWNERS (https://github.com/WordPress/gutenberg/pull/82750)
- Unit Tests: Resolve @ariakit/utils through its dependents (https://github.com/WordPress/gutenberg/pull/82756)
- Interface: Convert the package to TypeScript (https://github.com/WordPress/gutenberg/pull/82753)
- Grid: Migrate Emotion styles to SCSS Modules (https://github.com/WordPress/gutenberg/pull/82571)
- Test: Finish repository Vitest migration and expand Browser Mode coverage (https://github.com/WordPress/gutenberg/pull/82742)
- Plugin: Bump minimum required WordPress version to 7.0 (https://github.com/WordPress/gutenberg/pull/82404)
- Circular Option Picker: Show focus with button's outline ring (https://github.com/WordPress/gutenberg/pull/82521)
- Interface: Fix the ActionItem click handler and selector types (https://github.com/WordPress/gutenberg/pull/82758)
- Editor: Remove pass-through more menu Slot wrappers (https://github.com/WordPress/gutenberg/pull/82759)
- Upgrade React 19 to 19.3.0 (https://github.com/WordPress/gutenberg/pull/82760)
- Edit Post: Fix meta boxes unreachable in Code Editor split view (https://github.com/WordPress/gutenberg/pull/78644)
- Docs: Add blank line between `@since` and `@param`/`@return` in block parser (https://github.com/WordPress/gutenberg/pull/82690)
- UI: Add statusContent to searchable selects (https://github.com/WordPress/gutenberg/pull/82592)
- UI: Add CheckboxGroup form primitive (https://github.com/WordPress/gutenberg/pull/82556)
- Notice: add custom icon Storybook example (https://github.com/WordPress/gutenberg/pull/82762)
- Test: Remove obsolete internal test setup and transforms (https://github.com/WordPress/gutenberg/pull/82761)
- Code Modernization: Use null coalescing operator in `WP_Block_Parser` methods (https://github.com/WordPress/gutenberg/pull/82763)
- Global Styles UI: Use UI Menu (https://github.com/WordPress/gutenberg/pull/81921)
- Icons: Allow icons to ship to WordPress Core without exposing them in the Icon block  (https://github.com/WordPress/gutenberg/pull/82634)
- Fix doubly-zipped plugin artifacts in GitHub Actions (https://github.com/WordPress/gutenberg/pull/76857)
- Icons: Ship the admin bar and admin menu icons to WordPress Core (https://github.com/WordPress/gutenberg/pull/79451)
- Autocomplete: Show focus with design system's focus ring (https://github.com/WordPress/gutenberg/pull/82766)
- Keycodes: Add a shared keyboard shortcut representation helper (https://github.com/WordPress/gutenberg/pull/82632)
- CI: Scope the required trunk changes refresh to what a move can invalidate (https://github.com/WordPress/gutenberg/pull/82767)
- Editor: Honor post types in `post-thumbnails` theme support when registering the featured image field (https://github.com/WordPress/gutenberg/pull/82773)
- Docs: Clarify parent behavior during block registration (https://github.com/WordPress/gutenberg/pull/78967)
- Cover: Prevent content cutoff when aspect ratio is set in Safari (https://github.com/WordPress/gutenberg/pull/70152)
- Docs: Clarify dependency extraction asset filename (https://github.com/WordPress/gutenberg/pull/78968)
- Re-enable editableRoot for multi-selection on mobile web (https://github.com/WordPress/gutenberg/pull/81542)
- Post Taxonomies: Replace FormTokenField in the flat term selector (https://github.com/WordPress/gutenberg/pull/80967)
- E2E: Reset preferences in the post editor preload spec (https://github.com/WordPress/gutenberg/pull/82818)
- Fonts: Remove the deprecated Fonts API BC layer and leftovers (https://github.com/WordPress/gutenberg/pull/82813)
- Commands: Avoid re-registering command loaders on every render (https://github.com/WordPress/gutenberg/pull/82819)
- Data: Remove the unused AsyncModeConsumer export (https://github.com/WordPress/gutenberg/pull/82822)
- Tooling: Extract shared TypeScript configs into a `@wordpress/config-tools` workspace (https://github.com/WordPress/gutenberg/pull/82334)
- Style states: Improve block inspector UI (https://github.com/WordPress/gutenberg/pull/82649)
- Tooling: Add @wordpress/monorepo-tools to root devDependencies (https://github.com/WordPress/gutenberg/pull/82824)
- DataViews: replace `word-break` with `overflow-wrap: anywhere` on `DataForm` panel field control (https://github.com/WordPress/gutenberg/pull/82776)
- CI: Stop actions/setup-node from invoking the bundled npm (https://github.com/WordPress/gutenberg/pull/82775)
- CI: Keep the bundled npm when devEngines is absent (https://github.com/WordPress/gutenberg/pull/82823)
- Icons: Move plugin icon registration out of the 7.1 compat directory (https://github.com/WordPress/gutenberg/pull/82832)
- Image block: stop interpreting `$`/`\` in img attributes as regex backreferences (https://github.com/WordPress/gutenberg/pull/79369)
- CI: Disable setup-node npm caching in the Create Block packed package job (https://github.com/WordPress/gutenberg/pull/82833)
- Build: Deduplicate npm dependencies (https://github.com/WordPress/gutenberg/pull/82698)
- PaletteEdit: Use @wordpress/ui Menu for palette options (https://github.com/WordPress/gutenberg/pull/82768)
- Editor: Use UI Menu for post actions (https://github.com/WordPress/gutenberg/pull/81922)
- Block Editor: Use UI Menu for bindings and variation transforms (https://github.com/WordPress/gutenberg/pull/81925)
- Select.Positioner: Revert to Base UI alignItemWithTrigger default (https://github.com/WordPress/gutenberg/pull/82043)
- API Fetch: Document that requests are meant for the current site's REST API. (https://github.com/WordPress/gutenberg/pull/82373)
- UI: Add Select.ItemLabel and ItemDescription (https://github.com/WordPress/gutenberg/pull/82369)
- Widgets: Fix the Welcome Guide menu item triggering a preference speak message (https://github.com/WordPress/gutenberg/pull/82395)
- UI: Move interaction tests to Browser Mode (https://github.com/WordPress/gutenberg/pull/82838)
- Packages: Update Ariakit to 0.4.39 (https://github.com/WordPress/gutenberg/pull/82831)
- Block Editor: replace deprecated word-wrap with overflow-wrap in responsive block control (https://github.com/WordPress/gutenberg/pull/82855)
- Button: replace deprecated `word-break` with `overflow-wrap: anywhere` (https://github.com/WordPress/gutenberg/pull/82854)
- UI: Update Base UI to 1.8.0 (https://github.com/WordPress/gutenberg/pull/82835)
- Docs: Document published dependency constraints (https://github.com/WordPress/gutenberg/pull/80631)
- Docs: Document page stability convention (https://github.com/WordPress/gutenberg/pull/80632)
- Cover Block: Fix resizable handle visibility on mobile when sidebar is opened (https://github.com/WordPress/gutenberg/pull/80355)
- Block Inspector: Stabilize display of inherited global styles and keep UI changes behind experiment (https://github.com/WordPress/gutenberg/pull/82840)
- Data: optimize store listeners and their execution (https://github.com/WordPress/gutenberg/pull/82842)
- Core Data: Fix return types on generated save/delete entity actions (https://github.com/WordPress/gutenberg/pull/77162)
- Notes: Use UI Menu for note actions (https://github.com/WordPress/gutenberg/pull/81930)
- Widget Dashboard: Use UI Menu for dashboard controls (https://github.com/WordPress/gutenberg/pull/81929)
- Media & Text Block: Add a Media section to the block inspector panel (https://github.com/WordPress/gutenberg/pull/82593)
- Fields: Hide the date, author and password fields when the user can't publish or reassign (https://github.com/WordPress/gutenberg/pull/82844)
- Docs: Guard against ESLint bulk suppression abuse (https://github.com/WordPress/gutenberg/pull/82944)
- BorderBoxControl: Restore the split borders layout (https://github.com/WordPress/gutenberg/pull/82939)
- Icons: Restore the dimmed box on the side and corner icons (https://github.com/WordPress/gutenberg/pull/82940)
- Fields: Show the template field to users who can't create templates (https://github.com/WordPress/gutenberg/pull/82857)
- Calendar Block: Use the args array signature of get_calendar() (https://github.com/WordPress/gutenberg/pull/82943)
- DataViews README: clarify readOnly vs isDisabled (https://github.com/WordPress/gutenberg/pull/82956)
- Template panel: Hide edit and create actions from users who can't create templates (https://github.com/WordPress/gutenberg/pull/82858)
- Fix stray fill rule in SelectControl. (https://github.com/WordPress/gutenberg/pull/82949)
- Stroke icons: final batch, 96 icons (https://github.com/WordPress/gutenberg/pull/82754)
- Fix Stylelint config and coding standards for font weight numeric values and disallow relative weights (https://github.com/WordPress/gutenberg/pull/82778)
- Widget Dashboard: Use UI Spinner and remove Components dependency (https://github.com/WordPress/gutenberg/pull/82837)
- Fix: Inherit link color for image block anchor elements (https://github.com/WordPress/gutenberg/pull/79401)
- Data: Fix the latest changelog entry and structure (https://github.com/WordPress/gutenberg/pull/82959)
- Menu: Fix vertical alignment across item combinations (https://github.com/WordPress/gutenberg/pull/82847)
- Docs: Fix the dead anchor in the block development environment list (https://github.com/WordPress/gutenberg/pull/82878)
- Collaborators Presence: Update to use design system's focus ring in header avatar stack (https://github.com/WordPress/gutenberg/pull/82941)
- UI: Fix highlighted item indicator in forced-colors mode (https://github.com/WordPress/gutenberg/pull/82772)
- Docs: Fix the broken Query block link in the Interactivity API guide (https://github.com/WordPress/gutenberg/pull/82862)
- Fix: Widgets customizer Undo and Redo buttons are disabled and the document tools focus style is not visible (https://github.com/WordPress/gutenberg/pull/82412)
- DataForm: Hide the edit button of disabled fields in the panel layout (https://github.com/WordPress/gutenberg/pull/82957)
- BoxControl: Migrate the side indicator to an SCSS module (https://github.com/WordPress/gutenberg/pull/82570)
- Distraction Free: raise top bar above notices when revealed by hover or keyboard focus (https://github.com/WordPress/gutenberg/pull/80349)
- Extensible Site Editor: Use the view config form for Quick Edit (https://github.com/WordPress/gutenberg/pull/82962)
- Fix: Query Pagination block ignores the parent block gap in the editor (https://github.com/WordPress/gutenberg/pull/82399)
- Customize Widgets: Await asynchronous toolbar updates in history test (https://github.com/WordPress/gutenberg/pull/82963)
- Elevation: Migrate from Emotion to SCSS modules (https://github.com/WordPress/gutenberg/pull/82572)
- Enable viewport state values for Gallery aspect ratio (https://github.com/WordPress/gutenberg/pull/82233)
- Scripts: Switch unit tests to Vitest and deprecate Jest tooling (https://github.com/WordPress/gutenberg/pull/82843)
- Speed up collaboration e2e by shortening poll interval (https://github.com/WordPress/gutenberg/pull/78746)
- UI: replace deprecated word-wrap with overflow-wrap in `VisuallyHidden` (https://github.com/WordPress/gutenberg/pull/82970)
- Block Library: replace deprecated word-wrap with overflow-wrap in screen-reader-text (https://github.com/WordPress/gutenberg/pull/82972)
- CustomGradientPicker: Show the control point's focus ring with the design system's outline (https://github.com/WordPress/gutenberg/pull/82834)
- Fix: Default block gap is ignored in the editor for themes without block gap support (https://github.com/WordPress/gutenberg/pull/82401)
- Remove the zero width space hack from getRectangleFromRange (https://github.com/WordPress/gutenberg/pull/82977)
- Block Toolbar: Show the parent selector for blocks inside patterns (https://github.com/WordPress/gutenberg/pull/82912)
- Keep the iOS keyboard capitalized after Return inside the editing host (https://github.com/WordPress/gutenberg/pull/82911)
- Docs: Say how long a notice can be, in the copy guide (https://github.com/WordPress/gutenberg/pull/81195)
- Widget Primitives: add `HostLink` over the `links` capability (https://github.com/WordPress/gutenberg/pull/82952)
- Pattern block: Run autoembed() before do_blocks() (https://github.com/WordPress/gutenberg/pull/82860)
- Widget Dashboard: default tile padding to `padding-lg` (https://github.com/WordPress/gutenberg/pull/82961)
- Upgrade wp-prettier to 3.9.6 (https://github.com/WordPress/gutenberg/pull/82731)
- Fix prettier lint issues after prettier upgrade (https://github.com/WordPress/gutenberg/pull/83015)
- Widget Dashboard: show a clipped widget title in the header infotip (https://github.com/WordPress/gutenberg/pull/82226)
- Post Title: remove the inline-block from the title link (https://github.com/WordPress/gutenberg/pull/80231)
- Collaborators Presence & Document Bar: Clean up styles by removing overrides (https://github.com/WordPress/gutenberg/pull/83013)
- Docs: document the no-hard-wrap rule for Markdown (https://github.com/WordPress/gutenberg/pull/83017)
- Icons: Allow `rect` and `circle` in the registry sanitizer (https://github.com/WordPress/gutenberg/pull/82846)
- Upgrade wp-prettier to 3.9.6 final (https://github.com/WordPress/gutenberg/pull/83026)
- Fix: Navigation submenu detection leaks between Navigation blocks. (https://github.com/WordPress/gutenberg/pull/82366)
- Use `WCSelectControl` alias for legacy SelectControl imports (https://github.com/WordPress/gutenberg/pull/83027)
- Upload media: guard processItem against re-entrant dispatch (https://github.com/WordPress/gutenberg/pull/83031)
- Math: Source the LaTeX from the MathML annotation (https://github.com/WordPress/gutenberg/pull/82987)
- Remove the interactivity-router script module data shim (https://github.com/WordPress/gutenberg/pull/83011)
- Data: Add `getResolutionArgs` to share a resolution across selector calls (https://github.com/WordPress/gutenberg/pull/82638)
- Code: Add shadow support (https://github.com/WordPress/gutenberg/pull/83014)
- Footnotes: Add shadow support (https://github.com/WordPress/gutenberg/pull/83044)
- Excerpt: Add shadow support (https://github.com/WordPress/gutenberg/pull/83018)
- Content: Add shadow support (https://github.com/WordPress/gutenberg/pull/83016)
- Icons: Test the registry sanitizer with a data provider (https://github.com/WordPress/gutenberg/pull/83024)
- Heading: Add shadow support (https://github.com/WordPress/gutenberg/pull/83045)
- Details: Add shadow support (https://github.com/WordPress/gutenberg/pull/83021)
- Post template panel: Remove the dead template read capability check (https://github.com/WordPress/gutenberg/pull/82861)
- Dependency Extraction Webpack Plugin: Add global-styles-engine and global-styles-ui as bundled packages (https://github.com/WordPress/gutenberg/pull/82589)
- Verse: Add shadow support (https://github.com/WordPress/gutenberg/pull/83057)
- Docs: Data: Fix typo in code example for __unstableNormalizeArgs (https://github.com/WordPress/gutenberg/pull/83070)
- Icons: Test that the registry sanitizer preserves every library icon (https://github.com/WordPress/gutenberg/pull/83008)
- Stylelint: add `custom-property-pattern` to disallow `--_gcd-*` custom properties (https://github.com/WordPress/gutenberg/pull/83025)
- Tooling: Add .mts and .cts support (https://github.com/WordPress/gutenberg/pull/83071)
- Block Mover: Cleanup focus ring override (https://github.com/WordPress/gutenberg/pull/83068)
- Tests: Remove obsolete internal Jest infrastructure (https://github.com/WordPress/gutenberg/pull/82975)
- Move the unit-test-date.sh script to workspace, rewrite to JS (https://github.com/WordPress/gutenberg/pull/83066)
- Gallery: Skip gap style generation for themes opting out of layout styles (https://github.com/WordPress/gutenberg/pull/81633)
- Monorepo tools: Move the experimental API audit out of bin/ (https://github.com/WordPress/gutenberg/pull/83081)
- Add category filtering to the start page options patterns modal (https://github.com/WordPress/gutenberg/pull/81396)
- UI: Mark Select and SelectControl as recommended (https://github.com/WordPress/gutenberg/pull/83030)
- Updated Changelog Entry (https://github.com/WordPress/gutenberg/pull/83037)
- Rich text: fix mobile selection hair pin grab at edge of block (https://github.com/WordPress/gutenberg/pull/83041)
- Link Control: Only tag pages as the front page or blog home (https://github.com/WordPress/gutenberg/pull/83082)
- Tooling: Name the shared tsconfig presets `tsconfig.*.json` (https://github.com/WordPress/gutenberg/pull/83077)
- Multi-line text of menu items is not aligned (https://github.com/WordPress/gutenberg/pull/70917)
- Fix Connectors and Fonts pages background color and contrast. (https://github.com/WordPress/gutenberg/pull/82827)
- Post Template: Add shadow support (https://github.com/WordPress/gutenberg/pull/83059)
- Page List: Add shadow support (https://github.com/WordPress/gutenberg/pull/83056)
- Playlist: Add shadow support (https://github.com/WordPress/gutenberg/pull/83055)
- Math: Add shadow support (https://github.com/WordPress/gutenberg/pull/83052)
- Latest Posts: Add shadow support (https://github.com/WordPress/gutenberg/pull/83051)
- Latest Comments: Add shadow support (https://github.com/WordPress/gutenberg/pull/83047)
- Home Link: Add shadow support (https://github.com/WordPress/gutenberg/pull/83046)
- Login/out: Add shadow support (https://github.com/WordPress/gutenberg/pull/83050)
- Excerpt field: Render nothing when the excerpt is empty (https://github.com/WordPress/gutenberg/pull/82423)
- No Results: Add shadow support (https://github.com/WordPress/gutenberg/pull/83054)
- ESLint: Allow string literal IDs in tests and Storybook (https://github.com/WordPress/gutenberg/pull/83090)
- UI: Add RadioGroup form primitive (https://github.com/WordPress/gutenberg/pull/83038)
- Components: Deprecate Divider (https://github.com/WordPress/gutenberg/pull/83040)
- Data: Stabilize `__unstableNormalizeArgs` as `normalizeArgs` (https://github.com/WordPress/gutenberg/pull/83067)
- Stylelint: add  `--_wp-*`  to `custom-property-pattern` rule (https://github.com/WordPress/gutenberg/pull/83075)
- Build: Declare `@wordpress/theme` as a dev dependency of `@wordpress/build` (https://github.com/WordPress/gutenberg/pull/83129)
- UI: Tighten Fieldset legend and description gap (https://github.com/WordPress/gutenberg/pull/82729)
- Core Data: Fix overwriting scored matches for duplicate ids (https://github.com/WordPress/gutenberg/pull/83113)
- Block Editor: Update LinkControl and LinkPicker to use `Badge` from `@wordpress/ui` (https://github.com/WordPress/gutenberg/pull/82684)
- Storybook: Remove obsolete manifest extractor render workaround (https://github.com/WordPress/gutenberg/pull/83124)
- UI: Add Switch form primitive (https://github.com/WordPress/gutenberg/pull/83039)
- Automated Testing: Document and validate expected changelog structure (https://github.com/WordPress/gutenberg/pull/83043)
- ESLint: Disallow Storybook build-style side-effect imports (https://github.com/WordPress/gutenberg/pull/82960)
- Global Styles: replace experimental ZStack in the palette preview (https://github.com/WordPress/gutenberg/pull/83060)
- UI: Place Fieldset description after the legend in stories (https://github.com/WordPress/gutenberg/pull/83144)
- Use WCCheckboxControl alias for legacy CheckboxControl imports. (https://github.com/WordPress/gutenberg/pull/83145)
- The image dimensions have been removed from the name. (https://github.com/WordPress/gutenberg/pull/82828)
- Fix the high-severity adm-zip audit failure in AI development tests (https://github.com/WordPress/gutenberg/pull/83170)
- Bump adm-zip from 0.6.0 to 0.6.1 (https://github.com/WordPress/gutenberg/pull/83167)
- Post Navigation Link: Add shadow support (https://github.com/WordPress/gutenberg/pull/83058)
- Bump csv-parse from 7.0.1 to 7.0.2 in /test/ai-development (https://github.com/WordPress/gutenberg/pull/82619)
- Video block: Remove GIF variation handling (https://github.com/WordPress/gutenberg/pull/82696)
- PostLastRevisionPanel: Fix doubled focus ring on the revisions button (https://github.com/WordPress/gutenberg/pull/82955)
- Navigation Overlay Close: Add shadow support (https://github.com/WordPress/gutenberg/pull/83053)
- Fix typos in comments and test descriptions (https://github.com/WordPress/gutenberg/pull/83172)
- Block Editor: Remove the deprecated `__experimentalGroup` prop (https://github.com/WordPress/gutenberg/pull/83171)
- Site Tagline: Add fit text support (https://github.com/WordPress/gutenberg/pull/83034)
- Block Editor: Highlight the block when its content list item is hovered (https://github.com/WordPress/gutenberg/pull/83049)
- Navigation: Fix always-open submenus jumping in width on hover (https://github.com/WordPress/gutenberg/pull/83142)
- Post Navigation Link: Add border and spacing support (https://github.com/WordPress/gutenberg/pull/83122)
- Preformatted: Add shadow support (https://github.com/WordPress/gutenberg/pull/83174)
- Pullquote: Add shadow support (https://github.com/WordPress/gutenberg/pull/83177)
- Quote: Add shadow support (https://github.com/WordPress/gutenberg/pull/83178)
- Site Title: Add shadow support (https://github.com/WordPress/gutenberg/pull/83182)
- Post Title: Add shadow support (https://github.com/WordPress/gutenberg/pull/83195)
- Video: Add shadow support (https://github.com/WordPress/gutenberg/pull/83196)
- Read More: Add shadow support (https://github.com/WordPress/gutenberg/pull/83180)
- Post Terms: Add shadow support (https://github.com/WordPress/gutenberg/pull/83175)
- Query Total: Add shadow support (https://github.com/WordPress/gutenberg/pull/83176)
- RSS: Add shadow support (https://github.com/WordPress/gutenberg/pull/83179)
- Tab Panel: Add shadow support (https://github.com/WordPress/gutenberg/pull/83183)
- Post Time to Read: Add shadow support (https://github.com/WordPress/gutenberg/pull/83194)
- Tab Panels: Add shadow support (https://github.com/WordPress/gutenberg/pull/83184)
- UI: Document that public --wp-ui-* CSS custom properties are frozen. (https://github.com/WordPress/gutenberg/pull/83147)
- Tag Cloud: Add shadow support (https://github.com/WordPress/gutenberg/pull/83188)
- Table of Contents: Add shadow support (https://github.com/WordPress/gutenberg/pull/83187)
- Tabs: Add shadow support (https://github.com/WordPress/gutenberg/pull/83186)
- Term Description: Add shadow support (https://github.com/WordPress/gutenberg/pull/83190)
- Term Count: Add shadow support (https://github.com/WordPress/gutenberg/pull/83189)
- Site Tagline: Add shadow support (https://github.com/WordPress/gutenberg/pull/83181)
- Terms List: Add shadow support (https://github.com/WordPress/gutenberg/pull/83193)
- Details: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83222)
- Social Icons: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83249)
- Accordion Item: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83197)
- Post Author Name: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83200)
- Code: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83204)
- Comment Author Name: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83207)
- Comment Content: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83208)
- Comment Date: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83209)
- Term Template: Add shadow support (https://github.com/WordPress/gutenberg/pull/83192)
- Footnotes: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83224)
- Post Date: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83218)
- Comments Title: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83217)
- Gallery: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83225)
- Heading: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83226)
- Term Name: Add shadow support (https://github.com/WordPress/gutenberg/pull/83191)
- Breadcrumbs: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83202)
- Comment Reply Link: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83211)
- File: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83223)
- Post Author Biography: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83199)
- Next Page: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83232)
- Post Excerpt: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83221)
- Previous Page: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83240)
- Accordion Panel: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83201)
- Post Comments Count: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83213)
- RSS: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83244)
- Columns: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83206)
- Archives: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83198)
- Latest Posts: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83228)
- Preformatted: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83239)
- Comments Previous Page: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83220)
- Read More: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83245)
- Comments Pagination: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83219)
- Query Title: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83242)
- Post Title: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83260)
- Tag Cloud: Add background and link colour support (https://github.com/WordPress/gutenberg/pull/83264)
- Storybook: List every top-level folder in the sidebar order, design system first (https://github.com/WordPress/gutenberg/pull/82429)
- Featured image field: support the `editor.PostFeaturedImage` filter in the post summary (https://github.com/WordPress/gutenberg/pull/83133)
- Storybook: Fold Foundations, DataViews, Fields, Admin UI and Icons under Design System (https://github.com/WordPress/gutenberg/pull/82430)
- Block Editor: replace denylisted layout components in the Duotone filter label (https://github.com/WordPress/gutenberg/pull/83061)
- Storybook: Group Widget Primitives, Widget Dashboard and Grid under Widgets (https://github.com/WordPress/gutenberg/pull/82431)
- Storybook: Group the editor UI under Editor (https://github.com/WordPress/gutenberg/pull/82432)
- Components: Deprecate Elevation (https://github.com/WordPress/gutenberg/pull/83269)
- Post Time to Read: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83258)
- Buttons: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83203)
- Storybook: Group component packages under Components (https://github.com/WordPress/gutenberg/pull/82433)
- Terms List: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83257)
- UI: Add SwitchControl component (https://github.com/WordPress/gutenberg/pull/83146)
- Release tools: Move the plugin ZIP build out of bin/ (https://github.com/WordPress/gutenberg/pull/83087)
- Storybook: Remove the legacy Tokens pages (https://github.com/WordPress/gutenberg/pull/82434)
- Storybook: Show the component status in the sidebar as status-* tags (https://github.com/WordPress/gutenberg/pull/82435)
- Storybook: Guard the set of top-level sidebar folders with a test (https://github.com/WordPress/gutenberg/pull/82436)
- Storybook: Rewrite the introduction page as the front door of the design system (https://github.com/WordPress/gutenberg/pull/82437)
- Workflows: Refine and complete the push and pull_request branch filters (https://github.com/WordPress/gutenberg/pull/82744)
- Public API for supporting viewport states in custom controls (https://github.com/WordPress/gutenberg/pull/82741)
- Fix: Term Name block skips the term name display filters. (https://github.com/WordPress/gutenberg/pull/82365)
- Tag Cloud: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83259)
- Comments Next Page: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83215)
- Comments Page Numbers: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83216)
- Pagination: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83236)
- Comment Edit Link: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83210)
- Page Numbers: Add background gradient support (https://github.com/WordPress/gutenberg/pull/83235)
- Column: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83205)
- Comments: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83212)
- Post Comments Form: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83214)
- Latest Comments: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83227)
- Home Link: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83230)
- Term Description: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83254)
- Storybook: Load the media editor package styles in its stories (https://github.com/WordPress/gutenberg/pull/83303)
- Site Tagline: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83246)
- Media Editor: fix crop canvas handlers and rotation ruler in RTL (https://github.com/WordPress/gutenberg/pull/83304)
- Site Title: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83247)
- Query Total: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83243)
- Tab Panels: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83250)
- Term Template: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83256)
- Term Count: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83253)
- Math: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83231)
- Tabs: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83252)
- Table of Contents: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83251)
- Tab Panel: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83248)
- Term Name: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83255)
- Page List: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83234)
- Login/out: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83229)
- No Results: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83233)
- Post Template: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83237)
- UI: Add RadioGroupControl (https://github.com/WordPress/gutenberg/pull/83143)
- Post Terms: Add background image, size, and gradient support (https://github.com/WordPress/gutenberg/pull/83238)
- Components: Deprecate Scrollable (https://github.com/WordPress/gutenberg/pull/83273)
- Storybook: Place RadioGroup, Switch, and SwitchControl under @wordpress-ui (https://github.com/WordPress/gutenberg/pull/83314)
- Block Editor: Show the in-between inserter on wrapped lines (https://github.com/WordPress/gutenberg/pull/83276)
- Docs: Add missing `@since` tags to two functions (https://github.com/WordPress/gutenberg/pull/83116)
- Upgrade eslint-plugin-jsdoc to latest version 64. (https://github.com/WordPress/gutenberg/pull/82727)
- i18n: add context to breadcrumbs area label (https://github.com/WordPress/gutenberg/pull/78134)
- Storybook: Omit the recommended checkmark from the sidebar (https://github.com/WordPress/gutenberg/pull/83309)
- Fix: Social Icons: In-between inserter does not work (https://github.com/WordPress/gutenberg/pull/83327)
- Storybook: Convert story-only stylesheets to CSS modules (https://github.com/WordPress/gutenberg/pull/83272)
- Block Editor: replace experimental ZStack in overlapping color indicators (https://github.com/WordPress/gutenberg/pull/83062)
- FocalPointPicker: Fix Sidebar Overflow Issue (https://github.com/WordPress/gutenberg/pull/68915)
- Storybook: Reject non-module stylesheet imports (https://github.com/WordPress/gutenberg/pull/83313)
- Components: Align CheckboxControl border, hover, and disabled colors with UI (https://github.com/WordPress/gutenberg/pull/83271)
- Icons: Move the public property from icons to collections (https://github.com/WordPress/gutenberg/pull/83277)
- ESLint Plugin: Check type-only imports for undeclared dependencies (https://github.com/WordPress/gutenberg/pull/83336)
- TypeScript: Give each widget its own typecheck project (https://github.com/WordPress/gutenberg/pull/83328)
- Components: Deprecate ResponsiveWrapper (https://github.com/WordPress/gutenberg/pull/83347)
- Remove npm from package engines (https://github.com/WordPress/gutenberg/pull/83326)
- Data: keep a pending listener when store not yet registered (https://github.com/WordPress/gutenberg/pull/83346)
- Add Template: Show template descriptions in the template list (https://github.com/WordPress/gutenberg/pull/83064)
- Block Editor: Consolidate search ranking into one shared module (https://github.com/WordPress/gutenberg/pull/83312)
- DataViews: Let a picker compose its footer from the page select and its actions (https://github.com/WordPress/gutenberg/pull/83281)
- Bump the github-actions group across 1 directory with 2 updates (https://github.com/WordPress/gutenberg/pull/83080)
- Rich text: Show the format boundary when the canvas root has focus (https://github.com/WordPress/gutenberg/pull/83385)
- Rich text: Select an inline image by clicking it, and show the edit UI of the object clicked (https://github.com/WordPress/gutenberg/pull/83370)
- Global Styles: Switch the revisions screen to the DataViews pickerActivity layout (https://github.com/WordPress/gutenberg/pull/80856)
- Try: Add left border to Notes panel. (https://github.com/WordPress/gutenberg/pull/83330)
- Media: Detect HEIC uploads from the file header rather than the file name (https://github.com/WordPress/gutenberg/pull/81737)
- Revise block direct dragging to fix adjacent issues (https://github.com/WordPress/gutenberg/pull/72983)
- Submenu: Add shadow support (https://github.com/WordPress/gutenberg/pull/83185)
- Disable caching when publishing built assets (https://github.com/WordPress/gutenberg/pull/79835)
- Tabs: Add border support (https://github.com/WordPress/gutenberg/pull/83361)
- Image: Restore alt text and caption when undoing a media editor save (https://github.com/WordPress/gutenberg/pull/82829)
- Accordion: Add link, heading, and button colour support (https://github.com/WordPress/gutenberg/pull/83373)
- Navigation Overlay Close: Add border support (https://github.com/WordPress/gutenberg/pull/83362)
- Tab Panel: Hide the shadow on closed panels (https://github.com/WordPress/gutenberg/pull/83369)
- Preformatted: Add link colour support (https://github.com/WordPress/gutenberg/pull/83386)
- Audio: Add link colour support (https://github.com/WordPress/gutenberg/pull/83375)
- No Results: Add heading and button colour support (https://github.com/WordPress/gutenberg/pull/83382)
- Comment Content: Add heading and button colour support (https://github.com/WordPress/gutenberg/pull/83376)
- Tab Panel: Add border support (https://github.com/WordPress/gutenberg/pull/83363)
- Comments: Add button colour support (https://github.com/WordPress/gutenberg/pull/83378)
- Accordion Item: Add link, heading, and button colour support (https://github.com/WordPress/gutenberg/pull/83371)
- Details: Add heading and button colour support (https://github.com/WordPress/gutenberg/pull/83381)
- Media & Text: Add button colour support (https://github.com/WordPress/gutenberg/pull/83380)
- Post Comments Form: Add button colour support (https://github.com/WordPress/gutenberg/pull/83377)
- Tab Panels: Add button colour support (https://github.com/WordPress/gutenberg/pull/83388)
- Post Content: Add button colour support (https://github.com/WordPress/gutenberg/pull/83379)
- Components: Stop rendering a hidden drag preview and a media query per draggable (https://github.com/WordPress/gutenberg/pull/83423)
- Post Template: Add heading and button colour support (https://github.com/WordPress/gutenberg/pull/83384)
- Table of Contents: Add text align support (https://github.com/WordPress/gutenberg/pull/83430)
- Group: Add text columns support (https://github.com/WordPress/gutenberg/pull/83425)
- Tabs: Add typography support (https://github.com/WordPress/gutenberg/pull/83431)
- Fields: Resolve the MediaEdit picker through the editor.MediaUpload filter (https://github.com/WordPress/gutenberg/pull/82678)
- Tab Panel: Add link, heading, and button colour support (https://github.com/WordPress/gutenberg/pull/83389)
- Global Styles: Rank block search results by title match (https://github.com/WordPress/gutenberg/pull/83435)
- Post Author Biography: Add text columns support (https://github.com/WordPress/gutenberg/pull/83424)
- Block Editor: Avoid a store subscription per inserter item (https://github.com/WordPress/gutenberg/pull/83434)
- Home Link: Add border support (https://github.com/WordPress/gutenberg/pull/83360)
- Tab Panels: Add typography support (https://github.com/WordPress/gutenberg/pull/83428)
- Tab Panel: Add typography support (https://github.com/WordPress/gutenberg/pull/83426)
- Storybook: Drop CustomSelectControlV2 stories and the unused WIP tag (https://github.com/WordPress/gutenberg/pull/83349)
- Docs: clarify DEWP asset file naming rule (https://github.com/WordPress/gutenberg/pull/80620)
- Components: Deprecate ZStack (https://github.com/WordPress/gutenberg/pull/83344)
- Media Utils: Stabilize `unstableFeaturedImageFlow` as `featuredImageFlow` (https://github.com/WordPress/gutenberg/pull/83439)
- Accordion Panel: Add link, heading, and button colour support (https://github.com/WordPress/gutenberg/pull/83374)
- Terms List: Add text columns support (https://github.com/WordPress/gutenberg/pull/83432)
- Enable setting position within viewport states (https://github.com/WordPress/gutenberg/pull/83094)
- Term Count: Add text align support (https://github.com/WordPress/gutenberg/pull/83429)
- Dependency Extraction Webpack Plugin: Always pretty-print PHP asset files (https://github.com/WordPress/gutenberg/pull/79650)
- Block Editor: Drop the O(n) tie-break in orderBy (https://github.com/WordPress/gutenberg/pull/83443)
- Cover Block: Add a Media section to the block inspector panel (https://github.com/WordPress/gutenberg/pull/82751)
- Admin bar: backport removal of site icon background from 7.1.1 (https://github.com/WordPress/gutenberg/pull/83433)
- Tests: Update Testing Library DOM to 10.4.2 (https://github.com/WordPress/gutenberg/pull/83279)
- Tabs: Add link, heading, and button colour support (https://github.com/WordPress/gutenberg/pull/83390)
- Icons: Add a core-admin collection for the admin interface (https://github.com/WordPress/gutenberg/pull/83261)
- Post Content: Add text align support (https://github.com/WordPress/gutenberg/pull/83427)
- Components: Give control labels an explicit foreground color (https://github.com/WordPress/gutenberg/pull/83318)
- Radio: Expand hit target without changing visual size (https://github.com/WordPress/gutenberg/pull/83275)
- Tests: Isolate deprecation warnings between cases (https://github.com/WordPress/gutenberg/pull/83097)
- Block Toolbar: Fix parent selector inserter for locked blocks (https://github.com/WordPress/gutenberg/pull/83444)
- Icon block: Don't render icons from non-public collections on the frontend (https://github.com/WordPress/gutenberg/pull/82774)
- Hide alignment control when nothing available. (https://github.com/WordPress/gutenberg/pull/83265)
- Fields: Use the post type labels in the featured image field and drop `mediaUploadProps` (https://github.com/WordPress/gutenberg/pull/83445)
- Icons: Rebalance a few, add other new icons. (https://github.com/WordPress/gutenberg/pull/83338)
- Docs: Replace retired reduce-motion mixin in animation guidelines (https://github.com/WordPress/gutenberg/pull/83335)
- Block Editor: Update block visibility badges to use from @wordpress/ui package (https://github.com/WordPress/gutenberg/pull/82670)
- PHP-only blocks: Detect enums in array attributes (https://github.com/WordPress/gutenberg/pull/83394)
- Data: Defer async-mode useSelect notification to idle time (https://github.com/WordPress/gutenberg/pull/82821)

Developed in https://github.com/WordPress/wordpress-develop/pull/14045.

Props wildworks.
Fixes #66254.

Built from https://develop.svn.wordpress.org/trunk@64223


git-svn-id: http://core.svn.wordpress.org/trunk@63374 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Backported to WP Core Pull request that has been successfully merged into WP Core [Feature] Client Side Media Media processing in the browser with WASM [Package] Editor /packages/editor [Type] Bug An existing feature does not function as intended

Projects

Development

Successfully merging this pull request may close these issues.

Image block hides Resolution because media REST response contains empty media_details.sizes in WordPress 7.1

4 participants