Repository navigation
Editor: Store the finalize response as the attachment record - #81947
Conversation
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.
|
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 If you're merging code through a pull request on GitHub, copy and paste the following into the bottom of the merge commit message. To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook. |
|
Size Change: -3.16 kB (-0.04%) Total Size: 7.91 MB 📦 View Changed
|
|
@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. |
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.
|
Important Review skippedAuto reviews are disabled on this repository. To trigger a review, include ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Advanced Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
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. Comment |
🤖 PR meta 🤖📦 Bundle sizeSize Change: +79 B (0%) Total Size: 8 MB 📦 View Changed
⚡ PerformanceShow the resultsClient side metrics exclude the server response time. front-end-block-theme
front-end-classic-theme
media-processing
media-upload
post-editor
site-editor
🏁 Flaky testsShow the failuresSome 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
|
|
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:
|
The server half ships in wordpress-develop #13412 (Trac 66056), slated for 7.1.1 alongside the package update.
andrewserong
left a comment
There was a problem hiding this comment.
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! 🎉
| 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 ); | ||
| } |
There was a problem hiding this comment.
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.
There was a problem hiding this comment.
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.
There was a problem hiding this comment.
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', () => ( { |
There was a problem hiding this comment.
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?)
There was a problem hiding this comment.
Yes, exactly that. Merged trunk and switched it to vi.mock( import( ... ) ) in 356c5fd.
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
(cherry picked from commit a474f40)
… 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
… 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
… 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
… 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
(cherry picked from commit a474f40)
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
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
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>
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
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
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
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
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
finalizeendpoint 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.finalizeis the commit point - it writes the sub-size metadata collected from the sideloads and only then ismedia_details.sizespopulated. 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:
The finalize response carries every size, each with the
source_urlthe Resolution control needs, and matches what a later read returns. The editor threw it away:mediaFinalizehanded it to the upload queue for the block URL, andmediaUploadOnSuccessthen calledinvalidateResolutionso 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:
no-cache- answers it with the pre-finalize record, andEither 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?
mediaFinalizereceives the finalize response into core-data under the two queries the editor resolves attachments with -{ context: 'view' }and no query at all - the same twomediaUploadOnSuccessused 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.mediaUploadOnSuccessthen skips those attachments and still invalidates the rest. Uploads the server processed on its own never go throughfinalize- videos, audio, PDFs, images too large for wasm-vips - so their records refresh exactly as before.Two things worth flagging:
editcontext. For an attachment that is a superset ofview: every fieldviewexposes is present, plus a few edit-only ones. The key listing in the probe above confirms it.How this sits with the other three PRs
These were checked by running each PR's e2e test against this branch:
So this is not a replacement for #81846 or #81886, and the three overlap less than they look:
receiveEntityRecordscall does not go through the resolver, so it is not covered by that guard - a mid-upload GET held long enough can still land on top of the record received here. That is the ordering test above, and it is a reason to land Core Data: Discard entity record responses superseded by a newer request #81846 as well.invalidateResolutioncallers.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-jsonand uploads through the real client-side pipeline:Unit:
PHP - the finalize response contract the client now relies on:
Manual: insert an Image block, upload a JPEG, and watch the Network tab filtered on
/wp/v2/media. There is no attachment GET afterfinalizeany 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.