Skip to content

Add performance metrics for client-side media processing - #76792

Merged
adamsilverstein merged 8 commits into
trunkfrom
add-performance-metrics-to-csm
Apr 1, 2026
Merged

Add performance metrics for client-side media processing#76792
adamsilverstein merged 8 commits into
trunkfrom
add-performance-metrics-to-csm

Conversation

@adamsilverstein

Copy link
Copy Markdown
Member

Summary

Adds a new performance test that measures client-side image processing time (decode → resize → encode) for generating all WordPress default sub-sizes from JPEG, WebP, and AVIF source images.

  • New test spec: test/performance/specs/media-processing.spec.js
  • Directly invokes @wordpress/vips/worker functions via page.evaluate() in the editor context
  • Measures time to generate all 6 WordPress sub-sizes (thumbnail, medium, medium_large, large, 1536x1536, 2048x2048) per format
  • Excludes upload/network time — only benchmarks the vips processing pipeline
  • Adds 3 new metrics: mediaProcessingJpeg, mediaProcessingWebp, mediaProcessingAvif
  • Integrates with the performance reporter and codevitals.run logging

Closes #76789

Test plan

  • CI performance tests pass
  • New metrics appear in performance results JSON output
  • Test correctly skips when cross-origin isolation is unavailable

Add a new performance test that measures decode, resize, and encode
time for generating all WordPress default sub-sizes (thumbnail, medium,
medium_large, large, 1536x1536, 2048x2048) from JPEG, WebP, and AVIF
source images using @wordpress/vips.

This enables tracking regressions in the client-side image processing
pipeline on codevitals.run, particularly for expensive formats like AVIF.
@github-actions

github-actions Bot commented Mar 24, 2026

Copy link
Copy Markdown

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

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

Co-authored-by: adamsilverstein <adamsilverstein@git.wordpress.org>
Co-authored-by: youknowriad <youknowriad@git.wordpress.org>

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

@github-actions

github-actions Bot commented Mar 24, 2026

Copy link
Copy Markdown

Size Change: 0 B

Total Size: 7.73 MB

