Changelog
Features
Post Editor
- Upload Media: Enable concurrent sideload uploads. (75888)
Enhancements
- Storybook: Add global preview styles for @wordpress/ui overlays. (77451)
- Widgets: Add widget-types data layer. (77752)
Components
- Admin UI: Add visual prop to Page header component. (76469)
- Admin UI: Ensure consistent header spacing with and without actions. (76683)
- Admin UI: Use UI Text component in header. (77372)
- DataForm: Render field
descriptionas help text in thearraycontrol. (77554) - ExternalLink: Align appearance with Link from @wordpress/ui. (77790)
- Link: Honor
openInNewTabconsistently. (77422) - Menu popover render + surface/motion split. (77460)
- Refactor Admin UI / Breadcrumbs to use DS components and design tokens. (77012)
- UI: Add Drawer primitive. (76690)
- UI: Portal prop and Portal subcomponents for overlay Popups. (77452)
- UI: Upgrade title validation to cleanup-based re-validation. (77165)
- UI: Use Text in Notice.ActionLink typography. (77332)
FormTokenField: Addhelpprop to render additional help text below the field. (77552)- design-system-mcp: Add new package for design system MCP tooling. (77159)
- ui/Dialog, ui/AlertDialog, ui/Drawer: Support sticky header and footer. (77559)
- ui: Forward style and className on *.Popup to inner Base UI Popup. (77693)
- ui: Uniform title and description styles across overlays. (77692)
- ui: Unify hairline border across overlay popups. (77691)
Post Editor
- Notes: Compute note positions centrally in useFloatingBoard. (77433)
- Notes: Refactor internals into smaller components. (77614)
- Notes: Refactor to use new '@wordpress/ui' components. (77589)
Block Library
- Ensure Post Template fallback styles don't apply when minimumColumnWidth is defined. (77411)
- Tabs: Handle duplicating tabs. (76449)
- Tabs: Rename tabs blocks to follow WCAG Tabs pattern. (77418)
Block Editor
- Embed: Restore paragraph with URL when undoing paste-to-embed transform. (77551)
- UI: Add
Autocompleteprimitive. (77642)
Media
- Experimental Image Cropper: Tweak the keyboard interactions with drag handles and canvas. (77639)
Site Editor
- Admin UI: Change default heading level from h2 to h1. (77617)
Data Layer
- Core Data: Remove redundant memoization wrapper from 'getQueriedItems'. (77483)
Script Modules API
- I18N: Polyfill script module translations for WordPress < 7.0. (77214)
New APIs
- Add
@wordpress/gridpackage. (77562)
Guidelines
- Extract initial public API methods. (77643)
- Split singleton REST API into dedicated /content-guidelines route. (77734)
Bug Fixes
- Core Abilities: Export initialization promise as
ready. (77254) - Disable Custom CSS command for non-block themes. (77685)
- Grid: Fix
width: 'fill'when tiles span multiple rows. (77769) - Tests: Connectors point to the right page. (77272)
- Plugin: Gutenberg Experiments: Ensure the experiment is active before outputting flags. (77728)
- Connectors: Treat network-active plugins as active. (77661)
- Command Palette: Fix macOs label for sites unable to determine UA via PHP. (77638)
- Design Tools: viewport visibility — use 'key' instead of 'value' for device type. (77410)
- Layout: Ensure layout classnames are applied to the inner blocks wrapper and not to its siblings. (77408)
- Global Styles: Fix pseudo selector block style rendering in the editor. (76879)
- Data Layer: Media — move image output format filtering to upload response. (75793)
Block Library
- Embed: Fix variation upgrade undo trap. (77546)
- Accordion: Add missing dimension controls and limited customization. (77780)
- Featured Image: Change toggle label to 'Make image a link'. (71931)
- Image: Preserve aspectRatio and scale when switching to wide/full alignment. (76914)
- Form blocks: Update block categories for form, form-input, form-submission-notification, and form-submit-button. (61916)
- Image: Fix non-local image ID removal undo trap. (77367)
- Latest Comments: Fix uneven padding causing mis-alignment. (77379)
- Tabs: Add classic theme styles to reset button defaults. (77607)
- Tabs: Lock top-level structure and disable visibility controls. (77370)
- Video Block: Update z-index for tracks popover to ensure proper stacking context. (77517)
Components
- CollapsibleCard: Prevent focus ring clipping by content overflow. (77667)
- Add cursor pointer to the ariakit menu item component. (70412)
- Link: Remove underline from unstyled icon links. (77420)
- Storybook: Fix 'Open source file' links for storybook-local stories. (76758)
- Storybook: Fix component descriptions in manifest files. (77112)
- Text: Apply both heading and paragraph CSS defenses unconditionally. (77461)
- UI: Fix focus-trap broken by ThemeProvider's
display: contents. (77381) - UI: Update
@base-ui/reactfrom1.4.0to1.4.1. (77520)
Block Editor
- Fix blockGap fallback handling for nested var() fallback values. (77750)
- Block-mover: Fix button tooltip position. (77588)
- Block-mover: Fix horizontal tooltip position. (77597)
- Strip per-block custom CSS on save for users without
edit_css. (76650) - Writing Flow: Fix arrow keys skipping paragraph containing link. (77474)
Post Editor
- Edit-post: Fix back button tooltip position. (77587)
- Lock post saving during media uploads. (76973)
- Template parts: Make 'Detach' context menu item consistent across patterns and template parts. (77581)
Client Side Media
- Deduplicate client-side image sizes with matching dimensions. (77036)
- Declare
convert_formatas boolean arg on sideload route. (77565) - Upload Media: Use
.jpgextension for HEIC-to-JPEG client conversion. (77506)
Collaboration
- RTC: Fix "Connection Lost" dialog when too many entities are loaded. (77631)
- RTC: Fix connection-lost error on large updates caused by mismatch between update size bounds check and expanded base64 update size. (77669)
Accessibility
Connectors
- Add
role="list"wrapper to connector cards for valid ARIA structure. (77689) - Keep focus on action Button during install. (77544)
Components
- CollapsibleCard: Fix missing keyboard focus ring on the header chevron icon when rendered inside wp-admin. (77468)
- Tabs: Fix missing keyboard focus ring on the panel in Windows High Contrast mode when rendered inside wp-admin. (77469)
Post Editor
- Revisions: Improve screen reader accessibility for diff markers region and slider. (77660)
Font Library
- Fix accessibility issues in admin Font Library. (77482)
Performance
Post Editor
- Notes: Extract floating notes state into a dedicated store. (77424)
- Notes: Reduce passes in useBlockComments memo and rename outputs. (77440)
Experiments
- Add custom taxonomies. (77497)
- Add delete action to taxonomy management. (77524)
- Dashboard: Register admin page route + sidebar menu (shell). (77573)
- Fix console errors/warnings for taxonomies. (77601)
- Follow up improvements on taxonomies (#77497). (77567)
- Improve
taxonomiesDataViews height. (77603) - Improve taxonomy
editaction. (77605) - Render taxonomy status as a Badge. (77635)
- Split status action to two actions, make them bulk-capable. (77637)
- Taxonomies: Implement auto-fill labels. (77786)
- Taxonomies: New package and add/edit screens. (77657)
- Taxonomies: Add spacing above Add Taxonomy modal actions. (77523)
- Taxonomies: Declare
@wordpress/base-stylesdependency. (77543) - Taxonomies: Warn when editing an existing taxonomy's slug. (77527)
- User Taxonomies: REST controller. (77697)
- User Taxonomies: Show Public field in create/edit form. (77802)
Media
- Image editor: Fix locked-ratio resize driver-axis on non-square images. (77664)
- Image editor: Formalize cropper contract. (77668)
- Image editor: Hold Shift while resizing to lock current aspect ratio. (77663)
- Image editor: Reserve inner gutter so crop handles stay accessible. (77547)
- Media Editor Modal: Render cropper in canvas for images. (77537)
- Media Editor Modal: Save via Core's
/editmodifiers. (77641) - Media Editor Modal: Surface save failures as scoped snackbar notices. (77733)
- Media Editor experiment: Add experimental image editor and cropper. (77479)
- Media Editor: Add cropper controls to the media editor modal. (77540)
- Media Editor: Add zoom control and hide fine rotation on narrow viewports. (77585)
- Media editor modal: Add interactive grid. (77771)
- Media editor: Avoid double-mount flicker on open. (77732)
- Media editor: Confirm before discarding unsaved changes. (77730)
- Update labels for media experiments to better clarify what they do. (77536)
- Media Upload Modal: Add MIME type filtering to support
text/vtttracks. (77550) - Experimental Image Cropper: Ensure focus is on canvas when dragging. (77591)
Block Library
- Disable TinyMCE: Warn instead of redirecting directly. (77747)
- Site Logo Block: Enable the media editor modal experiment for the crop button. (77548)
Post Editor
- Image Editor experiment: Pass theme aspect ratios to media editor. (77665)
- Media Editor Modal: Add a media editor modal experiment. (77480)
Plugin
- Register
gutenberg-dashboard-widgetsflag. (77569)
Documentation
- Base styles: Update changelog to be clearer. (77767)
- Docs: Add ESLint v10 migration guide and polish documentation. (77217)
- Docs: Update parameter type from
numbertoint. (77519) - UI/Docs: Clarify package setup for custom WP Admin pages. (77338)
Code Quality
- Adopt
--wpds-cursor-controldesign token across the codebase. (77373, 77335, 77368, 77369, 77360, 77376, 77357, 77354, 77358) - Test (Integration): Migrate
test/integrationinto@wordpress/integration-testsworkspace. (77556) - Base Styles: Remove stale z-index entries. (77714)
- ComplementaryArea: Inline z-index values. (77717)
- ESLint: Consolidate configuration into
tools/eslint/workspace package. (77215) - Env: Minor refactoring of
cacheDirectoryPathevaluation. (77799) - GlobalStylesUI: Remove unused CSS rule. (77456)
- Grid: Add
@types/jestdevDependency. (77801) - Media editor: Remove unused dependency. (77438)
- Blocks: Port over type information for
@wordpress/blocksfrom DefinitelyTyped. (77393, 77437) - Refactor: Migrate
tests/unitto npm workspace@wordpress/unit-tests. (77063)
Components
- Add
no-unsafe-render-orderESLint rule. (77428) - ButtonGroup: Inline z-index. (77621)
- Card: Remove unused CardContext. (77463)
- CircularOptionPicker: Inline z-index values. (77715)
- FormToggle: Inline z-index. (77619)
- ResizableBox: Inline handle z-index. (77620)
- Theme: Update Terrazzo packages to 2.0. (77432)
- Tooltip: Fix flaky unit test. (77751)
- UI: Recommend Link component for use. (77505)
- UI: Start recommending new Card components. (77423)
- UI: Use shared style-imports types. (77388)
- VisuallyHidden: Recommend
@wordpress/uiand migrate usages. (77575) - ui/Tabs: Fix
act()warnings in tests. (77319) - ui: Align WithCustomZIndex Storybook examples across overlays. (77648)
Block Library
- Accordion: Remove invalid
isBlockprop fromToggleControl. (77776) - Paragraph: Refactor replacement logic in
useOnEnterhook. (77383) - Stylelint: Add cursor-pointer rule and block-library override. (77501)
- Tabs: Clean up Edit components. (77426)
- Tabs: Remove redundant version field from
block.json. (77417)
Post Editor
- ESLint: Add
use-import-asrule. (77389) - Notes: Refactor and extract offset calculation logic. (77414)
- TypeScript: Share React CSS custom properties typing. (77394)
- TypeScript: Migrate keyboard-shortcuts to TS. (76287)
- Admin UI: Move to CSS modules and implement logical properties. (77088)
Block Editor
- Fix import order in block-editor
custom-css.js. (77566) - Remove stale reusable block z-index styles. (77774)
Site Editor
- Edit Site: Move show-icon-labels handling to specific edit-site call sites. (77287)
- EditSite: Remove unused CSS rule. (77494)
Plugin
- Experiments: Declare
@wordpress/base-stylesdependency. (77684)
Data Layer
- Data: Export and consolidate
onSubKeyhelper. (77364)
Tools
- Remove
ZebulanStanphillfromCODEOWNERS. (77586)
Build Tooling
- Build: Skip sourcemaps for WASM-inlined script module workers. (75993)
- ESLint: Introduce bulk suppressions workflow. (77392)
- Add descriptive name for docker container images. (67827)
- ESLint: Improve design token linting for CSS declaration strings. (77384)
- Externalize
react-dom/client. (77326) - Use
node_modules/.bin/stylelintto avoid npm warnings on Node 24. (77512) - Jest setup: Remove unneeded rAF and URL polyfills. (77378)
- Revert
tsgoupdate (#77177) that broke trunk. (77680) - wp-build: Widen optional peer dependency ranges. (77568)
Testing
- Menu: Fix flaky submenu focus test. (77430)
- Tests: Remove duplicate mentions spec. (77593)
- e2e: Shorten visit-site-editor canvas-loader visible wait. (77725)
Components
- ESLint Plugin: Recommend
EmptyStatefrom@wordpress/ui. (77765)
Plugin
- Experiments: Rebuild the wp-admin Experiments screen on the
wp-buildroutes pattern. (77443)
First-time contributors
The following PRs were merged by first-time contributors:
- @adithya-naik: Image: Preserve aspectRatio and scale when switching to wide/full alignment. (76914)
- @danluu: RTC: Fix connection-lost error on large updates caused by mismatch between update size bounds check and expanded base64 update size. (77669)
- @hi0001234d: Connectors: Add
role="list"wrapper to connector cards for valid ARIA structure. (77689) - @rajanarahul93: Featured Image: Change toggle label to 'Make image a link'. (71931)
- @vishnupprajapat: Taxonomies: Add spacing above Add Taxonomy modal actions. (77523)
- @wwahammy: TypeScript: Migrate keyboard-shortcuts to TS. (76287)
Contributors
The following contributors merged PRs in this release:
@adamsilverstein @Adi-ty @adithya-naik @aduth @alecgeatches @amitraj2203 @andrewserong @CGastrell @ciampo @danluu @DarkMatter-999 @dpmehta @glendaviesnz @gziolo @hbhalodia @hi0001234d @himanshupathak95 @jameskoster @jorgefilipecosta @joshualip-plaudit @jsnajdr @juanmaguitar @kraftbj @Mamaduka @manzoorwanijk @mcsf @mikachan @mirka @Mustafabharmal @ntsekouras @peterwilsoncc @R1shabh-Gupta @rajanarahul93 @ramonjd @retrofox @SainathPoojary @shrivastavanolo @simison @Soean @t-hamano @Takshil-Kunadia @tellthemachines @tyxla @USERSATOSHI @vishnupprajapat @westonruter @wwahammy @yogeshbhutkar @ZebulanStanphill