ℹ️ View Unchanged
Filename Size
build/modules/a11y/index.min.js 355 B
build/modules/abilities/index.min.js 42.3 kB
build/modules/block-editor/utils/fit-text-frontend.min.js 617 B
build/modules/block-library/accordion/view.min.js 595 B
build/modules/block-library/file/view.min.js 346 B
build/modules/block-library/form/view.min.js 528 B
build/modules/block-library/image/view.min.js 2.64 kB
build/modules/block-library/navigation/view.min.js 1.14 kB
build/modules/block-library/playlist/view.min.js 10.9 kB
build/modules/block-library/query/view.min.js 518 B
build/modules/block-library/search/view.min.js 498 B
build/modules/block-library/tabs/view.min.js 946 B
build/modules/boot/index.min.js 16.9 kB
build/modules/connectors/index.min.js 2.05 kB
build/modules/core-abilities/index.min.js 892 B
build/modules/edit-site-init/index.min.js 1.4 kB
build/modules/interactivity-router/full-page.min.js 451 B
build/modules/interactivity-router/index.min.js 11.6 kB
build/modules/interactivity/index.min.js 15.1 kB
build/modules/latex-to-mathml/index.min.js 56.5 kB
build/modules/latex-to-mathml/loader.min.js 131 B
build/modules/lazy-editor/index.min.js 13.7 kB
build/modules/route/index.min.js 25.2 kB
build/modules/vips/loader.min.js 127 B
build/modules/vips/worker.min.js 4.56 MB
build/modules/workflow/index.min.js 19.9 kB
build/scripts/a11y/index.min.js 1.06 kB
build/scripts/annotations/index.min.js 2.39 kB
build/scripts/api-fetch/index.min.js 2.83 kB
build/scripts/autop/index.min.js 2.18 kB
build/scripts/base-styles/index.min.js 98 B
build/scripts/blob/index.min.js 631 B
build/scripts/block-directory/index.min.js 8.03 kB
build/scripts/block-editor/index.min.js 338 kB
build/scripts/block-library/index.min.js 317 kB
build/scripts/block-serialization-default-parser/index.min.js 1.16 kB
build/scripts/block-serialization-spec-parser/index.min.js 3.08 kB
build/scripts/blocks/index.min.js 56.8 kB
build/scripts/commands/index.min.js 21 kB
build/scripts/components/index.min.js 265 kB
build/scripts/compose/index.min.js 11.1 kB
build/scripts/core-commands/index.min.js 4.31 kB
build/scripts/core-data/index.min.js 30.3 kB
build/scripts/customize-widgets/index.min.js 12.3 kB
build/scripts/data-controls/index.min.js 795 B
build/scripts/data/index.min.js 9.65 kB
build/scripts/date/index.min.js 23.6 kB
build/scripts/deprecated/index.min.js 756 B
build/scripts/dom-ready/index.min.js 476 B
build/scripts/dom/index.min.js 5 kB
build/scripts/edit-post/index.min.js 16.4 kB
build/scripts/edit-site/index.min.js 261 kB
build/scripts/edit-widgets/index.min.js 19.9 kB
build/scripts/editor/index.min.js 410 kB
build/scripts/element/index.min.js 5.2 kB
build/scripts/escape-html/index.min.js 587 B
build/scripts/format-library/index.min.js 10.7 kB
build/scripts/hooks/index.min.js 1.83 kB
build/scripts/html-entities/index.min.js 494 B
build/scripts/i18n/index.min.js 2.46 kB
build/scripts/is-shallow-equal/index.min.js 572 B
build/scripts/keyboard-shortcuts/index.min.js 1.57 kB
build/scripts/keycodes/index.min.js 1.56 kB
build/scripts/list-reusable-blocks/index.min.js 2.44 kB
build/scripts/media-utils/index.min.js 77.3 kB
build/scripts/notices/index.min.js 1.9 kB
build/scripts/nux/index.min.js 1.89 kB
build/scripts/patterns/index.min.js 7.98 kB
build/scripts/plugins/index.min.js 2.15 kB
build/scripts/preferences-persistence/index.min.js 2.15 kB
build/scripts/preferences/index.min.js 3.3 kB
build/scripts/primitives/index.min.js 1.01 kB
build/scripts/priority-queue/index.min.js 1.62 kB
build/scripts/private-apis/index.min.js 1.1 kB
build/scripts/react-i18n/index.min.js 833 B
build/scripts/redux-routine/index.min.js 3.37 kB
build/scripts/reusable-blocks/index.min.js 3.1 kB
build/scripts/rich-text/index.min.js 14 kB
build/scripts/router/index.min.js 5.96 kB
build/scripts/server-side-render/index.min.js 1.91 kB
build/scripts/shortcode/index.min.js 1.59 kB
build/scripts/style-engine/index.min.js 2.36 kB
build/scripts/sync/index.min.js 38.1 kB
build/scripts/theme/index.min.js 22 kB
build/scripts/token-list/index.min.js 739 B
build/scripts/undo-manager/index.min.js 918 B
build/scripts/upload-media/index.min.js 7.88 kB
build/scripts/url/index.min.js 3.98 kB
build/scripts/vendors/react-dom.min.js 43.3 kB
build/scripts/vendors/react-jsx-runtime.min.js 667 B
build/scripts/vendors/react.min.js 2.77 kB
build/scripts/viewport/index.min.js 1.21 kB
build/scripts/warning/index.min.js 454 B
build/scripts/widgets/index.min.js 7.8 kB
build/scripts/wordcount/index.min.js 1.04 kB
build/styles/base-styles/admin-schemes-rtl.css 1.71 kB
build/styles/base-styles/admin-schemes-rtl.min.css 775 B
build/styles/base-styles/admin-schemes.css 1.71 kB
build/styles/base-styles/admin-schemes.min.css 775 B
build/styles/block-directory/style-rtl.css 1.96 kB
build/styles/block-directory/style-rtl.min.css 1.05 kB
build/styles/block-directory/style.css 1.97 kB
build/styles/block-directory/style.min.css 1.05 kB
build/styles/block-editor/content-rtl.css 5.44 kB
build/styles/block-editor/content-rtl.min.css 4.02 kB
build/styles/block-editor/content.css 5.45 kB
build/styles/block-editor/content.min.css 4.01 kB
build/styles/block-editor/default-editor-styles-rtl.css 697 B
build/styles/block-editor/default-editor-styles-rtl.min.css 224 B
build/styles/block-editor/default-editor-styles.css 697 B
build/styles/block-editor/default-editor-styles.min.css 224 B
build/styles/block-editor/style-rtl.css 18.4 kB
build/styles/block-editor/style-rtl.min.css 15.7 kB
build/styles/block-editor/style.css 18.4 kB
build/styles/block-editor/style.min.css 15.7 kB
build/styles/block-library/accordion-heading/style-rtl.css 346 B
build/styles/block-library/accordion-heading/style-rtl.min.css 325 B
build/styles/block-library/accordion-heading/style.css 346 B
build/styles/block-library/accordion-heading/style.min.css 325 B
build/styles/block-library/accordion-item/style-rtl.css 239 B
build/styles/block-library/accordion-item/style-rtl.min.css 180 B
build/styles/block-library/accordion-item/style.css 238 B
build/styles/block-library/accordion-item/style.min.css 180 B
build/styles/block-library/accordion-panel/style-rtl.css 110 B
build/styles/block-library/accordion-panel/style-rtl.min.css 99 B
build/styles/block-library/accordion-panel/style.css 110 B
build/styles/block-library/accordion-panel/style.min.css 99 B
build/styles/block-library/accordion/style-rtl.css 69 B
build/styles/block-library/accordion/style-rtl.min.css 62 B
build/styles/block-library/accordion/style.css 69 B
build/styles/block-library/accordion/style.min.css 62 B
build/styles/block-library/archives/style-rtl.css 101 B
build/styles/block-library/archives/style-rtl.min.css 90 B
build/styles/block-library/archives/style.css 101 B
build/styles/block-library/archives/style.min.css 90 B
build/styles/block-library/audio/editor-rtl.css 166 B
build/styles/block-library/audio/editor-rtl.min.css 149 B
build/styles/block-library/audio/editor.css 166 B
build/styles/block-library/audio/editor.min.css 151 B
build/styles/block-library/audio/style-rtl.css 945 B
build/styles/block-library/audio/style-rtl.min.css 132 B
build/styles/block-library/audio/style.css 945 B
build/styles/block-library/audio/style.min.css 132 B
build/styles/block-library/audio/theme-rtl.css 967 B
build/styles/block-library/audio/theme-rtl.min.css 134 B
build/styles/block-library/audio/theme.css 967 B
build/styles/block-library/audio/theme.min.css 134 B
build/styles/block-library/avatar/editor-rtl.css 127 B
build/styles/block-library/avatar/editor-rtl.min.css 115 B
build/styles/block-library/avatar/editor.css 127 B
build/styles/block-library/avatar/editor.min.css 115 B
build/styles/block-library/avatar/style-rtl.css 117 B
build/styles/block-library/avatar/style-rtl.min.css 104 B
build/styles/block-library/avatar/style.css 117 B
build/styles/block-library/avatar/style.min.css 104 B
build/styles/block-library/breadcrumbs/style-rtl.css 233 B
build/styles/block-library/breadcrumbs/style-rtl.min.css 203 B
build/styles/block-library/breadcrumbs/style.css 233 B
build/styles/block-library/breadcrumbs/style.min.css 203 B
build/styles/block-library/button/editor-rtl.css 306 B
build/styles/block-library/button/editor-rtl.min.css 265 B
build/styles/block-library/button/editor.css 317 B
build/styles/block-library/button/editor.min.css 265 B
build/styles/block-library/button/style-rtl.css 651 B
build/styles/block-library/button/style-rtl.min.css 596 B
build/styles/block-library/button/style.css 662 B
build/styles/block-library/button/style.min.css 596 B
build/styles/block-library/buttons/editor-rtl.css 391 B
build/styles/block-library/buttons/editor-rtl.min.css 291 B
build/styles/block-library/buttons/editor.css 391 B
build/styles/block-library/buttons/editor.min.css 291 B
build/styles/block-library/buttons/style-rtl.css 452 B
build/styles/block-library/buttons/style-rtl.min.css 349 B
build/styles/block-library/buttons/style.css 453 B
build/styles/block-library/buttons/style.min.css 349 B
build/styles/block-library/calendar/style-rtl.css 271 B
build/styles/block-library/calendar/style-rtl.min.css 239 B
build/styles/block-library/calendar/style.css 271 B
build/styles/block-library/calendar/style.min.css 239 B
build/styles/block-library/categories/editor-rtl.css 171 B
build/styles/block-library/categories/editor-rtl.min.css 132 B
build/styles/block-library/categories/editor.css 170 B
build/styles/block-library/categories/editor.min.css 131 B
build/styles/block-library/categories/style-rtl.css 226 B
build/styles/block-library/categories/style-rtl.min.css 169 B
build/styles/block-library/categories/style.css 235 B
build/styles/block-library/categories/style.min.css 169 B
build/styles/block-library/classic-rtl.css 363 B
build/styles/block-library/classic-rtl.min.css 321 B
build/styles/block-library/classic.css 363 B
build/styles/block-library/classic.min.css 321 B
build/styles/block-library/code/editor-rtl.css 59 B
build/styles/block-library/code/editor-rtl.min.css 53 B
build/styles/block-library/code/editor.css 59 B
build/styles/block-library/code/editor.min.css 53 B
build/styles/block-library/code/style-rtl.css 158 B
build/styles/block-library/code/style-rtl.min.css 139 B
build/styles/block-library/code/style.css 179 B
build/styles/block-library/code/style.min.css 139 B
build/styles/block-library/code/theme-rtl.css 135 B
build/styles/block-library/code/theme-rtl.min.css 122 B
build/styles/block-library/code/theme.css 135 B
build/styles/block-library/code/theme.min.css 122 B
build/styles/block-library/columns/editor-rtl.css 119 B
build/styles/block-library/columns/editor-rtl.min.css 108 B
build/styles/block-library/columns/editor.css 119 B
build/styles/block-library/columns/editor.min.css 108 B
build/styles/block-library/columns/style-rtl.css 1.3 kB
build/styles/block-library/columns/style-rtl.min.css 421 B
build/styles/block-library/columns/style.css 1.3 kB
build/styles/block-library/columns/style.min.css 421 B
build/styles/block-library/comment-author-avatar/editor-rtl.css 136 B
build/styles/block-library/comment-author-avatar/editor-rtl.min.css 124 B
build/styles/block-library/comment-author-avatar/editor.css 136 B
build/styles/block-library/comment-author-avatar/editor.min.css 124 B
build/styles/block-library/comment-author-name/style-rtl.css 79 B
build/styles/block-library/comment-author-name/style-rtl.min.css 72 B
build/styles/block-library/comment-author-name/style.css 79 B
build/styles/block-library/comment-author-name/style.min.css 72 B
build/styles/block-library/comment-content/style-rtl.css 137 B
build/styles/block-library/comment-content/style-rtl.min.css 120 B
build/styles/block-library/comment-content/style.css 137 B
build/styles/block-library/comment-content/style.min.css 120 B
build/styles/block-library/comment-date/style-rtl.css 72 B
build/styles/block-library/comment-date/style-rtl.min.css 65 B
build/styles/block-library/comment-date/style.css 72 B
build/styles/block-library/comment-date/style.min.css 65 B
build/styles/block-library/comment-edit-link/style-rtl.css 77 B
build/styles/block-library/comment-edit-link/style-rtl.min.css 70 B
build/styles/block-library/comment-edit-link/style.css 77 B
build/styles/block-library/comment-edit-link/style.min.css 70 B
build/styles/block-library/comment-reply-link/style-rtl.css 78 B
build/styles/block-library/comment-reply-link/style-rtl.min.css 71 B
build/styles/block-library/comment-reply-link/style.css 78 B
build/styles/block-library/comment-reply-link/style.min.css 71 B
build/styles/block-library/comment-template/style-rtl.css 213 B
build/styles/block-library/comment-template/style-rtl.min.css 191 B
build/styles/block-library/comment-template/style.css 213 B
build/styles/block-library/comment-template/style.min.css 191 B
build/styles/block-library/comments-pagination-numbers/editor-rtl.css 135 B
build/styles/block-library/comments-pagination-numbers/editor-rtl.min.css 122 B
build/styles/block-library/comments-pagination-numbers/editor.css 144 B
build/styles/block-library/comments-pagination-numbers/editor.min.css 121 B
build/styles/block-library/comments-pagination/editor-rtl.css 184 B
build/styles/block-library/comments-pagination/editor-rtl.min.css 168 B
build/styles/block-library/comments-pagination/editor.css 184 B
build/styles/block-library/comments-pagination/editor.min.css 168 B
build/styles/block-library/comments-pagination/style-rtl.css 224 B
build/styles/block-library/comments-pagination/style-rtl.min.css 201 B
build/styles/block-library/comments-pagination/style.css 236 B
build/styles/block-library/comments-pagination/style.min.css 201 B
build/styles/block-library/comments-title/editor-rtl.css 83 B
build/styles/block-library/comments-title/editor-rtl.min.css 75 B
build/styles/block-library/comments-title/editor.css 83 B
build/styles/block-library/comments-title/editor.min.css 75 B
build/styles/block-library/comments/editor-rtl.css 968 B
build/styles/block-library/comments/editor-rtl.min.css 842 B
build/styles/block-library/comments/editor.css 968 B
build/styles/block-library/comments/editor.min.css 842 B
build/styles/block-library/comments/style-rtl.css 754 B
build/styles/block-library/comments/style-rtl.min.css 637 B
build/styles/block-library/comments/style.css 752 B
build/styles/block-library/comments/style.min.css 637 B
build/styles/block-library/common-rtl.css 2.48 kB
build/styles/block-library/common-rtl.min.css 1.12 kB
build/styles/block-library/common.css 2.5 kB
build/styles/block-library/common.min.css 1.12 kB
build/styles/block-library/cover/editor-rtl.css 1.05 kB
build/styles/block-library/cover/editor-rtl.min.css 631 B
build/styles/block-library/cover/editor.css 1.05 kB
build/styles/block-library/cover/editor.min.css 631 B
build/styles/block-library/cover/style-rtl.css 2.5 kB
build/styles/block-library/cover/style-rtl.min.css 1.82 kB
build/styles/block-library/cover/style.css 2.51 kB
build/styles/block-library/cover/style.min.css 1.81 kB
build/styles/block-library/details/editor-rtl.css 72 B
build/styles/block-library/details/editor-rtl.min.css 65 B
build/styles/block-library/details/editor.css 72 B
build/styles/block-library/details/editor.min.css 65 B
build/styles/block-library/details/style-rtl.css 97 B
build/styles/block-library/details/style-rtl.min.css 86 B
build/styles/block-library/details/style.css 97 B
build/styles/block-library/details/style.min.css 86 B
build/styles/block-library/editor-elements-rtl.css 117 B
build/styles/block-library/editor-elements-rtl.min.css 75 B
build/styles/block-library/editor-elements.css 117 B
build/styles/block-library/editor-elements.min.css 75 B
build/styles/block-library/editor-rtl.css 12.5 kB
build/styles/block-library/editor-rtl.min.css 10.3 kB
build/styles/block-library/editor.css 12.5 kB
build/styles/block-library/editor.min.css 10.3 kB
build/styles/block-library/elements-rtl.css 84 B
build/styles/block-library/elements-rtl.min.css 54 B
build/styles/block-library/elements.css 84 B
build/styles/block-library/elements.min.css 54 B
build/styles/block-library/embed/editor-rtl.css 391 B
build/styles/block-library/embed/editor-rtl.min.css 331 B
build/styles/block-library/embed/editor.css 390 B
build/styles/block-library/embed/editor.min.css 331 B
build/styles/block-library/embed/style-rtl.css 1.29 kB
build/styles/block-library/embed/style-rtl.min.css 448 B
build/styles/block-library/embed/style.css 1.29 kB
build/styles/block-library/embed/style.min.css 448 B
build/styles/block-library/embed/theme-rtl.css 967 B
build/styles/block-library/embed/theme-rtl.min.css 133 B
build/styles/block-library/embed/theme.css 967 B
build/styles/block-library/embed/theme.min.css 133 B
build/styles/block-library/file/editor-rtl.css 352 B
build/styles/block-library/file/editor-rtl.min.css 324 B
build/styles/block-library/file/editor.css 353 B
build/styles/block-library/file/editor.min.css 324 B
build/styles/block-library/file/style-rtl.css 318 B
build/styles/block-library/file/style-rtl.min.css 278 B
build/styles/block-library/file/style.css 331 B
build/styles/block-library/file/style.min.css 278 B
build/styles/block-library/footnotes/style-rtl.css 220 B
build/styles/block-library/footnotes/style-rtl.min.css 198 B
build/styles/block-library/footnotes/style.css 219 B
build/styles/block-library/footnotes/style.min.css 197 B
build/styles/block-library/form-input/editor-rtl.css 286 B
build/styles/block-library/form-input/editor-rtl.min.css 265 B
build/styles/block-library/form-input/editor.css 285 B
build/styles/block-library/form-input/editor.min.css 264 B
build/styles/block-library/form-input/style-rtl.css 467 B
build/styles/block-library/form-input/style-rtl.min.css 366 B
build/styles/block-library/form-input/style.css 467 B
build/styles/block-library/form-input/style.min.css 366 B
build/styles/block-library/form-submission-notification/editor-rtl.css 368 B
build/styles/block-library/form-submission-notification/editor-rtl.min.css 344 B
build/styles/block-library/form-submission-notification/editor.css 368 B
build/styles/block-library/form-submission-notification/editor.min.css 341 B
build/styles/block-library/form-submit-button/style-rtl.css 77 B
build/styles/block-library/form-submit-button/style-rtl.min.css 69 B
build/styles/block-library/form-submit-button/style.css 77 B
build/styles/block-library/form-submit-button/style.min.css 69 B
build/styles/block-library/freeform/editor-rtl.css 1.12 kB
build/styles/block-library/freeform/editor-rtl.min.css 288 B
build/styles/block-library/freeform/editor.css 1.12 kB
build/styles/block-library/freeform/editor.min.css 288 B
build/styles/block-library/gallery/editor-rtl.css 1.52 kB
build/styles/block-library/gallery/editor-rtl.min.css 615 B
build/styles/block-library/gallery/editor.css 1.52 kB
build/styles/block-library/gallery/editor.min.css 616 B
build/styles/block-library/gallery/style-rtl.css 2.84 kB
build/styles/block-library/gallery/style-rtl.min.css 1.84 kB
build/styles/block-library/gallery/style.css 2.84 kB
build/styles/block-library/gallery/style.min.css 1.84 kB
build/styles/block-library/gallery/theme-rtl.css 941 B
build/styles/block-library/gallery/theme-rtl.min.css 108 B
build/styles/block-library/gallery/theme.css 941 B
build/styles/block-library/gallery/theme.min.css 108 B
build/styles/block-library/group/editor-rtl.css 772 B
build/styles/block-library/group/editor-rtl.min.css 335 B
build/styles/block-library/group/editor.css 772 B
build/styles/block-library/group/editor.min.css 335 B
build/styles/block-library/group/style-rtl.css 120 B
build/styles/block-library/group/style-rtl.min.css 103 B
build/styles/block-library/group/style.css 120 B
build/styles/block-library/group/style.min.css 103 B
build/styles/block-library/group/theme-rtl.css 468 B
build/styles/block-library/group/theme-rtl.min.css 79 B
build/styles/block-library/group/theme.css 468 B
build/styles/block-library/group/theme.min.css 79 B
build/styles/block-library/heading/style-rtl.css 604 B
build/styles/block-library/heading/style-rtl.min.css 205 B
build/styles/block-library/heading/style.css 604 B
build/styles/block-library/heading/style.min.css 205 B
build/styles/block-library/html/editor-rtl.css 1.29 kB
build/styles/block-library/html/editor-rtl.min.css 464 B
build/styles/block-library/html/editor.css 1.3 kB
build/styles/block-library/html/editor.min.css 464 B
build/styles/block-library/icon/editor-rtl.css 776 B
build/styles/block-library/icon/editor-rtl.min.css 377 B
build/styles/block-library/icon/editor.css 776 B
build/styles/block-library/icon/editor.min.css 377 B
build/styles/block-library/icon/style-rtl.css 218 B
build/styles/block-library/icon/style-rtl.min.css 154 B
build/styles/block-library/icon/style.css 218 B
build/styles/block-library/icon/style.min.css 154 B
build/styles/block-library/image/editor-rtl.css 1.64 kB
build/styles/block-library/image/editor-rtl.min.css 782 B
build/styles/block-library/image/editor.css 1.64 kB
build/styles/block-library/image/editor.min.css 780 B
build/styles/block-library/image/style-rtl.css 2.92 kB
build/styles/block-library/image/style-rtl.min.css 1.86 kB
build/styles/block-library/image/style.css 2.92 kB
build/styles/block-library/image/style.min.css 1.85 kB
build/styles/block-library/image/theme-rtl.css 971 B
build/styles/block-library/image/theme-rtl.min.css 137 B
build/styles/block-library/image/theme.css 971 B
build/styles/block-library/image/theme.min.css 137 B
build/styles/block-library/latest-comments/style-rtl.css 394 B
build/styles/block-library/latest-comments/style-rtl.min.css 355 B
build/styles/block-library/latest-comments/style.css 394 B
build/styles/block-library/latest-comments/style.min.css 354 B
build/styles/block-library/latest-posts/editor-rtl.css 154 B
build/styles/block-library/latest-posts/editor-rtl.min.css 139 B
build/styles/block-library/latest-posts/editor.css 153 B
build/styles/block-library/latest-posts/editor.min.css 138 B
build/styles/block-library/latest-posts/style-rtl.css 1.36 kB
build/styles/block-library/latest-posts/style-rtl.min.css 520 B
build/styles/block-library/latest-posts/style.css 1.37 kB
build/styles/block-library/latest-posts/style.min.css 520 B
build/styles/block-library/list/style-rtl.css 498 B
build/styles/block-library/list/style-rtl.min.css 107 B
build/styles/block-library/list/style.css 498 B
build/styles/block-library/list/style.min.css 107 B
build/styles/block-library/loginout/style-rtl.css 68 B
build/styles/block-library/loginout/style-rtl.min.css 61 B
build/styles/block-library/loginout/style.css 68 B
build/styles/block-library/loginout/style.min.css 61 B
build/styles/block-library/math/editor-rtl.css 491 B
build/styles/block-library/math/editor-rtl.min.css 105 B
build/styles/block-library/math/editor.css 502 B
build/styles/block-library/math/editor.min.css 105 B
build/styles/block-library/math/style-rtl.css 70 B
build/styles/block-library/math/style-rtl.min.css 61 B
build/styles/block-library/math/style.css 70 B
build/styles/block-library/math/style.min.css 61 B
build/styles/block-library/media-text/editor-rtl.css 389 B
build/styles/block-library/media-text/editor-rtl.min.css 321 B
build/styles/block-library/media-text/editor.css 389 B
build/styles/block-library/media-text/editor.min.css 320 B
build/styles/block-library/media-text/style-rtl.css 873 B
build/styles/block-library/media-text/style-rtl.min.css 552 B
build/styles/block-library/media-text/style.css 901 B
build/styles/block-library/media-text/style.min.css 550 B
build/styles/block-library/more/editor-rtl.css 796 B
build/styles/block-library/more/editor-rtl.min.css 393 B
build/styles/block-library/more/editor.css 798 B
build/styles/block-library/more/editor.min.css 393 B
build/styles/block-library/navigation-link/editor-rtl.css 1.28 kB
build/styles/block-library/navigation-link/editor-rtl.min.css 710 B
build/styles/block-library/navigation-link/editor.css 1.27 kB
build/styles/block-library/navigation-link/editor.min.css 713 B
build/styles/block-library/navigation-link/style-rtl.css 579 B
build/styles/block-library/navigation-link/style-rtl.min.css 190 B
build/styles/block-library/navigation-link/style.css 579 B
build/styles/block-library/navigation-link/style.min.css 188 B
build/styles/block-library/navigation-overlay-close/style-rtl.css 260 B
build/styles/block-library/navigation-overlay-close/style-rtl.min.css 237 B
build/styles/block-library/navigation-overlay-close/style.css 260 B
build/styles/block-library/navigation-overlay-close/style.min.css 237 B
build/styles/block-library/navigation-submenu/editor-rtl.css 1.12 kB
build/styles/block-library/navigation-submenu/editor-rtl.min.css 295 B
build/styles/block-library/navigation-submenu/editor.css 1.12 kB
build/styles/block-library/navigation-submenu/editor.min.css 294 B
build/styles/block-library/navigation/editor-rtl.css 3.28 kB
build/styles/block-library/navigation/editor-rtl.min.css 2.28 kB
build/styles/block-library/navigation/editor.css 3.29 kB
build/styles/block-library/navigation/editor.min.css 2.28 kB
build/styles/block-library/navigation/style-rtl.css 3.59 kB
build/styles/block-library/navigation/style-rtl.min.css 2.52 kB
build/styles/block-library/navigation/style.css 3.59 kB
build/styles/block-library/navigation/style.min.css 2.5 kB
build/styles/block-library/nextpage/editor-rtl.css 799 B
build/styles/block-library/nextpage/editor-rtl.min.css 392 B
build/styles/block-library/nextpage/editor.css 800 B
build/styles/block-library/nextpage/editor.min.css 392 B
build/styles/block-library/page-list/editor-rtl.css 1.18 kB
build/styles/block-library/page-list/editor-rtl.min.css 356 B
build/styles/block-library/page-list/editor.css 1.18 kB
build/styles/block-library/page-list/editor.min.css 356 B
build/styles/block-library/page-list/style-rtl.css 207 B
build/styles/block-library/page-list/style-rtl.min.css 192 B
build/styles/block-library/page-list/style.css 207 B
build/styles/block-library/page-list/style.min.css 192 B
build/styles/block-library/paragraph/editor-rtl.css 315 B
build/styles/block-library/paragraph/editor-rtl.min.css 292 B
build/styles/block-library/paragraph/editor.css 314 B
build/styles/block-library/paragraph/editor.min.css 292 B
build/styles/block-library/paragraph/style-rtl.css 746 B
build/styles/block-library/paragraph/style-rtl.min.css 341 B
build/styles/block-library/paragraph/style.css 752 B
build/styles/block-library/paragraph/style.min.css 340 B
build/styles/block-library/playlist-track/style-rtl.css 453 B
build/styles/block-library/playlist-track/style-rtl.min.css 420 B
build/styles/block-library/playlist-track/style.css 453 B
build/styles/block-library/playlist-track/style.min.css 420 B
build/styles/block-library/playlist/editor-rtl.css 120 B
build/styles/block-library/playlist/editor-rtl.min.css 112 B
build/styles/block-library/playlist/editor.css 120 B
build/styles/block-library/playlist/editor.min.css 112 B
build/styles/block-library/playlist/style-rtl.css 1.52 kB
build/styles/block-library/playlist/style-rtl.min.css 1.42 kB
build/styles/block-library/playlist/style.css 1.52 kB
build/styles/block-library/playlist/style.min.css 1.42 kB
build/styles/block-library/post-author-biography/style-rtl.css 81 B
build/styles/block-library/post-author-biography/style-rtl.min.css 74 B
build/styles/block-library/post-author-biography/style.css 81 B
build/styles/block-library/post-author-biography/style.min.css 74 B
build/styles/block-library/post-author-name/style-rtl.css 76 B
build/styles/block-library/post-author-name/style-rtl.min.css 69 B
build/styles/block-library/post-author-name/style.css 76 B
build/styles/block-library/post-author-name/style.min.css 69 B
build/styles/block-library/post-author/editor-rtl.css 490 B
build/styles/block-library/post-author/editor-rtl.min.css 104 B
build/styles/block-library/post-author/editor.css 490 B
build/styles/block-library/post-author/editor.min.css 104 B
build/styles/block-library/post-author/style-rtl.css 213 B
build/styles/block-library/post-author/style-rtl.min.css 188 B
build/styles/block-library/post-author/style.css 214 B
build/styles/block-library/post-author/style.min.css 189 B
build/styles/block-library/post-comments-count/style-rtl.css 79 B
build/styles/block-library/post-comments-count/style-rtl.min.css 72 B
build/styles/block-library/post-comments-count/style.css 79 B
build/styles/block-library/post-comments-count/style.min.css 72 B
build/styles/block-library/post-comments-form/editor-rtl.css 104 B
build/styles/block-library/post-comments-form/editor-rtl.min.css 96 B
build/styles/block-library/post-comments-form/editor.css 104 B
build/styles/block-library/post-comments-form/editor.min.css 96 B
build/styles/block-library/post-comments-form/style-rtl.css 585 B
build/styles/block-library/post-comments-form/style-rtl.min.css 525 B
build/styles/block-library/post-comments-form/style.css 584 B
build/styles/block-library/post-comments-form/style.min.css 525 B
build/styles/block-library/post-comments-link/style-rtl.css 78 B
build/styles/block-library/post-comments-link/style-rtl.min.css 71 B
build/styles/block-library/post-comments-link/style.css 78 B
build/styles/block-library/post-comments-link/style.min.css 71 B
build/styles/block-library/post-content/style-rtl.css 68 B
build/styles/block-library/post-content/style-rtl.min.css 61 B
build/styles/block-library/post-content/style.css 68 B
build/styles/block-library/post-content/style.min.css 61 B
build/styles/block-library/post-date/style-rtl.css 69 B
build/styles/block-library/post-date/style-rtl.min.css 62 B
build/styles/block-library/post-date/style.css 69 B
build/styles/block-library/post-date/style.min.css 62 B
build/styles/block-library/post-excerpt/editor-rtl.css 78 B
build/styles/block-library/post-excerpt/editor-rtl.min.css 71 B
build/styles/block-library/post-excerpt/editor.css 78 B
build/styles/block-library/post-excerpt/editor.min.css 71 B
build/styles/block-library/post-excerpt/style-rtl.css 171 B
build/styles/block-library/post-excerpt/style-rtl.min.css 155 B
build/styles/block-library/post-excerpt/style.css 171 B
build/styles/block-library/post-excerpt/style.min.css 155 B
build/styles/block-library/post-featured-image/editor-rtl.css 1.14 kB
build/styles/block-library/post-featured-image/editor-rtl.min.css 719 B
build/styles/block-library/post-featured-image/editor.css 1.14 kB
build/styles/block-library/post-featured-image/editor.min.css 717 B
build/styles/block-library/post-featured-image/style-rtl.css 392 B
build/styles/block-library/post-featured-image/style-rtl.min.css 347 B
build/styles/block-library/post-featured-image/style.css 392 B
build/styles/block-library/post-featured-image/style.min.css 347 B
build/styles/block-library/post-navigation-link/style-rtl.css 234 B
build/styles/block-library/post-navigation-link/style-rtl.min.css 215 B
build/styles/block-library/post-navigation-link/style.css 245 B
build/styles/block-library/post-navigation-link/style.min.css 214 B
build/styles/block-library/post-template/style-rtl.css 1.25 kB
build/styles/block-library/post-template/style-rtl.min.css 414 B
build/styles/block-library/post-template/style.css 1.25 kB
build/styles/block-library/post-template/style.min.css 414 B
build/styles/block-library/post-terms/style-rtl.css 108 B
build/styles/block-library/post-terms/style-rtl.min.css 96 B
build/styles/block-library/post-terms/style.css 108 B
build/styles/block-library/post-terms/style.min.css 96 B
build/styles/block-library/post-time-to-read/style-rtl.css 77 B
build/styles/block-library/post-time-to-read/style-rtl.min.css 70 B
build/styles/block-library/post-time-to-read/style.css 77 B
build/styles/block-library/post-time-to-read/style.min.css 70 B
build/styles/block-library/post-title/style-rtl.css 175 B
build/styles/block-library/post-title/style-rtl.min.css 162 B
build/styles/block-library/post-title/style.css 175 B
build/styles/block-library/post-title/style.min.css 162 B
build/styles/block-library/preformatted/style-rtl.css 511 B
build/styles/block-library/preformatted/style-rtl.min.css 125 B
build/styles/block-library/preformatted/style.css 511 B
build/styles/block-library/preformatted/style.min.css 125 B
build/styles/block-library/pullquote/editor-rtl.css 146 B
build/styles/block-library/pullquote/editor-rtl.min.css 133 B
build/styles/block-library/pullquote/editor.css 146 B
build/styles/block-library/pullquote/editor.min.css 133 B
build/styles/block-library/pullquote/style-rtl.css 765 B
build/styles/block-library/pullquote/style-rtl.min.css 365 B
build/styles/block-library/pullquote/style.css 764 B
build/styles/block-library/pullquote/style.min.css 365 B
build/styles/block-library/pullquote/theme-rtl.css 195 B
build/styles/block-library/pullquote/theme-rtl.min.css 176 B
build/styles/block-library/pullquote/theme.css 195 B
build/styles/block-library/pullquote/theme.min.css 176 B
build/styles/block-library/query-pagination-numbers/editor-rtl.css 134 B
build/styles/block-library/query-pagination-numbers/editor-rtl.min.css 121 B
build/styles/block-library/query-pagination-numbers/editor.css 144 B
build/styles/block-library/query-pagination-numbers/editor.min.css 118 B
build/styles/block-library/query-pagination/editor-rtl.css 168 B
build/styles/block-library/query-pagination/editor-rtl.min.css 154 B
build/styles/block-library/query-pagination/editor.css 168 B
build/styles/block-library/query-pagination/editor.min.css 154 B
build/styles/block-library/query-pagination/style-rtl.css 254 B
build/styles/block-library/query-pagination/style-rtl.min.css 237 B
build/styles/block-library/query-pagination/style.css 265 B
build/styles/block-library/query-pagination/style.min.css 237 B
build/styles/block-library/query-title/style-rtl.css 71 B
build/styles/block-library/query-title/style-rtl.min.css 64 B
build/styles/block-library/query-title/style.css 71 B
build/styles/block-library/query-title/style.min.css 64 B
build/styles/block-library/query-total/style-rtl.css 71 B
build/styles/block-library/query-total/style-rtl.min.css 64 B
build/styles/block-library/query-total/style.css 71 B
build/styles/block-library/query-total/style.min.css 64 B
build/styles/block-library/query/editor-rtl.css 1.28 kB
build/styles/block-library/query/editor-rtl.min.css 438 B
build/styles/block-library/query/editor.css 1.28 kB
build/styles/block-library/query/editor.min.css 438 B
build/styles/block-library/quote/style-rtl.css 255 B
build/styles/block-library/quote/style-rtl.min.css 238 B
build/styles/block-library/quote/style.css 256 B
build/styles/block-library/quote/style.min.css 238 B
build/styles/block-library/quote/theme-rtl.css 253 B
build/styles/block-library/quote/theme-rtl.min.css 233 B
build/styles/block-library/quote/theme.css 254 B
build/styles/block-library/quote/theme.min.css 236 B
build/styles/block-library/read-more/style-rtl.css 146 B
build/styles/block-library/read-more/style-rtl.min.css 131 B
build/styles/block-library/read-more/style.css 146 B
build/styles/block-library/read-more/style.min.css 131 B
build/styles/block-library/reset-rtl.css 936 B
build/styles/block-library/reset-rtl.min.css 467 B
build/styles/block-library/reset.css 936 B
build/styles/block-library/reset.min.css 467 B
build/styles/block-library/rss/editor-rtl.css 144 B
build/styles/block-library/rss/editor-rtl.min.css 126 B
build/styles/block-library/rss/editor.css 144 B
build/styles/block-library/rss/editor.min.css 126 B
build/styles/block-library/rss/style-rtl.css 1.11 kB
build/styles/block-library/rss/style-rtl.min.css 284 B
build/styles/block-library/rss/style.css 1.12 kB
build/styles/block-library/rss/style.min.css 283 B
build/styles/block-library/search/editor-rtl.css 217 B
build/styles/block-library/search/editor-rtl.min.css 199 B
build/styles/block-library/search/editor.css 217 B
build/styles/block-library/search/editor.min.css 199 B
build/styles/block-library/search/style-rtl.css 1.1 kB
build/styles/block-library/search/style-rtl.min.css 665 B
build/styles/block-library/search/style.css 1.1 kB
build/styles/block-library/search/style.min.css 666 B
build/styles/block-library/search/theme-rtl.css 130 B
build/styles/block-library/search/theme-rtl.min.css 113 B
build/styles/block-library/search/theme.css 130 B
build/styles/block-library/search/theme.min.css 113 B
build/styles/block-library/separator/editor-rtl.css 106 B
build/styles/block-library/separator/editor-rtl.min.css 100 B
build/styles/block-library/separator/editor.css 106 B
build/styles/block-library/separator/editor.min.css 100 B
build/styles/block-library/separator/style-rtl.css 284 B
build/styles/block-library/separator/style-rtl.min.css 248 B
build/styles/block-library/separator/style.css 297 B
build/styles/block-library/separator/style.min.css 248 B
build/styles/block-library/separator/theme-rtl.css 226 B
build/styles/block-library/separator/theme-rtl.min.css 195 B
build/styles/block-library/separator/theme.css 226 B
build/styles/block-library/separator/theme.min.css 195 B
build/styles/block-library/shortcode/editor-rtl.css 1.1 kB
build/styles/block-library/shortcode/editor-rtl.min.css 286 B
build/styles/block-library/shortcode/editor.css 1.1 kB
build/styles/block-library/shortcode/editor.min.css 286 B
build/styles/block-library/site-logo/editor-rtl.css 1.12 kB
build/styles/block-library/site-logo/editor-rtl.min.css 696 B
build/styles/block-library/site-logo/editor.css 1.12 kB
build/styles/block-library/site-logo/editor.min.css 692 B
build/styles/block-library/site-logo/style-rtl.css 239 B
build/styles/block-library/site-logo/style-rtl.min.css 218 B
build/styles/block-library/site-logo/style.css 238 B
build/styles/block-library/site-logo/style.min.css 218 B
build/styles/block-library/site-tagline/editor-rtl.css 94 B
build/styles/block-library/site-tagline/editor-rtl.min.css 87 B
build/styles/block-library/site-tagline/editor.css 94 B
build/styles/block-library/site-tagline/editor.min.css 87 B
build/styles/block-library/site-tagline/style-rtl.css 72 B
build/styles/block-library/site-tagline/style-rtl.min.css 65 B
build/styles/block-library/site-tagline/style.css 72 B
build/styles/block-library/site-tagline/style.min.css 65 B
build/styles/block-library/site-title/editor-rtl.css 93 B
build/styles/block-library/site-title/editor-rtl.min.css 85 B
build/styles/block-library/site-title/editor.css 93 B
build/styles/block-library/site-title/editor.min.css 85 B
build/styles/block-library/site-title/style-rtl.css 153 B
build/styles/block-library/site-title/style-rtl.min.css 143 B
build/styles/block-library/site-title/style.css 153 B
build/styles/block-library/site-title/style.min.css 143 B
build/styles/block-library/social-link/editor-rtl.css 346 B
build/styles/block-library/social-link/editor-rtl.min.css 314 B
build/styles/block-library/social-link/editor.css 348 B
build/styles/block-library/social-link/editor.min.css 314 B
build/styles/block-library/social-links/editor-rtl.css 737 B
build/styles/block-library/social-links/editor-rtl.min.css 339 B
build/styles/block-library/social-links/editor.css 738 B
build/styles/block-library/social-links/editor.min.css 338 B
build/styles/block-library/social-links/style-rtl.css 1.57 kB
build/styles/block-library/social-links/style-rtl.min.css 1.51 kB
build/styles/block-library/social-links/style.css 1.57 kB
build/styles/block-library/social-links/style.min.css 1.51 kB
build/styles/block-library/spacer/editor-rtl.css 774 B
build/styles/block-library/spacer/editor-rtl.min.css 346 B
build/styles/block-library/spacer/editor.css 774 B
build/styles/block-library/spacer/editor.min.css 346 B
build/styles/block-library/spacer/style-rtl.css 55 B
build/styles/block-library/spacer/style-rtl.min.css 48 B
build/styles/block-library/spacer/style.css 55 B
build/styles/block-library/spacer/style.min.css 48 B
build/styles/block-library/style-rtl.css 21.5 kB
build/styles/block-library/style-rtl.min.css 18 kB
build/styles/block-library/style.css 21.7 kB
build/styles/block-library/style.min.css 18 kB
build/styles/block-library/tab-panel/style-rtl.css 75 B
build/styles/block-library/tab-panel/style-rtl.min.css 64 B
build/styles/block-library/tab-panel/style.css 75 B
build/styles/block-library/tab-panel/style.min.css 64 B
build/styles/block-library/tab/style-rtl.css 233 B
build/styles/block-library/tab/style-rtl.min.css 210 B
build/styles/block-library/tab/style.css 233 B
build/styles/block-library/tab/style.min.css 210 B
build/styles/block-library/table-of-contents/style-rtl.css 89 B
build/styles/block-library/table-of-contents/style-rtl.min.css 83 B
build/styles/block-library/table-of-contents/style.css 89 B
build/styles/block-library/table-of-contents/style.min.css 83 B
build/styles/block-library/table/editor-rtl.css 1.25 kB
build/styles/block-library/table/editor-rtl.min.css 394 B
build/styles/block-library/table/editor.css 1.25 kB
build/styles/block-library/table/editor.min.css 394 B
build/styles/block-library/table/style-rtl.css 1.06 kB
build/styles/block-library/table/style-rtl.min.css 641 B
build/styles/block-library/table/style.css 1.06 kB
build/styles/block-library/table/style.min.css 640 B
build/styles/block-library/table/theme-rtl.css 985 B
build/styles/block-library/table/theme-rtl.min.css 152 B
build/styles/block-library/table/theme.css 985 B
build/styles/block-library/table/theme.min.css 152 B
build/styles/block-library/tabs-menu-item/editor-rtl.css 168 B
build/styles/block-library/tabs-menu-item/editor-rtl.min.css 155 B
build/styles/block-library/tabs-menu-item/editor.css 168 B
build/styles/block-library/tabs-menu-item/editor.min.css 155 B
build/styles/block-library/tabs-menu-item/style-rtl.css 367 B
build/styles/block-library/tabs-menu-item/style-rtl.min.css 337 B
build/styles/block-library/tabs-menu-item/style.css 367 B
build/styles/block-library/tabs-menu-item/style.min.css 337 B
build/styles/block-library/tabs-menu/editor-rtl.css 116 B
build/styles/block-library/tabs-menu/editor-rtl.min.css 104 B
build/styles/block-library/tabs-menu/editor.css 116 B
build/styles/block-library/tabs-menu/editor.min.css 104 B
build/styles/block-library/tabs-menu/style-rtl.css 135 B
build/styles/block-library/tabs-menu/style-rtl.min.css 111 B
build/styles/block-library/tabs-menu/style.css 135 B
build/styles/block-library/tabs-menu/style.min.css 111 B
build/styles/block-library/tabs/style-rtl.css 95 B
build/styles/block-library/tabs/style-rtl.min.css 84 B
build/styles/block-library/tabs/style.css 95 B
build/styles/block-library/tabs/style.min.css 84 B
build/styles/block-library/tag-cloud/style-rtl.css 283 B
build/styles/block-library/tag-cloud/style-rtl.min.css 248 B
build/styles/block-library/tag-cloud/style.css 283 B
build/styles/block-library/tag-cloud/style.min.css 248 B
build/styles/block-library/template-part/editor-rtl.css 1.2 kB
build/styles/block-library/template-part/editor-rtl.min.css 368 B
build/styles/block-library/template-part/editor.css 1.2 kB
build/styles/block-library/template-part/editor.min.css 368 B
build/styles/block-library/template-part/theme-rtl.css 492 B
build/styles/block-library/template-part/theme-rtl.min.css 113 B
build/styles/block-library/template-part/theme.css 492 B
build/styles/block-library/template-part/theme.min.css 113 B
build/styles/block-library/term-count/style-rtl.css 70 B
build/styles/block-library/term-count/style-rtl.min.css 63 B
build/styles/block-library/term-count/style.css 70 B
build/styles/block-library/term-count/style.min.css 63 B
build/styles/block-library/term-description/style-rtl.css 138 B
build/styles/block-library/term-description/style-rtl.min.css 126 B
build/styles/block-library/term-description/style.css 138 B
build/styles/block-library/term-description/style.min.css 126 B
build/styles/block-library/term-name/style-rtl.css 69 B
build/styles/block-library/term-name/style-rtl.min.css 62 B
build/styles/block-library/term-name/style.css 69 B
build/styles/block-library/term-name/style.min.css 62 B
build/styles/block-library/term-template/editor-rtl.css 267 B
build/styles/block-library/term-template/editor-rtl.min.css 225 B
build/styles/block-library/term-template/editor.css 267 B
build/styles/block-library/term-template/editor.min.css 225 B
build/styles/block-library/term-template/style-rtl.css 124 B
build/styles/block-library/term-template/style-rtl.min.css 114 B
build/styles/block-library/term-template/style.css 124 B
build/styles/block-library/term-template/style.min.css 114 B
build/styles/block-library/text-columns/editor-rtl.css 481 B
build/styles/block-library/text-columns/editor-rtl.min.css 95 B
build/styles/block-library/text-columns/editor.css 481 B
build/styles/block-library/text-columns/editor.min.css 95 B
build/styles/block-library/text-columns/style-rtl.css 177 B
build/styles/block-library/text-columns/style-rtl.min.css 165 B
build/styles/block-library/text-columns/style.css 177 B
build/styles/block-library/text-columns/style.min.css 165 B
build/styles/block-library/theme-rtl.css 1.59 kB
build/styles/block-library/theme-rtl.min.css 715 B
build/styles/block-library/theme.css 1.6 kB
build/styles/block-library/theme.min.css 719 B
build/styles/block-library/verse/style-rtl.css 155 B
build/styles/block-library/verse/style-rtl.min.css 137 B
build/styles/block-library/verse/style.css 155 B
build/styles/block-library/verse/style.min.css 137 B
build/styles/block-library/video/editor-rtl.css 825 B
build/styles/block-library/video/editor-rtl.min.css 415 B
build/styles/block-library/video/editor.css 826 B
build/styles/block-library/video/editor.min.css 416 B
build/styles/block-library/video/style-rtl.css 1.02 kB
build/styles/block-library/video/style-rtl.min.css 202 B
build/styles/block-library/video/style.css 1.02 kB
build/styles/block-library/video/style.min.css 202 B
build/styles/block-library/video/theme-rtl.css 967 B
build/styles/block-library/video/theme-rtl.min.css 134 B
build/styles/block-library/video/theme.css 967 B
build/styles/block-library/video/theme.min.css 134 B
build/styles/commands/style-rtl.css 2.06 kB
build/styles/commands/style-rtl.min.css 1.16 kB
build/styles/commands/style.css 2.05 kB
build/styles/commands/style.min.css 1.16 kB
build/styles/components/style-rtl.css 17 kB
build/styles/components/style-rtl.min.css 13.8 kB
build/styles/components/style.css 17.1 kB
build/styles/components/style.min.css 13.8 kB
build/styles/customize-widgets/style-rtl.css 2.35 kB
build/styles/customize-widgets/style-rtl.min.css 1.44 kB
build/styles/customize-widgets/style.css 2.35 kB
build/styles/customize-widgets/style.min.css 1.44 kB
build/styles/edit-post/classic-rtl.css 1.29 kB
build/styles/edit-post/classic-rtl.min.css 426 B
build/styles/edit-post/classic.css 1.31 kB
build/styles/edit-post/classic.min.css 427 B
build/styles/edit-post/style-rtl.css 4.02 kB
build/styles/edit-post/style-rtl.min.css 2.7 kB
build/styles/edit-post/style.css 4.03 kB
build/styles/edit-post/style.min.css 2.7 kB
build/styles/edit-site/style-rtl.css 20.9 kB
build/styles/edit-site/style-rtl.min.css 17 kB
build/styles/edit-site/style.css 20.9 kB
build/styles/edit-site/style.min.css 17 kB
build/styles/edit-widgets/style-rtl.css 5.34 kB
build/styles/edit-widgets/style-rtl.min.css 4 kB
build/styles/edit-widgets/style.css 5.34 kB
build/styles/edit-widgets/style.min.css 4.01 kB
build/styles/editor/style-rtl.css 26.6 kB
build/styles/editor/style-rtl.min.css 22.5 kB
build/styles/editor/style.css 26.7 kB
build/styles/editor/style.min.css 22.5 kB
build/styles/format-library/style-rtl.css 735 B
build/styles/format-library/style-rtl.min.css 326 B
build/styles/format-library/style.css 746 B
build/styles/format-library/style.min.css 326 B
build/styles/list-reusable-blocks/style-rtl.css 1.07 kB
build/styles/list-reusable-blocks/style-rtl.min.css 250 B
build/styles/list-reusable-blocks/style.css 1.07 kB
build/styles/list-reusable-blocks/style.min.css 249 B
build/styles/media-utils/style-rtl.css 2.08 kB
build/styles/media-utils/style-rtl.min.css 1.17 kB
build/styles/media-utils/style.css 2.08 kB
build/styles/media-utils/style.min.css 1.17 kB
build/styles/nux/style-rtl.css 1.48 kB
build/styles/nux/style-rtl.min.css 622 B
build/styles/nux/style.css 1.5 kB
build/styles/nux/style.min.css 618 B
build/styles/patterns/style-rtl.css 1.46 kB
build/styles/patterns/style-rtl.min.css 611 B
build/styles/patterns/style.css 1.46 kB
build/styles/patterns/style.min.css 611 B
build/styles/preferences/style-rtl.css 1.26 kB
build/styles/preferences/style-rtl.min.css 415 B
build/styles/preferences/style.css 1.26 kB
build/styles/preferences/style.min.css 415 B
build/styles/reusable-blocks/style-rtl.css 1.11 kB
build/styles/reusable-blocks/style-rtl.min.css 275 B
build/styles/reusable-blocks/style.css 1.11 kB
build/styles/reusable-blocks/style.min.css 275 B
build/styles/widgets/style-rtl.css 2.04 kB
build/styles/widgets/style-rtl.min.css 1.15 kB
build/styles/widgets/style.css 2.04 kB
build/styles/widgets/style.min.css 1.15 kB

compressed-size-action

@github-actions

github-actions Bot commented Mar 24, 2026

Copy link
Copy Markdown

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

🔍 Workflow run URL: https://github.com/WordPress/gutenberg/actions/runs/23821798105
📝 Reported issues:

@adamsilverstein adamsilverstein self-assigned this Mar 24, 2026
@adamsilverstein adamsilverstein added [Type] Enhancement A suggestion for improvement. [Type] Performance Related to performance efforts [Feature] Client Side Media Media processing in the browser with WASM [Status] In Progress Tracking issues with work in progress and removed [Type] Enhancement A suggestion for improvement. labels Mar 24, 2026
- Check SharedArrayBuffer availability instead of crossOriginIsolated
  (Document-Isolation-Policy does not set the crossOriginIsolated flag)
- Add --enable-features=SharedArrayBuffer to Playwright launch args
- Navigate to editor on each iteration so the import map is available
- Create fresh buffer copies per resize to avoid detached ArrayBuffer
- Regenerate AVIF test image for wasm-vips codec compatibility
@adamsilverstein

adamsilverstein commented Mar 25, 2026

Copy link
Copy Markdown
Member Author

Initial Performance Results (Local — Apple Silicon)

Results from running media-processing.spec.js locally on Apple Silicon (M-series Mac). Each metric represents the total time to generate all 6 WordPress default sub-sizes (thumbnail 150x150, medium 300x300, medium_large 768x, large 1024x1024, 1536x1536, 2048x2048) from a 3000x2000 source image.

10 samples collected per format (1 throwaway warm-up excluded).

Summary

Format Median (q50) q25 q75 Variance
JPEG 1,813.8 ms 1,709.1 ms 1,819.5 ms +0.31% / -5.77%
WebP 822.0 ms 821.3 ms 823.0 ms +0.13% / -0.08%
AVIF 16,231.9 ms 16,223.3 ms 16,302.4 ms +0.43% / -0.05%

Key Observations

  • WebP is the fastest format — ~2.2x faster than JPEG for sub-size generation.
  • JPEG is moderate at ~1.8 seconds for all 6 sub-sizes.
  • AVIF is significantly slower — ~19.7x slower than WebP and ~8.9x slower than JPEG. This confirms the importance of tracking AVIF performance to catch regressions and validate optimizations.
  • All formats show very low variance between runs, indicating stable and reproducible measurements.

Raw Data (10 samples each, in ms)

JPEG
1709.1, 2021.7, 1811.9, 1693.3, 1715.4, 1819.5, 2020.4, 1817.2, 1520.0, 1815.7
WebP
817.1, 820.6, 823.0, 821.3, 821.5, 821.9, 822.0, 840.1, 828.6, 822.7
AVIF
16225.9, 16241.7, 16219.8, 16223.3, 16232.0, 16231.8, 16314.9, 16559.3, 16302.4, 16178.1

Test Environment

@adamsilverstein

Copy link
Copy Markdown
Member Author

From the CI -

image

@adamsilverstein

Copy link
Copy Markdown
Member Author

cc: @sgomes

@adamsilverstein
adamsilverstein requested review from andrewserong, sgomes, swissspidy and youknowriad and removed request for ajitbohra, nerrad and ntwb March 25, 2026 03:41
Add two new metrics that measure the cross-format image processing
pipeline when imageOutputFormats maps AVIF→JPEG:

- mediaProcessingAvifToJpeg: current approach (resize as AVIF, then
  transcode each sub-size to JPEG)
- mediaProcessingAvifToJpegViaPng: proposed PNG intermediate
  optimization (convert to PNG once, resize from PNG, transcode to
  JPEG)

Local results show ~19.5x improvement: 16,293ms → 836ms.
@adamsilverstein

Copy link
Copy Markdown
Member Author

Cross-format performance metrics added

Pushed a commit adding two new metrics that measure cross-format processing (AVIF→JPEG), which is the scenario addressed by #76846:

  • mediaProcessingAvifToJpeg — current approach: resize in AVIF format, then transcode each sub-size to JPEG
  • mediaProcessingAvifToJpegViaPng — PNG intermediate optimization: convert to lossless PNG once, resize from PNG, transcode to JPEG

Local results (median of 5 runs, 3000×2000 image, 6 sub-sizes)

Metric Median
JPEG (same-format) 1,411 ms
WebP (same-format) 889 ms
AVIF (same-format) 16,312 ms
AVIF→JPEG (current) 16,293 ms
AVIF→JPEG via PNG 836 ms

The PNG intermediate approach is ~19.5x faster for AVIF→JPEG: 16,293 ms → 836 ms.

Verify that each cross-format output is actually JPEG by checking
magic bytes (0xFF 0xD8), non-zero byte length, and valid dimensions.
This ensures the perf measurements reflect real format conversion.
@youknowriad

Copy link
Copy Markdown
Contributor

These are useful metrics 👍

The performance tests on trunk take around 40mn, how long does the job take with these new additions. My thinking is that we should avoid metrics that are very close to each other and focus on one or two important things that we want to track. I'm not sure there's much value in tracking the different formats for instance, if one format becomes slower, there's a big chance that all the formats do, so maybe we should limit to a couple formats to start. Comparing formats between each other is a one off and doesn't make sense to track. (Also noting that we shouldn't compare two metrics in codevitals graph, because of the metric normalization, such comparison doesn't make sense)

@adamsilverstein

Copy link
Copy Markdown
Member Author

These are useful metrics 👍

The performance tests on trunk take around 40mn, how long does the job take with these new additions.

I'm not sure where to check, should be in the run? I can reduce the number of runs or image sizes generated to reduce the run time if that is important. I'll see if I can figure out how long these tests add and keep it to a minimal time. I mostly want to catch regressions and measure potential performance improvements, or see the impact of upgrading libraries like wasm-vips for example.

My thinking is that we should avoid metrics that are very close to each other and focus on one or two important things that we want to track. I'm not sure there's much value in tracking the different formats for instance, if one format becomes slower, there's a big chance that all the formats do, so maybe we should limit to a couple formats to start.

Good point. I will reduce to JPEG and AVIF - JPEG is most common and needs to stay fast, and AVIF is notoriously slow and would be good to improve. I will remove the WebP tests.

Comparing formats between each other is a one off and doesn't make sense to track. (Also noting that we shouldn't compare two metrics in codevitals graph, because of the metric normalization, such comparison doesn't make sense)

Right, I am not intending to compare between formats. The part with AVIF→JPEG I'm trying to measure the speed of format conversion, probably a better test would be JPEG->AVIF - how long does it take for an uploaded JPEG to be transformed into a more compact AVIF. This would be a common scenario for an optimization plugin, for example Performance Lab does this. I will update the test so it works that way PEG->AVIF, does that make sense?

Drop WebP tests (keep JPEG and AVIF as most impactful formats).
Replace AVIF→JPEG one-off comparisons with a single JPEG→AVIF
cross-format metric that tracks real-world optimization scenarios.
Remove PNG-intermediate comparison test.

This reduces per-iteration overhead from ~35s to ~18s, cutting
estimated CI time impact from ~17 min to ~5-6 min.
Fewer iterations reduce CI time while still providing enough
samples to detect regressions.
@youknowriad

Copy link
Copy Markdown
Contributor

So this takes 48mn and in other PRs it takes 42mn. So it's around 6mn extra time for the job. Maybe it's ok to land and we can see about other improvements separately.

@youknowriad

Copy link
Copy Markdown
Contributor
Screenshot 2026-03-31 at 10 39 07 AM

The last run is showing 13% diff for the jpeg format. That seems to indicate that the metric computation might not be stable enough. Would you mind rebasing to see if this margin of error remains high? Do you have ideas on how to make the metric more stable.

const start = performance.now();
for ( const resize of sizes ) {
const buffer = bytes.slice().buffer;
await vipsResizeImage(

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Interesting, so the test itself doesn't need to be an e2e test really, it can just be a quick unit test. Any reason why you went for the e2e test approach?

I guess it's easier because we have all the tools / comparison... in place, but might be good to see later if we can evolve our tools to gather metrics from different kind of tests.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I was mostly following other performance tests, but happy to explore as a unit test.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

I think this is fine to explore as a follow-up (mostly to see if it makes the perf job faster), doesn't have to block this one.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I'm already looking into it :)

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Much faster running directly in a unit test, thanks! Still gets us the regression catching we want for the processing part anyway.

@adamsilverstein

Copy link
Copy Markdown
Member Author

Addressing review feedback

Pushed two commits to address @youknowriad's feedback:

e418647 — Reduce media processing metrics per review feedback

  • Dropped WebP tests (kept JPEG and AVIF as the two most impactful formats)
  • Replaced both AVIF→JPEG one-off comparison metrics with a single mediaProcessingJpegToAvif metric that tracks a real-world scenario (optimization plugins converting uploaded JPEGs to AVIF)
  • Removed the PNG-intermediate comparison test entirely

d83a9f1 — Reduce iterations from 5 to 3

Final metrics (3 total)

Metric Description
mediaProcessingJpeg JPEG same-format resize (6 sub-sizes)
mediaProcessingAvif AVIF same-format resize (6 sub-sizes)
mediaProcessingJpegToAvif JPEG→AVIF cross-format conversion (6 sub-sizes)

CI timing impact

Compared the updated PR against 10 recent trunk runs:

Trunk baseline (no media tests): ~39m 37s average (range: 37m 48s – 42m 16s)

PR version Avg duration Overhead
Original (5 metrics, 11 iterations) ~51 min +11 min
Final (3 metrics, 4 iterations) ~49 min +9 min

Two consecutive runs of the final config came in at 49m 17s and 48m 45s (32s variance), so the measurements are stable.

The media processing tests add roughly ~9 minutes to the CI performance suite.

Run vips WASM processing directly in Node.js instead of inside a
browser via page.evaluate(). This eliminates the need for wp-env,
Chromium, SharedArrayBuffer flags, and WordPress admin navigation.

Uses wasm-vips Node.js build directly, which provides ~8-10x faster
JPEG/AVIF processing and reduces total test time from ~1.5 min to ~16s.
With Node.js execution, each iteration takes ~3.8s, so 7 samples
(+1 throwaway) adds only ~15s for a total of ~31s. The JPEG metric
median stability improves 3x (CV 1.03% -> 0.35%).
@adamsilverstein

Copy link
Copy Markdown
Member Author

Converted the media processing perf test from an e2e test (browser via page.evaluate()) to run directly in Node.js using the wasm-vips Node.js build, per @youknowriad's suggestion in #76792 (comment).

What changed

  • Import @playwright/test directly instead of @wordpress/e2e-test-utils-playwright (no browser fixtures needed)
  • Use wasm-vips Node.js build directly instead of going through @wordpress/vips/worker RPC layer
  • Removed all browser dependencies: wp-env, SharedArrayBuffer flags, admin navigation, post creation
  • Increased samples from 3 to 7 (since iterations are much faster now)

Performance comparison

Processing scores (median, lower is better):

Metric Browser (e2e) Node.js Change
mediaProcessingJpeg 1720 ms 174 ms ~10x faster
mediaProcessingAvif 16320 ms 2027 ms ~8x faster
mediaProcessingJpegToAvif 1422 ms 1540 ms ~similar

Node.js WASM runtime is significantly faster for same-format processing. Cross-format is comparable.

Test execution time: 1.5 min → 31 sec (with more samples)

Median stability (CV across 5 independent runs)

Metric 3 samples 7 samples
JPEG 1.03% 0.35%
AVIF 0.24% 0.99%
JPEG-to-AVIF 0.27% 0.45%

JPEG benefits most from more samples since it's the fastest metric (~174ms) and most susceptible to scheduling jitter.

@adamsilverstein

Copy link
Copy Markdown
Member Author
image

@adamsilverstein

Copy link
Copy Markdown
Member Author

The tests are much faster to run as e2e!

It would still be nice to also have e2e to test the "pipeline" of processing an image through the various stages of an upload which we are trying to optimize in other tickets (eg. #76846); still - this is a good start.

@youknowriad youknowriad left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

LGTM 👍

{
file: 'media-processing.performance-results.json',
metricsPrefix: 'media-',
},

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

These metrics will have to be added to codevitals.run to show up there.

@adamsilverstein adamsilverstein Apr 1, 2026

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Is that in a repository somewhere or added directly? Happy to add if I can figure out how and have capability required.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

It's in the "settings" when you add "Gutenberg" to your repositories (if you have admin access to Gutenberg)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Happy to add myself, what are the keys that need to be added?

@adamsilverstein
adamsilverstein merged commit 571c47e into trunk Apr 1, 2026
45 of 50 checks passed
@adamsilverstein
adamsilverstein deleted the add-performance-metrics-to-csm branch April 1, 2026 16:07
@github-actions github-actions Bot added this to the Gutenberg 23.0 milestone Apr 1, 2026
ObliviousHarmony pushed a commit that referenced this pull request Apr 1, 2026
* Add performance metrics for client-side media processing

Add a new performance test that measures decode, resize, and encode
time for generating all WordPress default sub-sizes (thumbnail, medium,
medium_large, large, 1536x1536, 2048x2048) from JPEG and AVIF source images using @wordpress/vips.
adamsilverstein added a commit that referenced this pull request Apr 7, 2026
* Add performance metrics for client-side media processing

Add a new performance test that measures decode, resize, and encode
time for generating all WordPress default sub-sizes (thumbnail, medium,
medium_large, large, 1536x1536, 2048x2048) from JPEG and AVIF source images using @wordpress/vips.
adamsilverstein added a commit that referenced this pull request Apr 23, 2026
Await vipsPromise locally so Cache.max(0) can run on the resolved
instance. Adopt trunk's media-processing spec (#76792) and drop the
PR's E2E upload benchmarks; reporter metric names now match trunk's
mediaProcessingJpeg/Avif/JpegToAvif.
adamsilverstein added a commit that referenced this pull request Apr 23, 2026
Union the performance-reporter metric types so both the PR's E2E
media upload benchmarks and trunk's media-processing benchmarks
(#76792) are preserved.
pento pushed a commit to WordPress/wordpress-develop that referenced this pull request Jun 30, 2026
This updates the pinned commit hash of the Gutenberg repository from `5426109cdaf45828ef28ff8527d7d38e7e75fe74` (version `22.9.0`) to `7295bd91a3c2b64bb11dde0a12313210d9d16a12` (version `23.0.0`).

A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/v22.9.0..v23.0.0.

The following commits are included:
- Classify admin-ui and dataviews to components (WordPress/gutenberg#76959)
- Add performance metrics for client-side media processing (WordPress/gutenberg#76792)
- Connectors: Update help text from 'reset' to 'manage' (WordPress/gutenberg#76963)
- Connectors: Hide Akismet unless already installed (WordPress/gutenberg#76962)
- Remove unused catch block variables across the codebase (WordPress/gutenberg#76969)
- Wrap sync update processing in try/catch (WordPress/gutenberg#76968)
- Backport: Improve validation and permission checks for `WP_HTTP_Polling_Sync_Server` (WordPress/gutenberg#76987)
- BlockMover: Remove unused disabled button props (WordPress/gutenberg#76993)
- Core Data: Fix incorrect pagination for non-paginated entities (WordPress/gutenberg#76406)
- Block Editor: Display shortcuts for moving blocks via tooltips (WordPress/gutenberg#76992)
- Convert directories in test/ to workspaces (WordPress/gutenberg#74684)
- RTC: Fix core/table cell merging (WordPress/gutenberg#76913)
- Components: Extract the autocomplete matcher into a separate function (WordPress/gutenberg#76957)
- Added Context for Next/Prev Enlarge Image (WordPress/gutenberg#76967)
- Build Tools: Update TypeScript to 6.0.2 (WordPress/gutenberg#77010)
- Text: Remove UA margins (WordPress/gutenberg#76970)
- Fix pre-existing lint errors across the codebase (WordPress/gutenberg#77002)
- Fix failing 'WP_HTTP_Polling_Sync_Server' unit test (WordPress/gutenberg#77025)
- Card: Set default foreground color on root (WordPress/gutenberg#77013)
- TypeScript: Migrate a11y package to TS  (WordPress/gutenberg#70680)
- Button: Remove unused Storybook story stylesheet (WordPress/gutenberg#77031)
- Improve CSS setup instructions in package readmes (WordPress/gutenberg#76975)
- Use Link component in details story example (WordPress/gutenberg#76997)
- @wordpress/ui: Add global CSS defense module (WordPress/gutenberg#76783)
- Autocompleters: Move and improve links search (WordPress/gutenberg#76995)
- Autocomplete: Refactor useAutocomplete to use useReducer (WordPress/gutenberg#77020)
- Components: Fix autocomplete overlapping trigger matching (WordPress/gutenberg#77018)
- Fix: A sentence has no ending punctuation in README.md file. (WordPress/gutenberg#77027)
- `ValidatedRangeControl`: Fix aria-label rendered as [object Object] (WordPress/gutenberg#77042)
- HStack, VStack: Mark as not recommended for use (WordPress/gutenberg#77041)
- Tests: Fix wp-env scripts not found in test workspaces (WordPress/gutenberg#77055)
- Bump the github-actions group across 1 directory with 2 updates (WordPress/gutenberg#77030)
- Autocomplete: Clarify 'isDebounced' setting limitation (WordPress/gutenberg#77062)
- Fix SyntaxError in Autocompleter UI when pasting matching content (WordPress/gutenberg#76961)
- Connectors: account for mu-plugins when resolving plugin.file status (WordPress/gutenberg#76994)
- Storybook: Fix E2E subpath exports and add CI build smoke test (WordPress/gutenberg#77034)
- Fix Storybook cursor Default option passing theme token (WordPress/gutenberg#77037)
- Storybook: Enable theming toolbar for wp-components (WordPress/gutenberg#77038)
- RTC: Fix "Edit as HTML" content reset during collaboration (WordPress/gutenberg#77043)
- RTC: Fix inline inserter reset on update sync (WordPress/gutenberg#76980)
- RTC: Predefined retry schedules for disconnect dialog, make more lenient (WordPress/gutenberg#76966)
- Block Editor: Prevent Enter key from inserting paragraphs in contentOnly sections (WordPress/gutenberg#76989)
- Editor: Fix 'selectedNote' action PHPDoc (WordPress/gutenberg#77080)
- Tests: Fix argument forwarding for workspace test scripts (WordPress/gutenberg#77083)
- Search block: Derive 'isSearchFieldHidden' value (WordPress/gutenberg#77082)
- Cover block: fix embed video background Error 153 in editor (WordPress/gutenberg#76904)
- Fields: Fix `postContentInfoField` when there are edits (WordPress/gutenberg#76901)
- Restore original template registration tests alongside activation variants (WordPress/gutenberg#77068)
- i18n: Make sprintf return FormattedText for type-safe createInterpolateElement (WordPress/gutenberg#76974)
- Block Editor store: refactor controlledInnerBlocks to Set (WordPress/gutenberg#77094)
- DataForm: support disabled controls (WordPress/gutenberg#77090)
- ESLint plugin: Disable `jsx-a11y/heading-has-content` (WordPress/gutenberg#77073)
- Remove remaining esModuleInterop usage (WordPress/gutenberg#77095)
- Avoid stale values in core/cover block for RTC compatibility (WordPress/gutenberg#76916)
- RTC: Add optional `shouldSync` function to entity sync config (WordPress/gutenberg#76947)
- Bump oras-project/setup-oras (WordPress/gutenberg#77096)
- RTC: Change SyncConnectionModal to isSyncConnectionErrorHandled filter and drop IS_GUTENBERG_PLUGIN check (WordPress/gutenberg#76853)
- RTC: Respect WP_ALLOW_COLLABORATION in Gutenberg for activation hook (WordPress/gutenberg#77084)
- Add iteration issue template (WordPress/gutenberg#77113)
- Media Modal Experiment: Set matching picker grid layout properties for when a user switches between layouts (WordPress/gutenberg#77118)
- contentOnly template lock: Fix block insertion and removal rules (WordPress/gutenberg#77119)
- Global Styles Revisions: Fix footer overflow (WordPress/gutenberg#77103)
- updateBlockListSettings: convert state to Map, do all updates in one action (WordPress/gutenberg#46392)
- DataViews: Fix `compact` density clipping and remove top/bottom padding (WordPress/gutenberg#77054)
- Icons: Override WP_Icons_Registry singleton with Gutenberg icons registry (WordPress/gutenberg#76455)
- Button: Remove obsolete Safari + VoiceOver workaround (WordPress/gutenberg#77107)
- E2E Tests: Ensure artifacts generate correctly and remove unnecessary artifacts (WordPress/gutenberg#77093)
- UI `Text`: Mark as recommended (WordPress/gutenberg#77044)
- ui/AlertDialog: better async confirm APIs, fully use base ui's `AlertDialog` (WordPress/gutenberg#76937)
- BlockStyleVariationOverridesWithConfig: change name and fix lint errors (WordPress/gutenberg#77130)
- Add `.scss` files to CSS module linting (WordPress/gutenberg#77140)
- BoxControl: remove unused state for icon side (WordPress/gutenberg#77143)
- Fix overflow of Highlighted white-space in Code Block (WordPress/gutenberg#77085)
- move pseudo-state slicing logic into useStyle hook (WordPress/gutenberg#77104)
- Autocomplete: Remove getAutoCompleterUI factory pattern (WordPress/gutenberg#77048)
- Add `date` field in templates and template parts (WordPress/gutenberg#77134)
- Revisions: Simplify fetching (WordPress/gutenberg#77086)
- Remove 'Home' and 'End' key usage from Navigation Tests (WordPress/gutenberg#77102)
- Guidelines: Update actions-section and import/export workflow (WordPress/gutenberg#76621)
- Image block: Hide drag handles while an upload is in progress (WordPress/gutenberg#77121)
- Build: Fix glob ignore patterns in dot-prefixed directories (WordPress/gutenberg#75114)
- Added missing documentation in `collaboration.php` (WordPress/gutenberg#77173)
- `@wordpress/ui`: add `Popover` (WordPress/gutenberg#76438)
- Add Site Tagline and Site Title to Design > Identity panel (WordPress/gutenberg#76264)
- Revision: Fix 'Show changes' button reset state (WordPress/gutenberg#77122)
- Components: update React function names for better ESLint detection (WordPress/gutenberg#77148)
- Link picker: Decode HTML entities in link preview title (WordPress/gutenberg#77170)
- MediaEdit: handle '*' wildcard in validateMimeType (WordPress/gutenberg#77168)
- Search block : Match behaviour of global styling for border and color with local styling (inspector controls) to remove inconsistency (WordPress/gutenberg#77060)
- Re-order spacing side controls when unlinked (WordPress/gutenberg#66317)
- Dataviews: remove unneeded ref callbacks (WordPress/gutenberg#77179)
- Experiment: Add revisions panel to templates, template parts and patterns (WordPress/gutenberg#77008)
- Guidelines CPT: Changes slug from wp_content_guidelines to wp_guidelines (WordPress/gutenberg#77147)
- TextArea: add disabled styles (WordPress/gutenberg#77129)
- Writing Flow: Fix format toolbar not appearing when selecting text from block edge (WordPress/gutenberg#77136)
- DataForm: Remove `text-transform` from `panel` field labels (WordPress/gutenberg#77196)
- FormTokenField: fix disabled styles (WordPress/gutenberg#77137)
- Admin UI: Increase page header vertical padding (WordPress/gutenberg#77152)
- Use entity link title for link control preview (WordPress/gutenberg#77155)
- TypeScript: migrate annotations package to TS (WordPress/gutenberg#70602)
- refactor: migrate bin/api-docs to tools/api-docs as workspace `@wordpress/api-docs-generator` (WordPress/gutenberg#77019)
- TypeScript: Migrate viewport package (WordPress/gutenberg#71118)
- UI/Tooltip: Add usage guidelines documentation (WordPress/gutenberg#77158)
- RadioControl: add support for disabling radio group (WordPress/gutenberg#77127)
- Upgrade ESLint to v10 (WordPress/gutenberg#76654)
- Add e2e test coverage for the Guidelines settings page (WordPress/gutenberg#77192)
- Admin UI: Update Page background color to surface-neutral (WordPress/gutenberg#76869)
- Fix lint-staged API docs path (WordPress/gutenberg#77203)
- PresetInputControl: Fix clearing of numeric value in custom input control (WordPress/gutenberg#77139)
- Upload external media: Ensure notice only fires once (WordPress/gutenberg#77218)
- Checkbox: fix disabled styles (WordPress/gutenberg#77132)
- FormToggle: Update disabled styles (WordPress/gutenberg#77208)
- Calendar: fix disabled styles (WordPress/gutenberg#77138)
- Textarea: remove unnecessary styles (WordPress/gutenberg#77221)
- Search Block: Ensure color settings apply to input field when button is disabled (WordPress/gutenberg#77219)
- iAPI Docs: Fix typos, code errors, and inaccuracies in the documentation (WordPress/gutenberg#76636)
- Connectors: don't clobber third-party custom render in registerDefaultConnectors (WordPress/gutenberg#77116)
- Guidelines: Improve guideline revision UX (WordPress/gutenberg#76560)
- ui/`Dialog`: update Header layout, refactor Title to use Text (WordPress/gutenberg#77161)
- ui/docs: add additional global css setup instructions (WordPress/gutenberg#77228)
- ui/VisuallyHidden: Standardize composition pattern (WordPress/gutenberg#77190)
- ui: expose `container` portal prop on all overlay Popup components (WordPress/gutenberg#77163)
- Components: Use `--wpds-cursor-control` for interactive controls (Sass only) (WordPress/gutenberg#76786)
- Card: Remove redundant margin reset from Card.Title (WordPress/gutenberg#77187)
- Theme: Rename typography tokens to use "typography" prefix (WordPress/gutenberg#76912)
- UI: Normalize render prop and ref forwarding patterns (WordPress/gutenberg#77160)
- Ensure "Retry" button is stable during retries (WordPress/gutenberg#77234)
- RTC: Improve array attribute stability when structural changes occur (WordPress/gutenberg#77164)
- Env: Fix loopback requests when running on non-default ports (WordPress/gutenberg#77057)
- Connectors: Replace speak() with notice store for state changes (WordPress/gutenberg#77174)
- Core Data: Fix 'useEntityProp' for raw attributes (WordPress/gutenberg#77120)
- Use image.copyMemory() for batch thumbnail generation (WordPress/gutenberg#76979)
- Post Author Biography: Preserve occurance of white spaces (WordPress/gutenberg#71133)
- Fix PatternsActions prop name from postType to type (WordPress/gutenberg#77251)
- Resolve package-lock.json inconsistency for @babel/eslint-parser (WordPress/gutenberg#77256)
- Fix duotone filter not applying on style variation switch (WordPress/gutenberg#77229)
- Fix: restore editor canvas padding in classic themes (WordPress/gutenberg#76864)
- DataViews: simplify `defaultLayouts` prop (WordPress/gutenberg#77232)
- getMergedItemsIds: receive full page bigger than perPage (WordPress/gutenberg#77262)
- FormTokenField: remove unnecessary styles (WordPress/gutenberg#77263)
- TypeScript: Migrate `packages/list-reusable-blocks` package to TypeScript (WordPress/gutenberg#70518)
- RTC: Add filterable flag for meta box RTC compatibility (WordPress/gutenberg#76939)
- RTC: Fix disconnect dialog due to uneditable entity (WordPress/gutenberg#77242)
- Guidelines: Try removing the jsxRuntime pragma and see what happens (WordPress/gutenberg#77255)
- DataForm: Show tooltip in edit button in `panel` layout (WordPress/gutenberg#77024)
- blocks: Convert blocks package to TypeScript (WordPress/gutenberg#76312)
- Fix Gutenberg_REST_View_Config_Controller_7_1 PHP warnings (WordPress/gutenberg#77290)
- renamed focus visible (WordPress/gutenberg#77292)
- page.waitForFunction: fix call arguments (WordPress/gutenberg#77300)
- Tabs: Simplify anchor handling (WordPress/gutenberg#77189)
- Tests: Auto-fix some new 'eslint-plugin-playwright' warnings (WordPress/gutenberg#77314)
- Tab Menu Item: simplify active tab menu item style (WordPress/gutenberg#77195)
- Eslint: Suggest alternative in `no-setting-ds-tokens` rule (WordPress/gutenberg#77154)
- Autocomplete: Fix flaky e2e tests (WordPress/gutenberg#77322)
- UI: Update `@base-ui/react` from `1.3.0` to `1.4.0` (WordPress/gutenberg#77308)
- Docs: Add README for DatePicker and TimePicker Components (WordPress/gutenberg#70365)
- UI: use Text component for Badge typography (WordPress/gutenberg#77295)
- Block Editor: Extract getElementCSSRules from useBlockProps (WordPress/gutenberg#77327)
- Edit Post: Fix warning in 'useMetaBoxInitialization' hook (WordPress/gutenberg#77311)
- Update the page slug we link to for the AI plugin after the plugin has been installed and activated (WordPress/gutenberg#77336)
- Guidelines CPT: Rename references from content guidelines to guidelines (WordPress/gutenberg#77223)
- Dialog: add explicit margin-inline-end rule to Title (WordPress/gutenberg#77334)
- Remove sandbox `allow-same-origin` for core/html blocks (WordPress/gutenberg#77212)
- Block Directory: Use `--wpds-cursor-control` design token (WordPress/gutenberg#77330)
- Registers wp_guideline_type taxonomy (WordPress/gutenberg#77156)
- DataForm: Add min/max date range support for date and datetime fields (WordPress/gutenberg#77201)
- Separator Block: Apply default block variation when inserting via `---` shortcut (WordPress/gutenberg#77135)
- Paragraph: Prevent `onEnter` splitting of parent block when insertion of that block type is not allowed (WordPress/gutenberg#77291)
- Media Upload Modal: Persist view configuration (WordPress/gutenberg#77288)
- Image block: Validate attachment ID exists before treating image as local (WordPress/gutenberg#77178)
- Tabs: remove sequential numbering from new tab labels (WordPress/gutenberg#77321)
- DataViews: Use `--wpds-cursor-control` design token for interactive controls (WordPress/gutenberg#77259)
- Post Editor: Store metaboxes RTC-compatible flag on location entries (WordPress/gutenberg#77361)
- Guidelines CPT: Skip registration when post type already exists (WordPress/gutenberg#77486)
- RTC: Fixed orphaned meta causing dirty editor state (WordPress/gutenberg#77529)
- Guidelines: Make the CPT type-aware (WordPress/gutenberg#77491)

Props adamsilverstein, jorbin, westonruter, wildworks.
Fixes #65557.

git-svn-id: https://develop.svn.wordpress.org/trunk@62580 602fd350-edb4-49c9-b593-d223f7449a82
markjaquith pushed a commit to markjaquith/WordPress that referenced this pull request Jun 30, 2026
This updates the pinned commit hash of the Gutenberg repository from `5426109cdaf45828ef28ff8527d7d38e7e75fe74` (version `22.9.0`) to `7295bd91a3c2b64bb11dde0a12313210d9d16a12` (version `23.0.0`).

A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/v22.9.0..v23.0.0.

The following commits are included:
- Classify admin-ui and dataviews to components (WordPress/gutenberg#76959)
- Add performance metrics for client-side media processing (WordPress/gutenberg#76792)
- Connectors: Update help text from 'reset' to 'manage' (WordPress/gutenberg#76963)
- Connectors: Hide Akismet unless already installed (WordPress/gutenberg#76962)
- Remove unused catch block variables across the codebase (WordPress/gutenberg#76969)
- Wrap sync update processing in try/catch (WordPress/gutenberg#76968)
- Backport: Improve validation and permission checks for `WP_HTTP_Polling_Sync_Server` (WordPress/gutenberg#76987)
- BlockMover: Remove unused disabled button props (WordPress/gutenberg#76993)
- Core Data: Fix incorrect pagination for non-paginated entities (WordPress/gutenberg#76406)
- Block Editor: Display shortcuts for moving blocks via tooltips (WordPress/gutenberg#76992)
- Convert directories in test/ to workspaces (WordPress/gutenberg#74684)
- RTC: Fix core/table cell merging (WordPress/gutenberg#76913)
- Components: Extract the autocomplete matcher into a separate function (WordPress/gutenberg#76957)
- Added Context for Next/Prev Enlarge Image (WordPress/gutenberg#76967)
- Build Tools: Update TypeScript to 6.0.2 (WordPress/gutenberg#77010)
- Text: Remove UA margins (WordPress/gutenberg#76970)
- Fix pre-existing lint errors across the codebase (WordPress/gutenberg#77002)
- Fix failing 'WP_HTTP_Polling_Sync_Server' unit test (WordPress/gutenberg#77025)
- Card: Set default foreground color on root (WordPress/gutenberg#77013)
- TypeScript: Migrate a11y package to TS  (WordPress/gutenberg#70680)
- Button: Remove unused Storybook story stylesheet (WordPress/gutenberg#77031)
- Improve CSS setup instructions in package readmes (WordPress/gutenberg#76975)
- Use Link component in details story example (WordPress/gutenberg#76997)
- @wordpress/ui: Add global CSS defense module (WordPress/gutenberg#76783)
- Autocompleters: Move and improve links search (WordPress/gutenberg#76995)
- Autocomplete: Refactor useAutocomplete to use useReducer (WordPress/gutenberg#77020)
- Components: Fix autocomplete overlapping trigger matching (WordPress/gutenberg#77018)
- Fix: A sentence has no ending punctuation in README.md file. (WordPress/gutenberg#77027)
- `ValidatedRangeControl`: Fix aria-label rendered as [object Object] (WordPress/gutenberg#77042)
- HStack, VStack: Mark as not recommended for use (WordPress/gutenberg#77041)
- Tests: Fix wp-env scripts not found in test workspaces (WordPress/gutenberg#77055)
- Bump the github-actions group across 1 directory with 2 updates (WordPress/gutenberg#77030)
- Autocomplete: Clarify 'isDebounced' setting limitation (WordPress/gutenberg#77062)
- Fix SyntaxError in Autocompleter UI when pasting matching content (WordPress/gutenberg#76961)
- Connectors: account for mu-plugins when resolving plugin.file status (WordPress/gutenberg#76994)
- Storybook: Fix E2E subpath exports and add CI build smoke test (WordPress/gutenberg#77034)
- Fix Storybook cursor Default option passing theme token (WordPress/gutenberg#77037)
- Storybook: Enable theming toolbar for wp-components (WordPress/gutenberg#77038)
- RTC: Fix "Edit as HTML" content reset during collaboration (WordPress/gutenberg#77043)
- RTC: Fix inline inserter reset on update sync (WordPress/gutenberg#76980)
- RTC: Predefined retry schedules for disconnect dialog, make more lenient (WordPress/gutenberg#76966)
- Block Editor: Prevent Enter key from inserting paragraphs in contentOnly sections (WordPress/gutenberg#76989)
- Editor: Fix 'selectedNote' action PHPDoc (WordPress/gutenberg#77080)
- Tests: Fix argument forwarding for workspace test scripts (WordPress/gutenberg#77083)
- Search block: Derive 'isSearchFieldHidden' value (WordPress/gutenberg#77082)
- Cover block: fix embed video background Error 153 in editor (WordPress/gutenberg#76904)
- Fields: Fix `postContentInfoField` when there are edits (WordPress/gutenberg#76901)
- Restore original template registration tests alongside activation variants (WordPress/gutenberg#77068)
- i18n: Make sprintf return FormattedText for type-safe createInterpolateElement (WordPress/gutenberg#76974)
- Block Editor store: refactor controlledInnerBlocks to Set (WordPress/gutenberg#77094)
- DataForm: support disabled controls (WordPress/gutenberg#77090)
- ESLint plugin: Disable `jsx-a11y/heading-has-content` (WordPress/gutenberg#77073)
- Remove remaining esModuleInterop usage (WordPress/gutenberg#77095)
- Avoid stale values in core/cover block for RTC compatibility (WordPress/gutenberg#76916)
- RTC: Add optional `shouldSync` function to entity sync config (WordPress/gutenberg#76947)
- Bump oras-project/setup-oras (WordPress/gutenberg#77096)
- RTC: Change SyncConnectionModal to isSyncConnectionErrorHandled filter and drop IS_GUTENBERG_PLUGIN check (WordPress/gutenberg#76853)
- RTC: Respect WP_ALLOW_COLLABORATION in Gutenberg for activation hook (WordPress/gutenberg#77084)
- Add iteration issue template (WordPress/gutenberg#77113)
- Media Modal Experiment: Set matching picker grid layout properties for when a user switches between layouts (WordPress/gutenberg#77118)
- contentOnly template lock: Fix block insertion and removal rules (WordPress/gutenberg#77119)
- Global Styles Revisions: Fix footer overflow (WordPress/gutenberg#77103)
- updateBlockListSettings: convert state to Map, do all updates in one action (WordPress/gutenberg#46392)
- DataViews: Fix `compact` density clipping and remove top/bottom padding (WordPress/gutenberg#77054)
- Icons: Override WP_Icons_Registry singleton with Gutenberg icons registry (WordPress/gutenberg#76455)
- Button: Remove obsolete Safari + VoiceOver workaround (WordPress/gutenberg#77107)
- E2E Tests: Ensure artifacts generate correctly and remove unnecessary artifacts (WordPress/gutenberg#77093)
- UI `Text`: Mark as recommended (WordPress/gutenberg#77044)
- ui/AlertDialog: better async confirm APIs, fully use base ui's `AlertDialog` (WordPress/gutenberg#76937)
- BlockStyleVariationOverridesWithConfig: change name and fix lint errors (WordPress/gutenberg#77130)
- Add `.scss` files to CSS module linting (WordPress/gutenberg#77140)
- BoxControl: remove unused state for icon side (WordPress/gutenberg#77143)
- Fix overflow of Highlighted white-space in Code Block (WordPress/gutenberg#77085)
- move pseudo-state slicing logic into useStyle hook (WordPress/gutenberg#77104)
- Autocomplete: Remove getAutoCompleterUI factory pattern (WordPress/gutenberg#77048)
- Add `date` field in templates and template parts (WordPress/gutenberg#77134)
- Revisions: Simplify fetching (WordPress/gutenberg#77086)
- Remove 'Home' and 'End' key usage from Navigation Tests (WordPress/gutenberg#77102)
- Guidelines: Update actions-section and import/export workflow (WordPress/gutenberg#76621)
- Image block: Hide drag handles while an upload is in progress (WordPress/gutenberg#77121)
- Build: Fix glob ignore patterns in dot-prefixed directories (WordPress/gutenberg#75114)
- Added missing documentation in `collaboration.php` (WordPress/gutenberg#77173)
- `@wordpress/ui`: add `Popover` (WordPress/gutenberg#76438)
- Add Site Tagline and Site Title to Design > Identity panel (WordPress/gutenberg#76264)
- Revision: Fix 'Show changes' button reset state (WordPress/gutenberg#77122)
- Components: update React function names for better ESLint detection (WordPress/gutenberg#77148)
- Link picker: Decode HTML entities in link preview title (WordPress/gutenberg#77170)
- MediaEdit: handle '*' wildcard in validateMimeType (WordPress/gutenberg#77168)
- Search block : Match behaviour of global styling for border and color with local styling (inspector controls) to remove inconsistency (WordPress/gutenberg#77060)
- Re-order spacing side controls when unlinked (WordPress/gutenberg#66317)
- Dataviews: remove unneeded ref callbacks (WordPress/gutenberg#77179)
- Experiment: Add revisions panel to templates, template parts and patterns (WordPress/gutenberg#77008)
- Guidelines CPT: Changes slug from wp_content_guidelines to wp_guidelines (WordPress/gutenberg#77147)
- TextArea: add disabled styles (WordPress/gutenberg#77129)
- Writing Flow: Fix format toolbar not appearing when selecting text from block edge (WordPress/gutenberg#77136)
- DataForm: Remove `text-transform` from `panel` field labels (WordPress/gutenberg#77196)
- FormTokenField: fix disabled styles (WordPress/gutenberg#77137)
- Admin UI: Increase page header vertical padding (WordPress/gutenberg#77152)
- Use entity link title for link control preview (WordPress/gutenberg#77155)
- TypeScript: migrate annotations package to TS (WordPress/gutenberg#70602)
- refactor: migrate bin/api-docs to tools/api-docs as workspace `@wordpress/api-docs-generator` (WordPress/gutenberg#77019)
- TypeScript: Migrate viewport package (WordPress/gutenberg#71118)
- UI/Tooltip: Add usage guidelines documentation (WordPress/gutenberg#77158)
- RadioControl: add support for disabling radio group (WordPress/gutenberg#77127)
- Upgrade ESLint to v10 (WordPress/gutenberg#76654)
- Add e2e test coverage for the Guidelines settings page (WordPress/gutenberg#77192)
- Admin UI: Update Page background color to surface-neutral (WordPress/gutenberg#76869)
- Fix lint-staged API docs path (WordPress/gutenberg#77203)
- PresetInputControl: Fix clearing of numeric value in custom input control (WordPress/gutenberg#77139)
- Upload external media: Ensure notice only fires once (WordPress/gutenberg#77218)
- Checkbox: fix disabled styles (WordPress/gutenberg#77132)
- FormToggle: Update disabled styles (WordPress/gutenberg#77208)
- Calendar: fix disabled styles (WordPress/gutenberg#77138)
- Textarea: remove unnecessary styles (WordPress/gutenberg#77221)
- Search Block: Ensure color settings apply to input field when button is disabled (WordPress/gutenberg#77219)
- iAPI Docs: Fix typos, code errors, and inaccuracies in the documentation (WordPress/gutenberg#76636)
- Connectors: don't clobber third-party custom render in registerDefaultConnectors (WordPress/gutenberg#77116)
- Guidelines: Improve guideline revision UX (WordPress/gutenberg#76560)
- ui/`Dialog`: update Header layout, refactor Title to use Text (WordPress/gutenberg#77161)
- ui/docs: add additional global css setup instructions (WordPress/gutenberg#77228)
- ui/VisuallyHidden: Standardize composition pattern (WordPress/gutenberg#77190)
- ui: expose `container` portal prop on all overlay Popup components (WordPress/gutenberg#77163)
- Components: Use `--wpds-cursor-control` for interactive controls (Sass only) (WordPress/gutenberg#76786)
- Card: Remove redundant margin reset from Card.Title (WordPress/gutenberg#77187)
- Theme: Rename typography tokens to use "typography" prefix (WordPress/gutenberg#76912)
- UI: Normalize render prop and ref forwarding patterns (WordPress/gutenberg#77160)
- Ensure "Retry" button is stable during retries (WordPress/gutenberg#77234)
- RTC: Improve array attribute stability when structural changes occur (WordPress/gutenberg#77164)
- Env: Fix loopback requests when running on non-default ports (WordPress/gutenberg#77057)
- Connectors: Replace speak() with notice store for state changes (WordPress/gutenberg#77174)
- Core Data: Fix 'useEntityProp' for raw attributes (WordPress/gutenberg#77120)
- Use image.copyMemory() for batch thumbnail generation (WordPress/gutenberg#76979)
- Post Author Biography: Preserve occurance of white spaces (WordPress/gutenberg#71133)
- Fix PatternsActions prop name from postType to type (WordPress/gutenberg#77251)
- Resolve package-lock.json inconsistency for @babel/eslint-parser (WordPress/gutenberg#77256)
- Fix duotone filter not applying on style variation switch (WordPress/gutenberg#77229)
- Fix: restore editor canvas padding in classic themes (WordPress/gutenberg#76864)
- DataViews: simplify `defaultLayouts` prop (WordPress/gutenberg#77232)
- getMergedItemsIds: receive full page bigger than perPage (WordPress/gutenberg#77262)
- FormTokenField: remove unnecessary styles (WordPress/gutenberg#77263)
- TypeScript: Migrate `packages/list-reusable-blocks` package to TypeScript (WordPress/gutenberg#70518)
- RTC: Add filterable flag for meta box RTC compatibility (WordPress/gutenberg#76939)
- RTC: Fix disconnect dialog due to uneditable entity (WordPress/gutenberg#77242)
- Guidelines: Try removing the jsxRuntime pragma and see what happens (WordPress/gutenberg#77255)
- DataForm: Show tooltip in edit button in `panel` layout (WordPress/gutenberg#77024)
- blocks: Convert blocks package to TypeScript (WordPress/gutenberg#76312)
- Fix Gutenberg_REST_View_Config_Controller_7_1 PHP warnings (WordPress/gutenberg#77290)
- renamed focus visible (WordPress/gutenberg#77292)
- page.waitForFunction: fix call arguments (WordPress/gutenberg#77300)
- Tabs: Simplify anchor handling (WordPress/gutenberg#77189)
- Tests: Auto-fix some new 'eslint-plugin-playwright' warnings (WordPress/gutenberg#77314)
- Tab Menu Item: simplify active tab menu item style (WordPress/gutenberg#77195)
- Eslint: Suggest alternative in `no-setting-ds-tokens` rule (WordPress/gutenberg#77154)
- Autocomplete: Fix flaky e2e tests (WordPress/gutenberg#77322)
- UI: Update `@base-ui/react` from `1.3.0` to `1.4.0` (WordPress/gutenberg#77308)
- Docs: Add README for DatePicker and TimePicker Components (WordPress/gutenberg#70365)
- UI: use Text component for Badge typography (WordPress/gutenberg#77295)
- Block Editor: Extract getElementCSSRules from useBlockProps (WordPress/gutenberg#77327)
- Edit Post: Fix warning in 'useMetaBoxInitialization' hook (WordPress/gutenberg#77311)
- Update the page slug we link to for the AI plugin after the plugin has been installed and activated (WordPress/gutenberg#77336)
- Guidelines CPT: Rename references from content guidelines to guidelines (WordPress/gutenberg#77223)
- Dialog: add explicit margin-inline-end rule to Title (WordPress/gutenberg#77334)
- Remove sandbox `allow-same-origin` for core/html blocks (WordPress/gutenberg#77212)
- Block Directory: Use `--wpds-cursor-control` design token (WordPress/gutenberg#77330)
- Registers wp_guideline_type taxonomy (WordPress/gutenberg#77156)
- DataForm: Add min/max date range support for date and datetime fields (WordPress/gutenberg#77201)
- Separator Block: Apply default block variation when inserting via `---` shortcut (WordPress/gutenberg#77135)
- Paragraph: Prevent `onEnter` splitting of parent block when insertion of that block type is not allowed (WordPress/gutenberg#77291)
- Media Upload Modal: Persist view configuration (WordPress/gutenberg#77288)
- Image block: Validate attachment ID exists before treating image as local (WordPress/gutenberg#77178)
- Tabs: remove sequential numbering from new tab labels (WordPress/gutenberg#77321)
- DataViews: Use `--wpds-cursor-control` design token for interactive controls (WordPress/gutenberg#77259)
- Post Editor: Store metaboxes RTC-compatible flag on location entries (WordPress/gutenberg#77361)
- Guidelines CPT: Skip registration when post type already exists (WordPress/gutenberg#77486)
- RTC: Fixed orphaned meta causing dirty editor state (WordPress/gutenberg#77529)
- Guidelines: Make the CPT type-aware (WordPress/gutenberg#77491)

Props adamsilverstein, jorbin, westonruter, wildworks.
Fixes #65557.
Built from https://develop.svn.wordpress.org/trunk@62580


git-svn-id: http://core.svn.wordpress.org/trunk@61860 1a063a9b-81f0-0310-95a4-ce76da25c4cd
KhushalSainS pushed a commit to KhushalSainS/wordpress-develop that referenced this pull request Jul 1, 2026
This updates the pinned commit hash of the Gutenberg repository from `5426109cdaf45828ef28ff8527d7d38e7e75fe74` (version `22.9.0`) to `7295bd91a3c2b64bb11dde0a12313210d9d16a12` (version `23.0.0`).

A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/v22.9.0..v23.0.0.

The following commits are included:
- Classify admin-ui and dataviews to components (WordPress/gutenberg#76959)
- Add performance metrics for client-side media processing (WordPress/gutenberg#76792)
- Connectors: Update help text from 'reset' to 'manage' (WordPress/gutenberg#76963)
- Connectors: Hide Akismet unless already installed (WordPress/gutenberg#76962)
- Remove unused catch block variables across the codebase (WordPress/gutenberg#76969)
- Wrap sync update processing in try/catch (WordPress/gutenberg#76968)
- Backport: Improve validation and permission checks for `WP_HTTP_Polling_Sync_Server` (WordPress/gutenberg#76987)
- BlockMover: Remove unused disabled button props (WordPress/gutenberg#76993)
- Core Data: Fix incorrect pagination for non-paginated entities (WordPress/gutenberg#76406)
- Block Editor: Display shortcuts for moving blocks via tooltips (WordPress/gutenberg#76992)
- Convert directories in test/ to workspaces (WordPress/gutenberg#74684)
- RTC: Fix core/table cell merging (WordPress/gutenberg#76913)
- Components: Extract the autocomplete matcher into a separate function (WordPress/gutenberg#76957)
- Added Context for Next/Prev Enlarge Image (WordPress/gutenberg#76967)
- Build Tools: Update TypeScript to 6.0.2 (WordPress/gutenberg#77010)
- Text: Remove UA margins (WordPress/gutenberg#76970)
- Fix pre-existing lint errors across the codebase (WordPress/gutenberg#77002)
- Fix failing 'WP_HTTP_Polling_Sync_Server' unit test (WordPress/gutenberg#77025)
- Card: Set default foreground color on root (WordPress/gutenberg#77013)
- TypeScript: Migrate a11y package to TS  (WordPress/gutenberg#70680)
- Button: Remove unused Storybook story stylesheet (WordPress/gutenberg#77031)
- Improve CSS setup instructions in package readmes (WordPress/gutenberg#76975)
- Use Link component in details story example (WordPress/gutenberg#76997)
- @wordpress/ui: Add global CSS defense module (WordPress/gutenberg#76783)
- Autocompleters: Move and improve links search (WordPress/gutenberg#76995)
- Autocomplete: Refactor useAutocomplete to use useReducer (WordPress/gutenberg#77020)
- Components: Fix autocomplete overlapping trigger matching (WordPress/gutenberg#77018)
- Fix: A sentence has no ending punctuation in README.md file. (WordPress/gutenberg#77027)
- `ValidatedRangeControl`: Fix aria-label rendered as [object Object] (WordPress/gutenberg#77042)
- HStack, VStack: Mark as not recommended for use (WordPress/gutenberg#77041)
- Tests: Fix wp-env scripts not found in test workspaces (WordPress/gutenberg#77055)
- Bump the github-actions group across 1 directory with 2 updates (WordPress/gutenberg#77030)
- Autocomplete: Clarify 'isDebounced' setting limitation (WordPress/gutenberg#77062)
- Fix SyntaxError in Autocompleter UI when pasting matching content (WordPress/gutenberg#76961)
- Connectors: account for mu-plugins when resolving plugin.file status (WordPress/gutenberg#76994)
- Storybook: Fix E2E subpath exports and add CI build smoke test (WordPress/gutenberg#77034)
- Fix Storybook cursor Default option passing theme token (WordPress/gutenberg#77037)
- Storybook: Enable theming toolbar for wp-components (WordPress/gutenberg#77038)
- RTC: Fix "Edit as HTML" content reset during collaboration (WordPress/gutenberg#77043)
- RTC: Fix inline inserter reset on update sync (WordPress/gutenberg#76980)
- RTC: Predefined retry schedules for disconnect dialog, make more lenient (WordPress/gutenberg#76966)
- Block Editor: Prevent Enter key from inserting paragraphs in contentOnly sections (WordPress/gutenberg#76989)
- Editor: Fix 'selectedNote' action PHPDoc (WordPress/gutenberg#77080)
- Tests: Fix argument forwarding for workspace test scripts (WordPress/gutenberg#77083)
- Search block: Derive 'isSearchFieldHidden' value (WordPress/gutenberg#77082)
- Cover block: fix embed video background Error 153 in editor (WordPress/gutenberg#76904)
- Fields: Fix `postContentInfoField` when there are edits (WordPress/gutenberg#76901)
- Restore original template registration tests alongside activation variants (WordPress/gutenberg#77068)
- i18n: Make sprintf return FormattedText for type-safe createInterpolateElement (WordPress/gutenberg#76974)
- Block Editor store: refactor controlledInnerBlocks to Set (WordPress/gutenberg#77094)
- DataForm: support disabled controls (WordPress/gutenberg#77090)
- ESLint plugin: Disable `jsx-a11y/heading-has-content` (WordPress/gutenberg#77073)
- Remove remaining esModuleInterop usage (WordPress/gutenberg#77095)
- Avoid stale values in core/cover block for RTC compatibility (WordPress/gutenberg#76916)
- RTC: Add optional `shouldSync` function to entity sync config (WordPress/gutenberg#76947)
- Bump oras-project/setup-oras (WordPress/gutenberg#77096)
- RTC: Change SyncConnectionModal to isSyncConnectionErrorHandled filter and drop IS_GUTENBERG_PLUGIN check (WordPress/gutenberg#76853)
- RTC: Respect WP_ALLOW_COLLABORATION in Gutenberg for activation hook (WordPress/gutenberg#77084)
- Add iteration issue template (WordPress/gutenberg#77113)
- Media Modal Experiment: Set matching picker grid layout properties for when a user switches between layouts (WordPress/gutenberg#77118)
- contentOnly template lock: Fix block insertion and removal rules (WordPress/gutenberg#77119)
- Global Styles Revisions: Fix footer overflow (WordPress/gutenberg#77103)
- updateBlockListSettings: convert state to Map, do all updates in one action (WordPress/gutenberg#46392)
- DataViews: Fix `compact` density clipping and remove top/bottom padding (WordPress/gutenberg#77054)
- Icons: Override WP_Icons_Registry singleton with Gutenberg icons registry (WordPress/gutenberg#76455)
- Button: Remove obsolete Safari + VoiceOver workaround (WordPress/gutenberg#77107)
- E2E Tests: Ensure artifacts generate correctly and remove unnecessary artifacts (WordPress/gutenberg#77093)
- UI `Text`: Mark as recommended (WordPress/gutenberg#77044)
- ui/AlertDialog: better async confirm APIs, fully use base ui's `AlertDialog` (WordPress/gutenberg#76937)
- BlockStyleVariationOverridesWithConfig: change name and fix lint errors (WordPress/gutenberg#77130)
- Add `.scss` files to CSS module linting (WordPress/gutenberg#77140)
- BoxControl: remove unused state for icon side (WordPress/gutenberg#77143)
- Fix overflow of Highlighted white-space in Code Block (WordPress/gutenberg#77085)
- move pseudo-state slicing logic into useStyle hook (WordPress/gutenberg#77104)
- Autocomplete: Remove getAutoCompleterUI factory pattern (WordPress/gutenberg#77048)
- Add `date` field in templates and template parts (WordPress/gutenberg#77134)
- Revisions: Simplify fetching (WordPress/gutenberg#77086)
- Remove 'Home' and 'End' key usage from Navigation Tests (WordPress/gutenberg#77102)
- Guidelines: Update actions-section and import/export workflow (WordPress/gutenberg#76621)
- Image block: Hide drag handles while an upload is in progress (WordPress/gutenberg#77121)
- Build: Fix glob ignore patterns in dot-prefixed directories (WordPress/gutenberg#75114)
- Added missing documentation in `collaboration.php` (WordPress/gutenberg#77173)
- `@wordpress/ui`: add `Popover` (WordPress/gutenberg#76438)
- Add Site Tagline and Site Title to Design > Identity panel (WordPress/gutenberg#76264)
- Revision: Fix 'Show changes' button reset state (WordPress/gutenberg#77122)
- Components: update React function names for better ESLint detection (WordPress/gutenberg#77148)
- Link picker: Decode HTML entities in link preview title (WordPress/gutenberg#77170)
- MediaEdit: handle '*' wildcard in validateMimeType (WordPress/gutenberg#77168)
- Search block : Match behaviour of global styling for border and color with local styling (inspector controls) to remove inconsistency (WordPress/gutenberg#77060)
- Re-order spacing side controls when unlinked (WordPress/gutenberg#66317)
- Dataviews: remove unneeded ref callbacks (WordPress/gutenberg#77179)
- Experiment: Add revisions panel to templates, template parts and patterns (WordPress/gutenberg#77008)
- Guidelines CPT: Changes slug from wp_content_guidelines to wp_guidelines (WordPress/gutenberg#77147)
- TextArea: add disabled styles (WordPress/gutenberg#77129)
- Writing Flow: Fix format toolbar not appearing when selecting text from block edge (WordPress/gutenberg#77136)
- DataForm: Remove `text-transform` from `panel` field labels (WordPress/gutenberg#77196)
- FormTokenField: fix disabled styles (WordPress/gutenberg#77137)
- Admin UI: Increase page header vertical padding (WordPress/gutenberg#77152)
- Use entity link title for link control preview (WordPress/gutenberg#77155)
- TypeScript: migrate annotations package to TS (WordPress/gutenberg#70602)
- refactor: migrate bin/api-docs to tools/api-docs as workspace `@wordpress/api-docs-generator` (WordPress/gutenberg#77019)
- TypeScript: Migrate viewport package (WordPress/gutenberg#71118)
- UI/Tooltip: Add usage guidelines documentation (WordPress/gutenberg#77158)
- RadioControl: add support for disabling radio group (WordPress/gutenberg#77127)
- Upgrade ESLint to v10 (WordPress/gutenberg#76654)
- Add e2e test coverage for the Guidelines settings page (WordPress/gutenberg#77192)
- Admin UI: Update Page background color to surface-neutral (WordPress/gutenberg#76869)
- Fix lint-staged API docs path (WordPress/gutenberg#77203)
- PresetInputControl: Fix clearing of numeric value in custom input control (WordPress/gutenberg#77139)
- Upload external media: Ensure notice only fires once (WordPress/gutenberg#77218)
- Checkbox: fix disabled styles (WordPress/gutenberg#77132)
- FormToggle: Update disabled styles (WordPress/gutenberg#77208)
- Calendar: fix disabled styles (WordPress/gutenberg#77138)
- Textarea: remove unnecessary styles (WordPress/gutenberg#77221)
- Search Block: Ensure color settings apply to input field when button is disabled (WordPress/gutenberg#77219)
- iAPI Docs: Fix typos, code errors, and inaccuracies in the documentation (WordPress/gutenberg#76636)
- Connectors: don't clobber third-party custom render in registerDefaultConnectors (WordPress/gutenberg#77116)
- Guidelines: Improve guideline revision UX (WordPress/gutenberg#76560)
- ui/`Dialog`: update Header layout, refactor Title to use Text (WordPress/gutenberg#77161)
- ui/docs: add additional global css setup instructions (WordPress/gutenberg#77228)
- ui/VisuallyHidden: Standardize composition pattern (WordPress/gutenberg#77190)
- ui: expose `container` portal prop on all overlay Popup components (WordPress/gutenberg#77163)
- Components: Use `--wpds-cursor-control` for interactive controls (Sass only) (WordPress/gutenberg#76786)
- Card: Remove redundant margin reset from Card.Title (WordPress/gutenberg#77187)
- Theme: Rename typography tokens to use "typography" prefix (WordPress/gutenberg#76912)
- UI: Normalize render prop and ref forwarding patterns (WordPress/gutenberg#77160)
- Ensure "Retry" button is stable during retries (WordPress/gutenberg#77234)
- RTC: Improve array attribute stability when structural changes occur (WordPress/gutenberg#77164)
- Env: Fix loopback requests when running on non-default ports (WordPress/gutenberg#77057)
- Connectors: Replace speak() with notice store for state changes (WordPress/gutenberg#77174)
- Core Data: Fix 'useEntityProp' for raw attributes (WordPress/gutenberg#77120)
- Use image.copyMemory() for batch thumbnail generation (WordPress/gutenberg#76979)
- Post Author Biography: Preserve occurance of white spaces (WordPress/gutenberg#71133)
- Fix PatternsActions prop name from postType to type (WordPress/gutenberg#77251)
- Resolve package-lock.json inconsistency for @babel/eslint-parser (WordPress/gutenberg#77256)
- Fix duotone filter not applying on style variation switch (WordPress/gutenberg#77229)
- Fix: restore editor canvas padding in classic themes (WordPress/gutenberg#76864)
- DataViews: simplify `defaultLayouts` prop (WordPress/gutenberg#77232)
- getMergedItemsIds: receive full page bigger than perPage (WordPress/gutenberg#77262)
- FormTokenField: remove unnecessary styles (WordPress/gutenberg#77263)
- TypeScript: Migrate `packages/list-reusable-blocks` package to TypeScript (WordPress/gutenberg#70518)
- RTC: Add filterable flag for meta box RTC compatibility (WordPress/gutenberg#76939)
- RTC: Fix disconnect dialog due to uneditable entity (WordPress/gutenberg#77242)
- Guidelines: Try removing the jsxRuntime pragma and see what happens (WordPress/gutenberg#77255)
- DataForm: Show tooltip in edit button in `panel` layout (WordPress/gutenberg#77024)
- blocks: Convert blocks package to TypeScript (WordPress/gutenberg#76312)
- Fix Gutenberg_REST_View_Config_Controller_7_1 PHP warnings (WordPress/gutenberg#77290)
- renamed focus visible (WordPress/gutenberg#77292)
- page.waitForFunction: fix call arguments (WordPress/gutenberg#77300)
- Tabs: Simplify anchor handling (WordPress/gutenberg#77189)
- Tests: Auto-fix some new 'eslint-plugin-playwright' warnings (WordPress/gutenberg#77314)
- Tab Menu Item: simplify active tab menu item style (WordPress/gutenberg#77195)
- Eslint: Suggest alternative in `no-setting-ds-tokens` rule (WordPress/gutenberg#77154)
- Autocomplete: Fix flaky e2e tests (WordPress/gutenberg#77322)
- UI: Update `@base-ui/react` from `1.3.0` to `1.4.0` (WordPress/gutenberg#77308)
- Docs: Add README for DatePicker and TimePicker Components (WordPress/gutenberg#70365)
- UI: use Text component for Badge typography (WordPress/gutenberg#77295)
- Block Editor: Extract getElementCSSRules from useBlockProps (WordPress/gutenberg#77327)
- Edit Post: Fix warning in 'useMetaBoxInitialization' hook (WordPress/gutenberg#77311)
- Update the page slug we link to for the AI plugin after the plugin has been installed and activated (WordPress/gutenberg#77336)
- Guidelines CPT: Rename references from content guidelines to guidelines (WordPress/gutenberg#77223)
- Dialog: add explicit margin-inline-end rule to Title (WordPress/gutenberg#77334)
- Remove sandbox `allow-same-origin` for core/html blocks (WordPress/gutenberg#77212)
- Block Directory: Use `--wpds-cursor-control` design token (WordPress/gutenberg#77330)
- Registers wp_guideline_type taxonomy (WordPress/gutenberg#77156)
- DataForm: Add min/max date range support for date and datetime fields (WordPress/gutenberg#77201)
- Separator Block: Apply default block variation when inserting via `---` shortcut (WordPress/gutenberg#77135)
- Paragraph: Prevent `onEnter` splitting of parent block when insertion of that block type is not allowed (WordPress/gutenberg#77291)
- Media Upload Modal: Persist view configuration (WordPress/gutenberg#77288)
- Image block: Validate attachment ID exists before treating image as local (WordPress/gutenberg#77178)
- Tabs: remove sequential numbering from new tab labels (WordPress/gutenberg#77321)
- DataViews: Use `--wpds-cursor-control` design token for interactive controls (WordPress/gutenberg#77259)
- Post Editor: Store metaboxes RTC-compatible flag on location entries (WordPress/gutenberg#77361)
- Guidelines CPT: Skip registration when post type already exists (WordPress/gutenberg#77486)
- RTC: Fixed orphaned meta causing dirty editor state (WordPress/gutenberg#77529)
- Guidelines: Make the CPT type-aware (WordPress/gutenberg#77491)

Props adamsilverstein, jorbin, westonruter, wildworks.
Fixes #65557.

git-svn-id: https://develop.svn.wordpress.org/trunk@62580 602fd350-edb4-49c9-b593-d223f7449a82
SteelWagstaff pushed a commit to SteelWagstaff/wordpress-develop that referenced this pull request Jul 2, 2026
This updates the pinned commit hash of the Gutenberg repository from `5426109cdaf45828ef28ff8527d7d38e7e75fe74` (version `22.9.0`) to `7295bd91a3c2b64bb11dde0a12313210d9d16a12` (version `23.0.0`).

A full list of changes included in this commit can be found on GitHub: https://github.com/WordPress/gutenberg/compare/v22.9.0..v23.0.0.

The following commits are included:
- Classify admin-ui and dataviews to components (WordPress/gutenberg#76959)
- Add performance metrics for client-side media processing (WordPress/gutenberg#76792)
- Connectors: Update help text from 'reset' to 'manage' (WordPress/gutenberg#76963)
- Connectors: Hide Akismet unless already installed (WordPress/gutenberg#76962)
- Remove unused catch block variables across the codebase (WordPress/gutenberg#76969)
- Wrap sync update processing in try/catch (WordPress/gutenberg#76968)
- Backport: Improve validation and permission checks for `WP_HTTP_Polling_Sync_Server` (WordPress/gutenberg#76987)
- BlockMover: Remove unused disabled button props (WordPress/gutenberg#76993)
- Core Data: Fix incorrect pagination for non-paginated entities (WordPress/gutenberg#76406)
- Block Editor: Display shortcuts for moving blocks via tooltips (WordPress/gutenberg#76992)
- Convert directories in test/ to workspaces (WordPress/gutenberg#74684)
- RTC: Fix core/table cell merging (WordPress/gutenberg#76913)
- Components: Extract the autocomplete matcher into a separate function (WordPress/gutenberg#76957)
- Added Context for Next/Prev Enlarge Image (WordPress/gutenberg#76967)
- Build Tools: Update TypeScript to 6.0.2 (WordPress/gutenberg#77010)
- Text: Remove UA margins (WordPress/gutenberg#76970)
- Fix pre-existing lint errors across the codebase (WordPress/gutenberg#77002)
- Fix failing 'WP_HTTP_Polling_Sync_Server' unit test (WordPress/gutenberg#77025)
- Card: Set default foreground color on root (WordPress/gutenberg#77013)
- TypeScript: Migrate a11y package to TS  (WordPress/gutenberg#70680)
- Button: Remove unused Storybook story stylesheet (WordPress/gutenberg#77031)
- Improve CSS setup instructions in package readmes (WordPress/gutenberg#76975)
- Use Link component in details story example (WordPress/gutenberg#76997)
- @wordpress/ui: Add global CSS defense module (WordPress/gutenberg#76783)
- Autocompleters: Move and improve links search (WordPress/gutenberg#76995)
- Autocomplete: Refactor useAutocomplete to use useReducer (WordPress/gutenberg#77020)
- Components: Fix autocomplete overlapping trigger matching (WordPress/gutenberg#77018)
- Fix: A sentence has no ending punctuation in README.md file. (WordPress/gutenberg#77027)
- `ValidatedRangeControl`: Fix aria-label rendered as [object Object] (WordPress/gutenberg#77042)
- HStack, VStack: Mark as not recommended for use (WordPress/gutenberg#77041)
- Tests: Fix wp-env scripts not found in test workspaces (WordPress/gutenberg#77055)
- Bump the github-actions group across 1 directory with 2 updates (WordPress/gutenberg#77030)
- Autocomplete: Clarify 'isDebounced' setting limitation (WordPress/gutenberg#77062)
- Fix SyntaxError in Autocompleter UI when pasting matching content (WordPress/gutenberg#76961)
- Connectors: account for mu-plugins when resolving plugin.file status (WordPress/gutenberg#76994)
- Storybook: Fix E2E subpath exports and add CI build smoke test (WordPress/gutenberg#77034)
- Fix Storybook cursor Default option passing theme token (WordPress/gutenberg#77037)
- Storybook: Enable theming toolbar for wp-components (WordPress/gutenberg#77038)
- RTC: Fix "Edit as HTML" content reset during collaboration (WordPress/gutenberg#77043)
- RTC: Fix inline inserter reset on update sync (WordPress/gutenberg#76980)
- RTC: Predefined retry schedules for disconnect dialog, make more lenient (WordPress/gutenberg#76966)
- Block Editor: Prevent Enter key from inserting paragraphs in contentOnly sections (WordPress/gutenberg#76989)
- Editor: Fix 'selectedNote' action PHPDoc (WordPress/gutenberg#77080)
- Tests: Fix argument forwarding for workspace test scripts (WordPress/gutenberg#77083)
- Search block: Derive 'isSearchFieldHidden' value (WordPress/gutenberg#77082)
- Cover block: fix embed video background Error 153 in editor (WordPress/gutenberg#76904)
- Fields: Fix `postContentInfoField` when there are edits (WordPress/gutenberg#76901)
- Restore original template registration tests alongside activation variants (WordPress/gutenberg#77068)
- i18n: Make sprintf return FormattedText for type-safe createInterpolateElement (WordPress/gutenberg#76974)
- Block Editor store: refactor controlledInnerBlocks to Set (WordPress/gutenberg#77094)
- DataForm: support disabled controls (WordPress/gutenberg#77090)
- ESLint plugin: Disable `jsx-a11y/heading-has-content` (WordPress/gutenberg#77073)
- Remove remaining esModuleInterop usage (WordPress/gutenberg#77095)
- Avoid stale values in core/cover block for RTC compatibility (WordPress/gutenberg#76916)
- RTC: Add optional `shouldSync` function to entity sync config (WordPress/gutenberg#76947)
- Bump oras-project/setup-oras (WordPress/gutenberg#77096)
- RTC: Change SyncConnectionModal to isSyncConnectionErrorHandled filter and drop IS_GUTENBERG_PLUGIN check (WordPress/gutenberg#76853)
- RTC: Respect WP_ALLOW_COLLABORATION in Gutenberg for activation hook (WordPress/gutenberg#77084)
- Add iteration issue template (WordPress/gutenberg#77113)
- Media Modal Experiment: Set matching picker grid layout properties for when a user switches between layouts (WordPress/gutenberg#77118)
- contentOnly template lock: Fix block insertion and removal rules (WordPress/gutenberg#77119)
- Global Styles Revisions: Fix footer overflow (WordPress/gutenberg#77103)
- updateBlockListSettings: convert state to Map, do all updates in one action (WordPress/gutenberg#46392)
- DataViews: Fix `compact` density clipping and remove top/bottom padding (WordPress/gutenberg#77054)
- Icons: Override WP_Icons_Registry singleton with Gutenberg icons registry (WordPress/gutenberg#76455)
- Button: Remove obsolete Safari + VoiceOver workaround (WordPress/gutenberg#77107)
- E2E Tests: Ensure artifacts generate correctly and remove unnecessary artifacts (WordPress/gutenberg#77093)
- UI `Text`: Mark as recommended (WordPress/gutenberg#77044)
- ui/AlertDialog: better async confirm APIs, fully use base ui's `AlertDialog` (WordPress/gutenberg#76937)
- BlockStyleVariationOverridesWithConfig: change name and fix lint errors (WordPress/gutenberg#77130)
- Add `.scss` files to CSS module linting (WordPress/gutenberg#77140)
- BoxControl: remove unused state for icon side (WordPress/gutenberg#77143)
- Fix overflow of Highlighted white-space in Code Block (WordPress/gutenberg#77085)
- move pseudo-state slicing logic into useStyle hook (WordPress/gutenberg#77104)
- Autocomplete: Remove getAutoCompleterUI factory pattern (WordPress/gutenberg#77048)
- Add `date` field in templates and template parts (WordPress/gutenberg#77134)
- Revisions: Simplify fetching (WordPress/gutenberg#77086)
- Remove 'Home' and 'End' key usage from Navigation Tests (WordPress/gutenberg#77102)
- Guidelines: Update actions-section and import/export workflow (WordPress/gutenberg#76621)
- Image block: Hide drag handles while an upload is in progress (WordPress/gutenberg#77121)
- Build: Fix glob ignore patterns in dot-prefixed directories (WordPress/gutenberg#75114)
- Added missing documentation in `collaboration.php` (WordPress/gutenberg#77173)
- `@wordpress/ui`: add `Popover` (WordPress/gutenberg#76438)
- Add Site Tagline and Site Title to Design > Identity panel (WordPress/gutenberg#76264)
- Revision: Fix 'Show changes' button reset state (WordPress/gutenberg#77122)
- Components: update React function names for better ESLint detection (WordPress/gutenberg#77148)
- Link picker: Decode HTML entities in link preview title (WordPress/gutenberg#77170)
- MediaEdit: handle '*' wildcard in validateMimeType (WordPress/gutenberg#77168)
- Search block : Match behaviour of global styling for border and color with local styling (inspector controls) to remove inconsistency (WordPress/gutenberg#77060)
- Re-order spacing side controls when unlinked (WordPress/gutenberg#66317)
- Dataviews: remove unneeded ref callbacks (WordPress/gutenberg#77179)
- Experiment: Add revisions panel to templates, template parts and patterns (WordPress/gutenberg#77008)
- Guidelines CPT: Changes slug from wp_content_guidelines to wp_guidelines (WordPress/gutenberg#77147)
- TextArea: add disabled styles (WordPress/gutenberg#77129)
- Writing Flow: Fix format toolbar not appearing when selecting text from block edge (WordPress/gutenberg#77136)
- DataForm: Remove `text-transform` from `panel` field labels (WordPress/gutenberg#77196)
- FormTokenField: fix disabled styles (WordPress/gutenberg#77137)
- Admin UI: Increase page header vertical padding (WordPress/gutenberg#77152)
- Use entity link title for link control preview (WordPress/gutenberg#77155)
- TypeScript: migrate annotations package to TS (WordPress/gutenberg#70602)
- refactor: migrate bin/api-docs to tools/api-docs as workspace `@wordpress/api-docs-generator` (WordPress/gutenberg#77019)
- TypeScript: Migrate viewport package (WordPress/gutenberg#71118)
- UI/Tooltip: Add usage guidelines documentation (WordPress/gutenberg#77158)
- RadioControl: add support for disabling radio group (WordPress/gutenberg#77127)
- Upgrade ESLint to v10 (WordPress/gutenberg#76654)
- Add e2e test coverage for the Guidelines settings page (WordPress/gutenberg#77192)
- Admin UI: Update Page background color to surface-neutral (WordPress/gutenberg#76869)
- Fix lint-staged API docs path (WordPress/gutenberg#77203)
- PresetInputControl: Fix clearing of numeric value in custom input control (WordPress/gutenberg#77139)
- Upload external media: Ensure notice only fires once (WordPress/gutenberg#77218)
- Checkbox: fix disabled styles (WordPress/gutenberg#77132)
- FormToggle: Update disabled styles (WordPress/gutenberg#77208)
- Calendar: fix disabled styles (WordPress/gutenberg#77138)
- Textarea: remove unnecessary styles (WordPress/gutenberg#77221)
- Search Block: Ensure color settings apply to input field when button is disabled (WordPress/gutenberg#77219)
- iAPI Docs: Fix typos, code errors, and inaccuracies in the documentation (WordPress/gutenberg#76636)
- Connectors: don't clobber third-party custom render in registerDefaultConnectors (WordPress/gutenberg#77116)
- Guidelines: Improve guideline revision UX (WordPress/gutenberg#76560)
- ui/`Dialog`: update Header layout, refactor Title to use Text (WordPress/gutenberg#77161)
- ui/docs: add additional global css setup instructions (WordPress/gutenberg#77228)
- ui/VisuallyHidden: Standardize composition pattern (WordPress/gutenberg#77190)
- ui: expose `container` portal prop on all overlay Popup components (WordPress/gutenberg#77163)
- Components: Use `--wpds-cursor-control` for interactive controls (Sass only) (WordPress/gutenberg#76786)
- Card: Remove redundant margin reset from Card.Title (WordPress/gutenberg#77187)
- Theme: Rename typography tokens to use "typography" prefix (WordPress/gutenberg#76912)
- UI: Normalize render prop and ref forwarding patterns (WordPress/gutenberg#77160)
- Ensure "Retry" button is stable during retries (WordPress/gutenberg#77234)
- RTC: Improve array attribute stability when structural changes occur (WordPress/gutenberg#77164)
- Env: Fix loopback requests when running on non-default ports (WordPress/gutenberg#77057)
- Connectors: Replace speak() with notice store for state changes (WordPress/gutenberg#77174)
- Core Data: Fix 'useEntityProp' for raw attributes (WordPress/gutenberg#77120)
- Use image.copyMemory() for batch thumbnail generation (WordPress/gutenberg#76979)
- Post Author Biography: Preserve occurance of white spaces (WordPress/gutenberg#71133)
- Fix PatternsActions prop name from postType to type (WordPress/gutenberg#77251)
- Resolve package-lock.json inconsistency for @babel/eslint-parser (WordPress/gutenberg#77256)
- Fix duotone filter not applying on style variation switch (WordPress/gutenberg#77229)
- Fix: restore editor canvas padding in classic themes (WordPress/gutenberg#76864)
- DataViews: simplify `defaultLayouts` prop (WordPress/gutenberg#77232)
- getMergedItemsIds: receive full page bigger than perPage (WordPress/gutenberg#77262)
- FormTokenField: remove unnecessary styles (WordPress/gutenberg#77263)
- TypeScript: Migrate `packages/list-reusable-blocks` package to TypeScript (WordPress/gutenberg#70518)
- RTC: Add filterable flag for meta box RTC compatibility (WordPress/gutenberg#76939)
- RTC: Fix disconnect dialog due to uneditable entity (WordPress/gutenberg#77242)
- Guidelines: Try removing the jsxRuntime pragma and see what happens (WordPress/gutenberg#77255)
- DataForm: Show tooltip in edit button in `panel` layout (WordPress/gutenberg#77024)
- blocks: Convert blocks package to TypeScript (WordPress/gutenberg#76312)
- Fix Gutenberg_REST_View_Config_Controller_7_1 PHP warnings (WordPress/gutenberg#77290)
- renamed focus visible (WordPress/gutenberg#77292)
- page.waitForFunction: fix call arguments (WordPress/gutenberg#77300)
- Tabs: Simplify anchor handling (WordPress/gutenberg#77189)
- Tests: Auto-fix some new 'eslint-plugin-playwright' warnings (WordPress/gutenberg#77314)
- Tab Menu Item: simplify active tab menu item style (WordPress/gutenberg#77195)
- Eslint: Suggest alternative in `no-setting-ds-tokens` rule (WordPress/gutenberg#77154)
- Autocomplete: Fix flaky e2e tests (WordPress/gutenberg#77322)
- UI: Update `@base-ui/react` from `1.3.0` to `1.4.0` (WordPress/gutenberg#77308)
- Docs: Add README for DatePicker and TimePicker Components (WordPress/gutenberg#70365)
- UI: use Text component for Badge typography (WordPress/gutenberg#77295)
- Block Editor: Extract getElementCSSRules from useBlockProps (WordPress/gutenberg#77327)
- Edit Post: Fix warning in 'useMetaBoxInitialization' hook (WordPress/gutenberg#77311)
- Update the page slug we link to for the AI plugin after the plugin has been installed and activated (WordPress/gutenberg#77336)
- Guidelines CPT: Rename references from content guidelines to guidelines (WordPress/gutenberg#77223)
- Dialog: add explicit margin-inline-end rule to Title (WordPress/gutenberg#77334)
- Remove sandbox `allow-same-origin` for core/html blocks (WordPress/gutenberg#77212)
- Block Directory: Use `--wpds-cursor-control` design token (WordPress/gutenberg#77330)
- Registers wp_guideline_type taxonomy (WordPress/gutenberg#77156)
- DataForm: Add min/max date range support for date and datetime fields (WordPress/gutenberg#77201)
- Separator Block: Apply default block variation when inserting via `---` shortcut (WordPress/gutenberg#77135)
- Paragraph: Prevent `onEnter` splitting of parent block when insertion of that block type is not allowed (WordPress/gutenberg#77291)
- Media Upload Modal: Persist view configuration (WordPress/gutenberg#77288)
- Image block: Validate attachment ID exists before treating image as local (WordPress/gutenberg#77178)
- Tabs: remove sequential numbering from new tab labels (WordPress/gutenberg#77321)
- DataViews: Use `--wpds-cursor-control` design token for interactive controls (WordPress/gutenberg#77259)
- Post Editor: Store metaboxes RTC-compatible flag on location entries (WordPress/gutenberg#77361)
- Guidelines CPT: Skip registration when post type already exists (WordPress/gutenberg#77486)
- RTC: Fixed orphaned meta causing dirty editor state (WordPress/gutenberg#77529)
- Guidelines: Make the CPT type-aware (WordPress/gutenberg#77491)

Props adamsilverstein, jorbin, westonruter, wildworks.
Fixes #65557.

git-svn-id: https://develop.svn.wordpress.org/trunk@62580 602fd350-edb4-49c9-b593-d223f7449a82
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

[Feature] Client Side Media Media processing in the browser with WASM [Status] In Progress Tracking issues with work in progress [Type] Performance Related to performance efforts

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add performance metrics for client-side media processing

2 participants