Commit Graph

52097 Commits

Author SHA1 Message Date
ellatrix
c7050bfee4 Update db_version after r61689.
Props czarate, paulkevan, dd32.
See #64622.
Built from https://develop.svn.wordpress.org/trunk@61696


git-svn-id: http://core.svn.wordpress.org/trunk@61004 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-19 13:51:53 +00:00
audrasjb
98f5f51cbf Plugins: Add a new plugins_list_status_text filter in get_views() to allow custom filtering.
This changeset does the following:
- Custom statuses added via `plugins_list` now appear as tabs, to filter the related plugins
- The tab label is customizable via the new `plugins_list_status_text` hook

Follow-up to [56068].

Props juliobox, audrasjb, hellofromTonya, khokansardar, sajjad67, davidbaumwald, sukhendu2002, SirLouen, mindctrl, shailu25, huzaifaalmesbah, westonruter.
See #60495.


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


git-svn-id: http://core.svn.wordpress.org/trunk@61003 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-19 12:44:51 +00:00
ellatrix
1f6ad29381 Restore ca-bundle.crt changes after r61689.
r61689 accidentally reverted the change to src/wp-includes/certificates/ca-bundle.crt from r61685, so this commit restores it using `svn diff -c 61685 ^/trunk | patch -p0`.

Props dd32, mukesh27, johnbillion.
See #64245. See #64622.
Built from https://develop.svn.wordpress.org/trunk@61694


git-svn-id: http://core.svn.wordpress.org/trunk@61002 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-19 11:53:48 +00:00
jorgefilipecosta
58aadb74ce Fix: Remove empty get settings ability files from a previous revert.
When applying the grunt patch at [61690], it seems the patch made the files empty instead of deleting them. This commit just tries to fix that issue.
Follow up to [61690].

Props jorgefilipecosta.
Built from https://develop.svn.wordpress.org/trunk@61693


git-svn-id: http://core.svn.wordpress.org/trunk@61001 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-19 11:23:51 +00:00
audrasjb
82dc7c5d79 Coding Standards: Remove an unwanted space after [61691].
Follow-up to [61691].

Unprops audrasjb.
See #60770.


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


git-svn-id: http://core.svn.wordpress.org/trunk@61000 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-19 11:16:51 +00:00
audrasjb
2acbd93df1 I18N: Add dir="auto" to Timezone dropdown options.
This changeset adds `dir="auto"` to the Timezones dropdown located in Settings > General. With this attribute, the option alignment will be delegated to the user agent.

@see https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Global_attributes/dir.

Props farhad0, swissspidy, drysand, sabernhardt, khoipro, olmostblue, sajib1223.
Fixes #60770.


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


git-svn-id: http://core.svn.wordpress.org/trunk@60999 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-19 11:12:53 +00:00
jorgefilipecosta
45cde01c4a Revert: Abilities API core/get-settings ability.
This reverts [61600]. Other core abilities did not made into 7.0 beta 1 timeline, so adding just a single ability does not adds much value and we are temporarily reverting this addition.
This commit is just a clean execution of the revert command.

Props jorgefilipecosta, jason_the_adams, justlevine.
See #64455.
Built from https://develop.svn.wordpress.org/trunk@61690


git-svn-id: http://core.svn.wordpress.org/trunk@60998 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-19 10:57:01 +00:00
ellatrix
997cc3dd3d Real-time collaboration: add new REST endpoints, setting, and registered post meta.
Syncs/merges the PHP changes from the Gutenberg PR https://github.com/WordPress/gutenberg/pull/75366.

In Gutenberg, we have added support for real-time collaboration using CRDT documents (via the [Yjs library](https://yjs.dev/)). This work has suggested the following additions to WordPress:

1. A default "sync provider" based on HTTP polling that allows collaborators to share updates with each other. Previously, we relied on WebRTC connections between collaborators for this purpose, but it proved unreliable under many network conditions.
   - Our solution is designed to work on any WordPress installation. 
   - HTTP polling is the transport we identified as most likely to work universally.
   - Given the isolation and lifecycle of PHP processes, updates must be stored centrally in order to be shared among peers. We have chosen to store updates in post meta against a special post type, but alternate storage mechanisms are possible.
   - Collaborative editing can involve syncing multiple CRDT documents. To limit the number of connections consumed by this provider, requests are batched.
   - To prevent unbounded linear growth, updates are periodically compacted.
   - To avoid excessive load on lower-resourced hosts, this provider will benefit from usage limits (e.g., a maximum of three connected collaborators) enforced by the client (Gutenberg).

2. A new registered post meta that allows Gutenberg to persist CRDT documents alongside posts.
   - This provides all collaborators with a "shared starting point" for the collaborative session, which avoids duplicate updates.
   - Content stored in the WordPress database always remains the source of truth. If the content differs from the persisted CRDT document, the CRDT document is updated to match the database.

3. A new Writing setting that allows users to opt-in to real-time collaboration.
   - Enabling real-time collaboration disables post lock functionality and connects users to the sync provider.

4. A behavior change to autosaves is needed. When the the original author is editing a draft post (post_status == 'draft' OR 'auto-draft') and they hold the post lock, the autosave targets the actual post instead of an autosave revision. This puts the post data and the persisted CRDT document out of sync and leads to duplicate updates. When real-time collaboration is enabled, all collaborators must autosave in the same way.

This PR provides a proposed implementation of the changes above. This corresponding Gutenberg PR moves the work from the `experimental` directory to `lib/compat`:

https://github.com/WordPress/gutenberg/pull/75366

Cumulative work to add this functionality can be found using this label:

https://github.com/WordPress/gutenberg/issues?q=label%3A%22%5BFeature%5D%20Real-time%20Collaboration%22%20is%3Apr

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

Props czarate, paulkevan, ellatrix, timothyblynjacobs, westonruter, jorgefilipecosta, mindctrl.
Fixes #64622.

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


git-svn-id: http://core.svn.wordpress.org/trunk@60997 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-19 10:26:41 +00:00
audrasjb
b3ac058a85 General: Allow to hook into wp_trigger_error() when WP_DEBUG is not truthy.
This changeset allow developers to attach custom error handlers into `wp_trigger_error()` even if `WP_DEBUG` is not truthy.
It introduces two new hooks, making `wp_trigger_error()` consistent with what is available in `_doing_it_wrong`:
- `wp_trigger_error_always_run` always fires when the given function triggers a user-level error/warning/notice/deprecation message.
- `wp_trigger_error_trigger_error` filters whether to trigger the error.

Props kkmuffme, swissspidy, audrasjb.
Fixes #60886.


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


git-svn-id: http://core.svn.wordpress.org/trunk@60996 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-19 10:21:02 +00:00
audrasjb
70b6864b30 Administration: Warn when open registration and new user default is privileged.
Previously, WordPress allowed site owners to open registration AND to set the default new user level to "Administrator" or "Editor". While this combination may make sense for some sites, this is genrally a really really bad idea.

With this changeset:
- Administrator and Editor roles are now removed from the new user default role selector in the General Options admin screen.
- If such a role was selected before, an alert is shown in Site Health.
- A new filter is introduced: `default_role_dropdown_excluded_roles` allows developers to change the default excluded roles in the dropdown.

Props kraftbj, subrataemfluence, roytanck, dd32, ottok, jrf, eatingrules, verygoode, generosus, stevejburge, arunu1996, benniledl, audrasjb, mukesh27, swissspidy, Mte90, zodiac1978, pooja1210, davidbaumwald, johnbillion, jorbin, SirLouen, oglekler, kirasong, shailu25, huzaifaalmesbah, jsmansart.
Fixes #43936.


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


git-svn-id: http://core.svn.wordpress.org/trunk@60995 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-19 09:43:48 +00:00
desrosj
96a5cbf62c External Libraries: Upgrade backbone to 1.6.1.
This is a minor bugfix release. 

Props vipulgupta003.
Fixes #63763.
Built from https://develop.svn.wordpress.org/trunk@61686


git-svn-id: http://core.svn.wordpress.org/trunk@60994 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-19 03:40:52 +00:00
desrosj
b3993e56fb Security: Update compoaser/ca-bundle to version 1.5.10.
This update removes 4 certificates from the bundle.

Props johnbillion
Fixes #64245.
Built from https://develop.svn.wordpress.org/trunk@61685


git-svn-id: http://core.svn.wordpress.org/trunk@60993 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-19 03:33:39 +00:00
desrosj
f3fc4e97b0 External Libraries: Update lodash to 4.17.23.
A full list of changes between `4.17.21` and `4.17.23` can be found on GitHub: https://github.com/lodash/lodash/compare/4.17.21...4.17.23.

Props nimeshatxecurify, peterwilsoncc.
Fixes #64664.
Built from https://develop.svn.wordpress.org/trunk@61684


git-svn-id: http://core.svn.wordpress.org/trunk@60992 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-19 03:28:49 +00:00
Sergey Biryukov
ff953ad4f5 Docs: Add missing descriptions for WP_Media_List_Table methods.
Follow-up to [11749], [15491], [31162], [32654], [61594].

Props noruzzaman.
See #64224.
Built from https://develop.svn.wordpress.org/trunk@61683


git-svn-id: http://core.svn.wordpress.org/trunk@60991 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-18 23:23:26 +00:00
joedolson
5444cf51c7 Admin: Miscellaneous reskin color and alignment fixes.
Fix a few miscellaneous colors and alignment shifts missed in previous updates. Apply the new admin link and button colors on missed cases in the customizer, classic widgets, skip links, help and screen options, and admin nav menus. 

Props joedolson, fabiankaegy.
Fixes #64652.
Built from https://develop.svn.wordpress.org/trunk@61682


git-svn-id: http://core.svn.wordpress.org/trunk@60990 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-18 22:03:43 +00:00
joedolson
b9dd8f612b Admin: Apply scheme styles in non-admin admin screens.
Adds the admin-scheme styles as a dependency for the login and install styles. This is to ensure the CSS variables are available to the login, installation, database repair and upgrade screens.

Modifies the display of notices in the login styles to match those in the new default scheme, "modern".

Props peterwilsoncc, wildworks, westonruter, mukesh27, fabiankaegy, audrasjb, huzaifaalmesbah, sabernhardt, presskopp, SirLouen, ellatrix, nendeb55, neo2k23, jsmansart, joedolson.
Fixes #64640, #64548. See #64308.
Built from https://develop.svn.wordpress.org/trunk@61681


git-svn-id: http://core.svn.wordpress.org/trunk@60989 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-18 21:14:48 +00:00
ellatrix
ec44501020 Gutenberg ref update.
Developed in https://github.com/WordPress/wordpress-develop/pull/10968.

Props ellatrix, adamsilverstein, youknowriad.
See #64595.

---

I've included a log of the Gutenberg changes with the following command:

git log --reverse --format="- %s" 59a08c5496008ca88f4b6b86f38838c3612d88c8..7a11a53377a95cba4d3786d71cadd4c2f0c5ac52 | sed 's|#\([0-9][0-9]*\)|https://github.com/WordPress/gutenberg/pull/\1|g; /github\.com\/WordPress\/gutenberg\/pull/!d' | pbcopy

- Remove unnecessary block deprecation from experimental tabs (https://github.com/WordPress/gutenberg/pull/75208)
- Block Editor: The insertBlock(s) actions should receive the same arguments (https://github.com/WordPress/gutenberg/pull/75197)
- Storybook: Always load design tokens in Design System section (https://github.com/WordPress/gutenberg/pull/74899)
- Default all initial suggested results to 20 for navigation link ui (https://github.com/WordPress/gutenberg/pull/75186)
- Navigation overlay: remove experiment (https://github.com/WordPress/gutenberg/pull/74968)
- Move AwarenessState to @wordpress/core-data (https://github.com/WordPress/gutenberg/pull/75216)
- RichText: Avoid stale active formats when deleting the text (https://github.com/WordPress/gutenberg/pull/75227)
- Fix <CollaboratorsPresence> type imports (https://github.com/WordPress/gutenberg/pull/75232)
- Block Editor: Add l10n context to 'Manage allowed blocks' string (https://github.com/WordPress/gutenberg/pull/75239)
- Fixed: Custom colors are now reflected in the editor for heading blocks (https://github.com/WordPress/gutenberg/pull/75234)
- Real-time Collaboration: Fix revision restore bug (https://github.com/WordPress/gutenberg/pull/75233)
- Real-time collaboration: Update 'sync.providers' filter inline comments (https://github.com/WordPress/gutenberg/pull/75248)
- Real-time collaboration: Make the collaborators presense button translatable (https://github.com/WordPress/gutenberg/pull/75252)
- Fix: Navigation Overlay Close Block: Add missing @since tag https://github.com/WordPress/gutenberg/pull/75247 (https://github.com/WordPress/gutenberg/pull/75250)
- Cover: Add new "fullheight" icon, and use for Cover (https://github.com/WordPress/gutenberg/pull/75240)
- Real-time collaboration: Remove @wordpress/sync from bundled packages and add private APIs (https://github.com/WordPress/gutenberg/pull/74671)
- Navigation Link: Clarify Link To invalid and draft state messages (https://github.com/WordPress/gutenberg/pull/74054)
- Docs: Simplifying Gutenberg versions table (https://github.com/WordPress/gutenberg/pull/75209)
- UI: Remove Box component abstraction (https://github.com/WordPress/gutenberg/pull/74986)
- Docs: Remove private GitHub team links in repository management (https://github.com/WordPress/gutenberg/pull/75255)
- UI: Add `Textarea` primitive (https://github.com/WordPress/gutenberg/pull/74707)
- Components: Add usage guidance for agents and Storybook (https://github.com/WordPress/gutenberg/pull/74815)
- Theme: Update elevation tokens to use abbreviated size names (https://github.com/WordPress/gutenberg/pull/75103)
- Navigation link: fix resetting link from the tools panel (https://github.com/WordPress/gutenberg/pull/75228)
- List View Support: Only render list view on top level block with support (https://github.com/WordPress/gutenberg/pull/75166)
- Gallery: Add lightbox support (https://github.com/WordPress/gutenberg/pull/62906)
- Workflows: Ignore icons manifest for manual backports (https://github.com/WordPress/gutenberg/pull/75245)
- Add new `adaptiveSelect` DataForm control (https://github.com/WordPress/gutenberg/pull/74937)
- Site Editor Pages: QuickEdit as a modal (https://github.com/WordPress/gutenberg/pull/75173)
- Add block rename keyboard shortcut (https://github.com/WordPress/gutenberg/pull/74454)
- Playlist block: Remove border (https://github.com/WordPress/gutenberg/pull/75202)
- Widget Area: Disable renaming and visibility support (https://github.com/WordPress/gutenberg/pull/75279)
- @wordpress/theme: add missing CHANGELOG entries (https://github.com/WordPress/gutenberg/pull/75281)
- Storybook: Add Stories for LetterSpacingControl component (https://github.com/WordPress/gutenberg/pull/73480)
- Remove the client from the awareness state when they disconnect (https://github.com/WordPress/gutenberg/pull/75253)
- Fix awareness timeout documentation unit (https://github.com/WordPress/gutenberg/pull/75284)
- Add global setting to enable real-time collaboration (https://github.com/WordPress/gutenberg/pull/75286)
- Notes: Pressing Escape should cancel adding a note (https://github.com/WordPress/gutenberg/pull/75288)
- Real-time Collaboration: Change users to collaborators (https://github.com/WordPress/gutenberg/pull/75237)
- Add timestamp when publishing next versions (https://github.com/WordPress/gutenberg/pull/75293)
- Storybook: Preserve export order for stories (https://github.com/WordPress/gutenberg/pull/75295)
- ToggleControl: Prevent console warning for `__nextHasNoMarginBottom` (https://github.com/WordPress/gutenberg/pull/75296)
- Quick edit: Make footer sticky (https://github.com/WordPress/gutenberg/pull/75297)
- DataForm Regular layout: label always uppercase (https://github.com/WordPress/gutenberg/pull/75292)
- @wordpress/ui: add Dialog component (https://github.com/WordPress/gutenberg/pull/75183)
- Navigation Link: Go to page link and edit page for inspector sidebar (https://github.com/WordPress/gutenberg/pull/75262)
- SiteEditor Pages: prevent QuickEdit modal from being triggered in list layout via URL param (https://github.com/WordPress/gutenberg/pull/75300)
- Link Control: Fix validation timing (https://github.com/WordPress/gutenberg/pull/75267)
- Publishing packages: fix next timestamp (https://github.com/WordPress/gutenberg/pull/75301)
- Add storybook for ColorPaletteControl (https://github.com/WordPress/gutenberg/pull/74425)
- Post Comments Form: Migrate to text-align block support (https://github.com/WordPress/gutenberg/pull/75322)
- Post Comments Count: Migrate to text-align block support (https://github.com/WordPress/gutenberg/pull/75321)
- Optimize tabsList computation with useRef for comparison (https://github.com/WordPress/gutenberg/pull/75219)
- Accordion block: Add list view support (https://github.com/WordPress/gutenberg/pull/75271)
- Media Fields: Filter author field to only show users with authoring capabilities (https://github.com/WordPress/gutenberg/pull/75328)
- Fields: Fix `authorField` query (https://github.com/WordPress/gutenberg/pull/75298)
- Slot: fix ref forwarding (https://github.com/WordPress/gutenberg/pull/75274)
- wp-env: Add --config option for custom config files (https://github.com/WordPress/gutenberg/pull/75087)
- Update Emotion for React 19 compat (https://github.com/WordPress/gutenberg/pull/75324)
- Block Visibility: Show keyboard shortcut hint in context menu (https://github.com/WordPress/gutenberg/pull/75334)
- Updated Typo in template-activate file (https://github.com/WordPress/gutenberg/pull/75333)
- wp-env: fix status command (https://github.com/WordPress/gutenberg/pull/75325)
- Playlist block:Inherit more CSS (https://github.com/WordPress/gutenberg/pull/75256)
- DataViews: Add onReset prop for view persistence reset (https://github.com/WordPress/gutenberg/pull/75093)
- Notes: Add a keyboard shortcut for creating a new note (https://github.com/WordPress/gutenberg/pull/75287)
- Storybook: Fix missing props on certain components (https://github.com/WordPress/gutenberg/pull/75316)
- Pattern Editing: Allow click through to List View (https://github.com/WordPress/gutenberg/pull/75246)
- Block Bindings: Have block fields panel reflects bound attribute value (https://github.com/WordPress/gutenberg/pull/72096)
- Fix: ISO 8601 compliant year formatting in TimePicker (https://github.com/WordPress/gutenberg/pull/75343)
- Prevent fatal error when the inline CSS duotone variable is an array (https://github.com/WordPress/gutenberg/pull/75283)
- Bugfix: Set the removed users to empty for awareness (https://github.com/WordPress/gutenberg/pull/75337)
- Button: prevent outline flicker when focused and active at the same time (https://github.com/WordPress/gutenberg/pull/75346)
- Real-time collaboration: Always target autosave revision (https://github.com/WordPress/gutenberg/pull/75105)
- In-editor revisions: add visual diffing (https://github.com/WordPress/gutenberg/pull/75049)
- iAPI Router: Update cached styles for re-fetched pages (https://github.com/WordPress/gutenberg/pull/75097)
- Add tests for the awareness code in core-data (https://github.com/WordPress/gutenberg/pull/75074)
- Add tests for the awareness code in sync (https://github.com/WordPress/gutenberg/pull/75077)
- Lock save button during Client Side Media processing and uploading (https://github.com/WordPress/gutenberg/pull/74951)
- Real-time Collaboration: Fix broken unit tests for awareness (https://github.com/WordPress/gutenberg/pull/75362)
- Boot: Fix mobile admin bar covering single-page mode headers (https://github.com/WordPress/gutenberg/pull/75339)
- Design System: Add guidelines for save and submit UX (https://github.com/WordPress/gutenberg/pull/74811)
- Featured Image: fix select-default-value (https://github.com/WordPress/gutenberg/pull/75358)
- Breadcrumbs: Improve loading state rendering (https://github.com/WordPress/gutenberg/pull/75383)
- Block Editor: Remove formatting controls restriction private API (https://github.com/WordPress/gutenberg/pull/75382)
- Link Control: Validate on submit (https://github.com/WordPress/gutenberg/pull/75310)
- Rich Text: Remove min-width inline style causing flex layout issues (https://github.com/WordPress/gutenberg/pull/75370)
- Tabs: Tidy up UI for controls (https://github.com/WordPress/gutenberg/pull/75309)
- Core Block Reference: Fix object empty inner key processing (https://github.com/WordPress/gutenberg/pull/75391)
- Improve sync performance metrics (https://github.com/WordPress/gutenberg/pull/75029)
- DataForm: update panel trigger (https://github.com/WordPress/gutenberg/pull/75290)
- Block Editor: Fix Columns block horizontal spacing when setting vertical gap (https://github.com/WordPress/gutenberg/pull/75355)
- DataViews Filters: Fix styling of long values in filter dropdown (https://github.com/WordPress/gutenberg/pull/75369)
- Try swapping tabs (https://github.com/WordPress/gutenberg/pull/75194)
- RichText: move useFormatTypes to rich-text package (https://github.com/WordPress/gutenberg/pull/75387)
- Make all navigation overlay close buttons work (https://github.com/WordPress/gutenberg/pull/75384)
- Block Editor: Improve Background panel UI in Global Styles (https://github.com/WordPress/gutenberg/pull/75230)
- Tabs: Update Tabs block icons (https://github.com/WordPress/gutenberg/pull/75376)
- Accordion: Move Accordion icons to Icon library (https://github.com/WordPress/gutenberg/pull/75380)
- Fix: Changing URL in link after changing text outside the popover resets it (https://github.com/WordPress/gutenberg/pull/75342)
- Update icon manifest acronyms. (https://github.com/WordPress/gutenberg/pull/75418)
- Code Modernization: Use null coalescing operator in additional `isset() ternaries. (https://github.com/WordPress/gutenberg/pull/75419)
- Pattern Editing: Move List View selectors to private-selectors (https://github.com/WordPress/gutenberg/pull/75414)
- DataViews: Use public ColorPicker instead of internal Picker export (https://github.com/WordPress/gutenberg/pull/75394)
- Abilities: Allow nested namespace ability names (2-4 segments) (https://github.com/WordPress/gutenberg/pull/75393)
- Fix: Remove backport changelog committed by mistake (https://github.com/WordPress/gutenberg/pull/75441)
- Block Visibility: Simplify toolbar for hidden blocks (https://github.com/WordPress/gutenberg/pull/75335)
- Block Visibility: Centralize modal state in block-editor store (https://github.com/WordPress/gutenberg/pull/75367)
- Allow grid to use style variation blockGap values for columns calculation (https://github.com/WordPress/gutenberg/pull/75360)
- Langauge Format: Add missing attribute definiton (https://github.com/WordPress/gutenberg/pull/75422)
- Block transform command: pass the block icon src rather than a BlockIcon component (https://github.com/WordPress/gutenberg/pull/75365)
- Note: Remove block highlight when deleting parent note (https://github.com/WordPress/gutenberg/pull/75453)
- Core Data: Improve blocks cache in useEntityBlockEditor (https://github.com/WordPress/gutenberg/pull/75400)
- MediaEdit: Support ordered values and reordering of items (https://github.com/WordPress/gutenberg/pull/75207)
- Writing flow: fix select all with full formatting (https://github.com/WordPress/gutenberg/pull/64934)
- Filter navigation category patterns to only show in navigation-overlay template part context (https://github.com/WordPress/gutenberg/pull/75276)
- Update Testing Library for React 19 compat (https://github.com/WordPress/gutenberg/pull/75340)
- Writing Flow: Fix block selection from partially selected RichText (https://github.com/WordPress/gutenberg/pull/75449)
- Notes: Fix sidebar display logic for small screens (https://github.com/WordPress/gutenberg/pull/75454)
- Post editor: iframe: check inserted rather than registered block versions (https://github.com/WordPress/gutenberg/pull/75187)
- Block Visibility: Disable visibility toggle for children of sections (https://github.com/WordPress/gutenberg/pull/75447)
- Notes: Update shortcut category (https://github.com/WordPress/gutenberg/pull/75461)
- Add dedicated navigation-overlay icon (https://github.com/WordPress/gutenberg/pull/75249) (https://github.com/WordPress/gutenberg/pull/75426)
- Docs: Rename Interactivity API's 'API Reference' to 'Directives and Store' (https://github.com/WordPress/gutenberg/pull/74974)
- DataForm: Fix color picker styles (https://github.com/WordPress/gutenberg/pull/75427)
- Post Excerpt Block: Remove REST API filter for excerpt length in post excerpt block (https://github.com/WordPress/gutenberg/pull/75299)
- Move experimental PR out of backport log (https://github.com/WordPress/gutenberg/pull/75465)
- Add paste logging to writing flow (https://github.com/WordPress/gutenberg/pull/73885)
- Real-time collaboration: Sync post content and undefined `blocks` value (https://github.com/WordPress/gutenberg/pull/75437)
- Gutenberg plugin: always enforce the iframe in the post editor (https://github.com/WordPress/gutenberg/pull/75475)
- New Block: Icon Block (https://github.com/WordPress/gutenberg/pull/71227)
- Tabs: Improve tab keyboard nav (https://github.com/WordPress/gutenberg/pull/75471)
- Pre-populate Navigation Page Creator with Search Text  (https://github.com/WordPress/gutenberg/pull/75154)
- Block Library: Hide navigation-overlay template parts from inserter (https://github.com/WordPress/gutenberg/pull/75478)
- Tabs: Add text and background color support (https://github.com/WordPress/gutenberg/pull/75482)
- Preserve existing URLInput defaults (https://github.com/WordPress/gutenberg/pull/75392)
- UI: Remove unnecessary jest.setTimeout from Select test (https://github.com/WordPress/gutenberg/pull/75444)
- Fix missed dimension token migration in UI package (https://github.com/WordPress/gutenberg/pull/75446)
- Render default density selector last in design tokens CSS (https://github.com/WordPress/gutenberg/pull/75474)
- Navigation: Improved help text in create a page flow (https://github.com/WordPress/gutenberg/pull/75349)
- Fix gap token migration guide in changelog (https://github.com/WordPress/gutenberg/pull/75492)
- Block Visibility: Disable Apply button on non-dirty state (https://github.com/WordPress/gutenberg/pull/75494)
- Real-time Collaboration: Use Y.text for title, content and excerpt (https://github.com/WordPress/gutenberg/pull/75448)
- DataForm: Style SummaryButton in panel layout with `is-disabled` classname (https://github.com/WordPress/gutenberg/pull/75470)
- Gallery: Add list view block support (https://github.com/WordPress/gutenberg/pull/75407)
- Types: consistently use the React namespace (https://github.com/WordPress/gutenberg/pull/75499)
- Enhance block appender labels to reflect default block type (https://github.com/WordPress/gutenberg/pull/71502)
- Import Yjs correctly (https://github.com/WordPress/gutenberg/pull/75500)
- Add testsEnvironment option and split Gutenberg wp-env configs (https://github.com/WordPress/gutenberg/pull/75341)
- Add `clearEntityRecordEdits` action to core-data (https://github.com/WordPress/gutenberg/pull/75397)
- Tabs: Stabilize Tabs blocks (https://github.com/WordPress/gutenberg/pull/75424)
- Simplify Tabs Menu Item editing (https://github.com/WordPress/gutenberg/pull/75416)
- Fix LinkControl URL Normalization (https://github.com/WordPress/gutenberg/pull/75488)
- Navigation Submenu: Restore openSubmenusOnClick to usesContext for backward compatibility. (https://github.com/WordPress/gutenberg/pull/75435)
- Tabs: Add `@since 7.0.0` annotations (https://github.com/WordPress/gutenberg/pull/75521)
- Story types: fix StoryFns used as React components (https://github.com/WordPress/gutenberg/pull/75472)
- Tabs: fix incorrect fixtures (https://github.com/WordPress/gutenberg/pull/75523)
- AGENTS.md: Add CLAUDE.md symlinks, architecture decisions, and common pitfalls (https://github.com/WordPress/gutenberg/pull/75507)
- Use contextual snackbar text when activating a theme from preview (https://github.com/WordPress/gutenberg/pull/75385)
- Pick user fields instead of spreading the entire object (https://github.com/WordPress/gutenberg/pull/75528)
- Real-time collaboration: Move PHP code to compat / backports directory (https://github.com/WordPress/gutenberg/pull/75366)
- Icons: Fix incorrect attributes for SVG (https://github.com/WordPress/gutenberg/pull/75273)
- Icons: Make full height icon label title case (https://github.com/WordPress/gutenberg/pull/75524)
- Respect deprecated openSubmenusOnClick value on frontend rendering (https://github.com/WordPress/gutenberg/pull/75439)
- useRef: always supply initial value (https://github.com/WordPress/gutenberg/pull/75513)
- Code Modernization: Replace isset() checks with null coalescing operator (https://github.com/WordPress/gutenberg/pull/75425)
- Prefix usages of JSX namespaces with React.JSX (https://github.com/WordPress/gutenberg/pull/75508)
- Cleanup: Remove unnecessary array check in `WP_Theme_JSON_Gutenberg` (https://github.com/WordPress/gutenberg/pull/75515)
- Real-time collaboration: Add collaborators cursor awareness (https://github.com/WordPress/gutenberg/pull/75398)
- Post Comments Link: Migrate to Text-Align Block Support (https://github.com/WordPress/gutenberg/pull/75332)
- Post time to read: Migrate to Text-Align Block Support (https://github.com/WordPress/gutenberg/pull/75541)
- ExternalLink: Prevent Twemoji from replacing arrow (https://github.com/WordPress/gutenberg/pull/75538)
- Duotone: add sgomes as owner (https://github.com/WordPress/gutenberg/pull/75519)
- Use null coalescing operator for common isset patterns (https://github.com/WordPress/gutenberg/pull/75487)
- Term Description: Migrate to Text-Align Block Support (https://github.com/WordPress/gutenberg/pull/75542)
- Create sub-sized images (https://github.com/WordPress/gutenberg/pull/74566)
- Add EXIF metadata tests for Client Side Media (https://github.com/WordPress/gutenberg/pull/74909)
- Add AVIF, WebP and MozJPEG output encoding support (https://github.com/WordPress/gutenberg/pull/75081)
- Post Terms: Migrate to Text-Align Block Support (https://github.com/WordPress/gutenberg/pull/75545)
- Tabs: Make Example preview translatable (https://github.com/WordPress/gutenberg/pull/75555)
- List View tab: Ensure it's populated when first selecting a container block (https://github.com/WordPress/gutenberg/pull/75558)
- Fix auto draft bug for Y.text titles (https://github.com/WordPress/gutenberg/pull/75560)
- Border Support: Fix editor split border style fallback (https://github.com/WordPress/gutenberg/pull/75546)
- Block Editor: Avoid unnecessary state churn in controlled inner blocks reducers (https://github.com/WordPress/gutenberg/pull/75458)
- Block Lock: Disable Apply button on non-dirty state (https://github.com/WordPress/gutenberg/pull/75495)
- Post Terms: Avoid unbound queries when the post context isn't available (https://github.com/WordPress/gutenberg/pull/75536)
- wp-env Playground: improve mapping and core source handling (https://github.com/WordPress/gutenberg/pull/75527)
- DataForm: add edit variant (https://github.com/WordPress/gutenberg/pull/75462)
- Tabs: Improve Tab Panel accessibility (https://github.com/WordPress/gutenberg/pull/75484)
- Tabs: Remove name editing UI (https://github.com/WordPress/gutenberg/pull/75554)
- useBlockSync: stop reconstructing controlled inner blocks (https://github.com/WordPress/gutenberg/pull/75562)
- Notes: Fix new note creation from the List View (https://github.com/WordPress/gutenberg/pull/75566)
- Navigation: Update overlay template part naming to "Navigation Overlay" (https://github.com/WordPress/gutenberg/pull/75564)
- Update usage of RefObject types (React 19 compat) (https://github.com/WordPress/gutenberg/pull/75567)
- useMergeRefs: migrate to TypeScript (https://github.com/WordPress/gutenberg/pull/75569)
- Improve link preview badges (https://github.com/WordPress/gutenberg/pull/75318)
- Add getDimensionsClassesAndStyles function and related tests (https://github.com/WordPress/gutenberg/pull/74524)
- Informational Parity between Inspector Link Preview and on Canvas Link Preview (https://github.com/WordPress/gutenberg/pull/75399)
- Icons Registry: Don't expose "internal" icons (https://github.com/WordPress/gutenberg/pull/75526)
- ui/Button: fix disabled styles and variable composition (https://github.com/WordPress/gutenberg/pull/75568)
- Tabs: Set explicit font-family on tab buttons (https://github.com/WordPress/gutenberg/pull/75537)
- Interactivity API: Export `watch` from `@preact/signals`'s `effect` (https://github.com/WordPress/gutenberg/pull/75563)
- iAPI router: Move internal properties to a private store (https://github.com/WordPress/gutenberg/pull/70882)
- Post Excerpt: Add text columns support (https://github.com/WordPress/gutenberg/pull/75587)
- Update gutenberg to match core after https://github.com/WordPress/gutenberg/pull/75360 sync (https://github.com/WordPress/gutenberg/pull/75594)
- Block Visibility: Show viewport icons and tooltip in list view for hidden blocks (https://github.com/WordPress/gutenberg/pull/75404)
- [Real-time collaboration] Refine collaborator overlay with Avatar component integration (https://github.com/WordPress/gutenberg/pull/75595)
- Media Utils: Auto-select uploaded files in media modal experiment (https://github.com/WordPress/gutenberg/pull/75597)
- Try enabling paragraphs to be added to contentOnly patterns (https://github.com/WordPress/gutenberg/pull/73222)
- Implement WebAssembly support detection and fallbacks (https://github.com/WordPress/gutenberg/pull/74827)
- Icon block: Skip serialization and increase default size (https://github.com/WordPress/gutenberg/pull/75553)
- In-editor Revisions: Update success notice message (https://github.com/WordPress/gutenberg/pull/75411)
- Stabilize PHP-Only Block Registration (https://github.com/WordPress/gutenberg/pull/75543)
- Add comments around expandRevision functionality (https://github.com/WordPress/gutenberg/pull/75573)
- Tab Block: Ensure label formatting works correctly (https://github.com/WordPress/gutenberg/pull/75548)
- Tabs: Fix saved HTML (https://github.com/WordPress/gutenberg/pull/75580)
- [Real-time collaboration] Fix <CollaboratorsPresence> layout issue (https://github.com/WordPress/gutenberg/pull/75599)
- Notes: Fix block toolbar click action (https://github.com/WordPress/gutenberg/pull/75614)
- Commands: Add category property to command registration (https://github.com/WordPress/gutenberg/pull/75612)
- fix tab color-reset-all-filter (https://github.com/WordPress/gutenberg/pull/75606)
- Fix selection restoration after entity navigation (https://github.com/WordPress/gutenberg/pull/75371)
- Tabs: Sanitize tab_id (https://github.com/WordPress/gutenberg/pull/75615)
- Inherit text color for tabs-menu-item blocks (https://github.com/WordPress/gutenberg/pull/75621)
- Auto-switch viewport based on Overlay Visibility setting when entering overlay editor (https://github.com/WordPress/gutenberg/pull/75386)
- Fix: Show and hook up submenu visibility for Page Lists within Navigation Blocks (https://github.com/WordPress/gutenberg/pull/75531)
- Remove useEffect guard rail to enforce minimum width. (https://github.com/WordPress/gutenberg/pull/75624)
- Navigation: select list view tab on contentOnly. Alternative with explicit solution (https://github.com/WordPress/gutenberg/pull/75578)
- Navigation overlay: added basic e2e tests (https://github.com/WordPress/gutenberg/pull/75581)
- Revert Tabs block to experimental block (https://github.com/WordPress/gutenberg/pull/75572)
- List Block: Prevent content loss when merging into a fresh empty list item (https://github.com/WordPress/gutenberg/pull/74382)
- Fix Overlay core patterns not showing on design tab (https://github.com/WordPress/gutenberg/pull/75618)
- Rename Verse block to Poetry (https://github.com/WordPress/gutenberg/pull/74121)
- Fix Navigation block button showing "View custom" instead of "View link" for external URLs (https://github.com/WordPress/gutenberg/pull/75571)
- Removed Unused Global Documentation (https://github.com/WordPress/gutenberg/pull/75631)
- Real-time collaboration: Add sync connection status handling (https://github.com/WordPress/gutenberg/pull/75066)
- Add e2e test for selection restoration after pattern entity navigation (https://github.com/WordPress/gutenberg/pull/75575)
- Remove the Icon Block and Icon SVG API from experiments (https://github.com/WordPress/gutenberg/pull/75576)
- Block editor cross origin isolation: attempt to gracefully deal with race conditions (https://github.com/WordPress/gutenberg/pull/75600)
- Update diff package (https://github.com/WordPress/gutenberg/pull/75644)
- Upload Media: rebase of 75547 (https://github.com/WordPress/gutenberg/pull/75646)
- Block Editor: Allow disabling content-only editing for unsynced patterns (https://github.com/WordPress/gutenberg/pull/75457)
- Real-Time Collaboration: Add e2e tests for RTC (https://github.com/WordPress/gutenberg/pull/75598)
- Update the y-protocols versin and remove the unncessary types (https://github.com/WordPress/gutenberg/pull/75657)
- Pattern Editing: Add "Edit section" button to unsynced pattern toolbar (https://github.com/WordPress/gutenberg/pull/75602)
- PHP-Only Block Registration: Remove client-side schema validation (https://github.com/WordPress/gutenberg/pull/75623)
- Navigation: Add 'expectedDeprecated' annotations (https://github.com/WordPress/gutenberg/pull/75659)
- Site Editor: make QuickEdit stable + change template to select (https://github.com/WordPress/gutenberg/pull/75565)
- Icon Block: Move default width rule to theme.json instead of block.json (https://github.com/WordPress/gutenberg/pull/75653)
- Add e2e test for loading settings in site editor preload spec (https://github.com/WordPress/gutenberg/pull/75661)
- Update Ariakit packages (https://github.com/WordPress/gutenberg/pull/75620)
- Upgrade Playwright to v1.58 (https://github.com/WordPress/gutenberg/pull/75632)
- GitHub actions: Exclude lib/theme.json from backport changelog check (https://github.com/WordPress/gutenberg/pull/75666)
- theme.json: Enable width support for icon block by default (https://github.com/WordPress/gutenberg/pull/75665)
- Icons: Trim list of public icons further (https://github.com/WordPress/gutenberg/pull/75630)
- Update Navigation block tests to use non-deprecated API (https://github.com/WordPress/gutenberg/pull/75660)
- Update navigation block tests to use gutenberg version of block_core_navigation_block_tree_has_block_type - works on old wp versions (https://github.com/WordPress/gutenberg/pull/75673)
- Update copy (https://github.com/WordPress/gutenberg/pull/75663)
- Commands: Display category labels and enforce category icons (https://github.com/WordPress/gutenberg/pull/75669)
- Heading Block: Fix preview display (https://github.com/WordPress/gutenberg/pull/75675)
- Iframe: memoize src URL globally keyed by resolvedAssets (https://github.com/WordPress/gutenberg/pull/75619)
- ContrastChecker: Fix check for button block colors (https://github.com/WordPress/gutenberg/pull/71959)
- Writing flow: skip non-empty blocks on arrow key nav (https://github.com/WordPress/gutenberg/pull/75141)
- Comments Link: fix transforms textAlign (https://github.com/WordPress/gutenberg/pull/75676)
- Add initialSearchState to avoid console warnings from LinkControl inputValue change (https://github.com/WordPress/gutenberg/pull/75643)
- Migrate `EditorSnackbar` and `EditorNotices` components to the `@wordpress/notices` package (https://github.com/WordPress/gutenberg/pull/74384)
- Add minimum cap check to sync endpoint (https://github.com/WordPress/gutenberg/pull/75681)
- Fix: Hide link controls in sidebar when submenus open on click (https://github.com/WordPress/gutenberg/pull/75637)
- Set snackbar position to center  (https://github.com/WordPress/gutenberg/pull/75294)
- Gallery: Fix PHP warning in random order image reordering (https://github.com/WordPress/gutenberg/pull/75678)
- DateCalendar, DateRangeCalendar: use lighter gray for disabled dates (https://github.com/WordPress/gutenberg/pull/75683)
- Pass unsupported formats directly to the server (https://github.com/WordPress/gutenberg/pull/74910)
- RTC: Compact on request with encodeStateAsUpdate (https://github.com/WordPress/gutenberg/pull/75682)
- Icons: Generate manifest PHP file based on JSON file (https://github.com/WordPress/gutenberg/pull/75684)
- ui/IconButton: make icon always 24px regardless of `size` prop (https://github.com/WordPress/gutenberg/pull/75677)
- Gallery: Skip interactivity directives when no images have lightbox enabled (https://github.com/WordPress/gutenberg/pull/75680)
- DataForm: Fix focus loss and refactor Card layout (https://github.com/WordPress/gutenberg/pull/75689)
- Remove IS_GUTENBERG_PLUGIN checks for collaborative editing (https://github.com/WordPress/gutenberg/pull/75699)

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


git-svn-id: http://core.svn.wordpress.org/trunk@60988 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-18 20:56:33 +00:00
youknowriad
c828fb4b47 Build: Fix Gutenberg build base-url argument passing across platforms.
When building Gutenberg, the `--base-url` argument was forwarded through
`npm run build --`, which passes arguments through a shell layer. The
argument value `includes_url( 'build/' )` contains spaces, parentheses,
and single quotes that could be mangled by shell parsing on some
platforms, causing the generated `constants.php` to lose the trailing
slash in `build_url`.

This invokes `node bin/build.mjs` directly instead, bypassing npm's
shell forwarding entirely. The argument is passed as a single array
element via `spawn`, so it arrives intact regardless of platform.

Props youknowriad, desrosj.
See #64656.

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


git-svn-id: http://core.svn.wordpress.org/trunk@60987 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-18 20:13:37 +00:00
ellatrix
a4bfbab782 Gutenberg PHP merge: block level custom CSS.
Merges/syncs PHP changes from https://github.com/WordPress/gutenberg/pull/73959.

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

Props glendaviesnz, shailu25, scruffian, aaronrobertshaw, mamaduka, shimotomoki.
Fixes #64544.
Built from https://develop.svn.wordpress.org/trunk@61678


git-svn-id: http://core.svn.wordpress.org/trunk@60986 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-18 20:11:46 +00:00
ellatrix
d179d619f9 Build: Remove all sourceMappingURL comments when copying Gutenberg files.
The `removeSourceMaps` regex in `copy-gutenberg-build.js` was missing the `/g` (global) flag, so it only stripped the **first** `//# sourceMappingURL=` comment per file.

Bundled files such as the `@wordpress/vips` web worker can contain **multiple** `sourceMappingURL` references from concatenated modules (esbuild builds worker bundles with `sourcemap: true`, and when webpack bundles the module entry point it preserves comments from source modules). This causes the `verify:source-maps` build check to fail:

```
Warning: The build/wp-includes/js/dist/script-modules/vips/worker.js file must not contain a sourceMappingURL.
```

Adding the `/g` flag ensures every occurrence is removed, consistent with the existing `replace:source-maps` Grunt task which already uses the global flag.

Fixes the build failure reported in https://github.com/WordPress/wordpress-develop/pull/10968#issuecomment-3920484908.

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

Props adamsilverstein.
See #64393.
Built from https://develop.svn.wordpress.org/trunk@61677


git-svn-id: http://core.svn.wordpress.org/trunk@60985 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-18 19:29:45 +00:00
Weston Ruter
268fc794c9 Themes: Fix type issues in core themes and remove PHPStan suppression comments.
Developed in https://github.com/WordPress/wordpress-develop/pull/10951

Props westonruter, sabernhardt, justlevine.
See #64238, #61175.

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


git-svn-id: http://core.svn.wordpress.org/trunk@60984 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-18 16:47:42 +00:00
mcsf
2f6f05ec70 Icons library: Register all icons found in manifest
As of https://github.com/WordPress/gutenberg/pull/75684, icons' manifest.php
file only lists "public" icons, and in the process the now-redundant `"public"
=> true` flag was dropped.

Accordingly, this removes the check for the `public` flag from the icon
registry's registration logic.

Follow-up to [61674].

Props mcsf, wildworks, ellatrix.
Fixes #64651.


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


git-svn-id: http://core.svn.wordpress.org/trunk@60983 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-18 15:21:42 +00:00
mcsf
e82c8bec49 Icons library: Add WP_Icons_Registry, core icon set and REST endpoint
Introduces a registry class to mediate access to a library of SVG icons. These
icons can be queried by directly interfacing with the singleton class
`WP_Icons_Registry`, or via the REST API using the following GET endpoints:

- /wp/v2/icons
- /wp/v2/icons/$name, e.g. /wp/v2/icons/core/audio

Modifies the Gutenberg-to-Core copy process to copy from `@wordpress/icons`:

- the icons (SVG files) to `wp-includes/icons/library/*.svg`
- the manifest file to `wp-includes/icons/manifest.php`

For 7.0, the registry remains closed to third-party icons, serving only core
icons per the manifest file.

Together, these APIs power the new Icon block.

Developed in https://github.com/WordPress/gutenberg/pull/72215
Developed in https://github.com/WordPress/gutenberg/pull/74943
Developed in https://github.com/WordPress/wordpress-develop/pull/10909

Props mcsf, wildworks, fabiankaegy, joen, jorgefilipecosta, ntsekouras.
Fixes #64651.


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


git-svn-id: http://core.svn.wordpress.org/trunk@60982 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-18 14:36:42 +00:00
youknowriad
0058ea3599 Build: Fix Gutenberg copy script for font library admin page.
The Gutenberg build copy script was missing `constants.php` from its list of
PHP infrastructure files, causing a fatal error on the Font Library admin page.
Additionally, the `--base-url` argument was missing a trailing slash inside the
`includes_url()` call, resulting in malformed asset URLs.

Also renames the `--fast` build flag to `--skip-types` to match the current
Gutenberg build script option.

Props youknowriad, ellatrix, dd32, westonruter, desrosj.
Fixes #64656.

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


git-svn-id: http://core.svn.wordpress.org/trunk@60981 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-18 13:19:42 +00:00
wildworks
23e1e9754b Docs: Remove default value from sanitize_term_field() PHPDoc.
The `$context` parameter in `sanitize_term_field()` is required and has no default value in the function signature. The PHPDoc previously stated `Default 'display'`, which was incorrect and could lead callers to assume the argument was optional.

Follow-up to [49789].

Props audrasjb, dilipbheda, johnbillion, mindctrl, mukesh27, Presskopp, rollybueno, SirLouen, vishalkakadiya, wildworks

Fixes #63257.
Built from https://develop.svn.wordpress.org/trunk@61672


git-svn-id: http://core.svn.wordpress.org/trunk@60980 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-18 07:09:42 +00:00
wildworks
ef239c8397 Block Support: Allow serialization skipping for ariaLabel
Allow skipping serialization for the `ariaLabel` block support. This enables applying the `aria-label` attribute to inner elements instead of the block wrapper.

Follow-up to [59925].

Props mukesh27, wildworks.
Fixes #64594.
Built from https://develop.svn.wordpress.org/trunk@61671


git-svn-id: http://core.svn.wordpress.org/trunk@60979 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-18 06:12:41 +00:00
Weston Ruter
4bce2354f6 Customize: Ensure WP_Customize_Setting::update() and subclass overrides return consistent types.
This addresses PHPStan type check issues.

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

Props westonruter, peterwilsoncc, justlevine.
See #64238, #61175.

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


git-svn-id: http://core.svn.wordpress.org/trunk@60978 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-18 04:39:41 +00:00
John Blackbourn
f153b6bea0 HTTP API: Remove 1024 bit certificates from bundled root certificates.
These legacy certificates have historically been retained in the certificate bundle so some ancient versions of OpenSSL continue to work with the bundle despite path discovery bugs in those versions.

The affected OpenSSL versions are all over a decade old now. To ensure the ongoing security of the HTTP API these 1024 bit certificates have been removed.

Props kkmuffme, JavierCasares, desrosj

Fixes #64063

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


git-svn-id: http://core.svn.wordpress.org/trunk@60977 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-18 00:21:45 +00:00
Sergey Biryukov
97ba779edc Coding Standards: Remove a few unnecessary PHPCS annotations.
Follow-up to [57337], [57548], [60295], [61120].

Props rodrigosprimo.
See #64627.
Built from https://develop.svn.wordpress.org/trunk@61668


git-svn-id: http://core.svn.wordpress.org/trunk@60976 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-17 23:01:43 +00:00
desrosj
ecdd8ad34e Build/Test Tools: Load grunt-contrib-imagemin again.
In [59797], the `matchdep` dependency was removed because it has been abandoned. The `grunt-contrib-imagemin` package was missed in the list of `gruntDependencies` to load that replaced the functionality for `matchdep`.

This adds `imagemin` to the list to restore the `precommit:image` Grunt task functionality.

Props jorbin.
Fixes #64328.
Built from https://develop.svn.wordpress.org/trunk@61664


git-svn-id: http://core.svn.wordpress.org/trunk@60975 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-17 18:16:43 +00:00
desrosj
9aa00d55b8 Build/Test Tools: Upgrade third-party GitHub Actions.
This updates the following GitHub Actions to their latest versions:

- `actions/cache` from `4.3.0` to `5.0.3`
- `actions/checkout` from `5.0.0` to `6.0.2`
- `actions/download-artifact` from `6.0.0` to `7.0.0`
- `actions/setup-node` from `6.0.0` to `6.2.0`
- `actions/upload-artifact` from `5.0.0` to `6.0.0`
- `codecov/codecov-action` from `5.5.1` to `5.5.2`
- `shivammathur/setup-php` from `2.35.5` to `2.36.0`

See #64227.
Built from https://develop.svn.wordpress.org/trunk@61663


git-svn-id: http://core.svn.wordpress.org/trunk@60974 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-17 17:48:41 +00:00
joedolson
c53de0f876 Login and Registration: Update CSS for multisite user actions.
Update the front-end CSS used for multisite user activation and signup. Modify both styles  to help prevent conflicts with existing theme styles and provide more consistent margins, paddings, widths, and font sizes.

Props joedolson, sabernhardt, rishabhwp, r1k0, johnjamesjacoby.
Fixes #63861.
Built from https://develop.svn.wordpress.org/trunk@61662


git-svn-id: http://core.svn.wordpress.org/trunk@60973 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-17 17:05:44 +00:00
wildworks
7ffc2c4bd0 Block Supports: Add autoRegister support for PHP-only block registration.
Introduces block support for PHP-only block registration, enabling developers to register blocks in PHP without requiring JavaScript registration code.

When a block declares `'supports' => array( 'autoRegister' => true )` along with a render callback, it is exposed to the client-side via a JavaScript global variable and registered automatically.

Example usage:

{{{
register_block_type(
	'my-plugin/example',
	array(
		'title'           => 'My Example Block',
		'attributes'      => array(
			'title' => array(
				'type'    => 'string',
				'default' => 'Hello World',
			),
			'count' => array(
				'type'    => 'integer',
				'default' => 5,
			),
		),
		'render_callback' => function ( $attributes ) {
			return sprintf(
				'<div %1$s>%2$s: %3$d items</div>',
				get_block_wrapper_attributes(),
				esc_html( $attributes['title'] ),
				$attributes['count']
			);
		},
		'supports'        => array(
			'autoRegister' => true,
		),
	)
);
}}}

Props mcsf, oandregal, ramonopoly, westonruter, wildworks.
Fixes #64639.
Built from https://develop.svn.wordpress.org/trunk@61661


git-svn-id: http://core.svn.wordpress.org/trunk@60972 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-17 13:21:42 +00:00
audrasjb
650e77076d Networks and Sites: Don't automatically mark website as spam when an account is marked as spam.
This changeset does the following:
- Explicitly add `403` to `wp_die()` calls for unauthorized actions
- Introduce the `network_user_spam_propagate_to_blogs` filter to provide flexibility for developers to control spam status propagation
- Use `is_super_admin()` checks for both "spam" and "notspam" actions to prevent unauthorized modification of network administrators
- Refine the "notspam" logic to ensure that blog status updates are correctly scoped to the current network
- Add related unit tests coverage

Props ignatiusjeroe, realloc, johnjamesjacoby, westonruter, mukesh27, pratiknawkar94, anukasha.
Fixes #61146.


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


git-svn-id: http://core.svn.wordpress.org/trunk@60971 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-17 09:25:40 +00:00
luisherranz
1144a460c8 Interactivity API: populate router's state.url in the server
Set the `core/router` state `url` property with the current page URL using `get_self_link()` when the first `data-wp-router-region` directive is processed, so that the stores subscribing to that property already have the correct value on page load.

Props westonruter.
Fixes #64649.
Built from https://develop.svn.wordpress.org/trunk@61659


git-svn-id: http://core.svn.wordpress.org/trunk@60970 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-17 08:46:42 +00:00
audrasjb
7c21be66d0 Menus: Prevent error in Menu location checkbox settings.
This changeset avoids throwing a PHP error when an invalid ID is assigned to a menu location, creates a text string to display when using an invalid menu ID, and assigns `id` and `aria-describedby` attributes to connect the `span` element with the related checkbox.

Props skylarkcob, Frozzare, sabernhardt, apermo, SirLouen, audrasjb, mukesh27, westonruter.
Fixes #37026.


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


git-svn-id: http://core.svn.wordpress.org/trunk@60969 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-17 06:47:40 +00:00
Weston Ruter
0998c036c8 Docs: Add missing @global descriptions and refine parameter documentations in wp-admin/includes classes.
Developed in https://github.com/WordPress/wordpress-develop/pull/10931

Follow-up to [61638].

Props noruzzaman, huzaifaalmesbah, westonruter.
See #64224.

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


git-svn-id: http://core.svn.wordpress.org/trunk@60968 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-17 06:05:41 +00:00
Weston Ruter
66183838bf Users: Ensure user data supplied to wp_insert_user() is normalized to an array.
This fixes an issue where PHPStan hangs when analyzing the containing `users.php` file.

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

Follow-up to [60650].

Props westonruter, justlevine, peterwilsoncc.
See #64238, #61175.

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


git-svn-id: http://core.svn.wordpress.org/trunk@60967 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-17 05:49:41 +00:00
isabel_brison
779de85a95 Editor: fix grid layout for style variations defining blockGap.
Ensures the grid block columns computation takes into account any blockGap value output by an active block style variation.

Props isabel_brison, mukesh27, westonruter, andrewserong.
Fixes #64624.

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


git-svn-id: http://core.svn.wordpress.org/trunk@60966 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-16 23:51:42 +00:00
Sergey Biryukov
0cbb3f5744 Twenty Twenty-One: Remove EscapeOutput annotations.
These are from the `WordPress-Extra` standard, which is not included in the `phpcs.xml.dist` configuration (the repository uses `WordPress-Core`).

Includes removing unnecessary `WPThemeReview` annotations carried over from upstream.

Follow-up to [49216].

Props rodrigosprimo.
See #64627.
Built from https://develop.svn.wordpress.org/trunk@61654


git-svn-id: http://core.svn.wordpress.org/trunk@60965 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-16 22:38:42 +00:00
luisherranz
61b3e1a837 Interactivity API: Use the private router store for the loading bar markup.
Update the `data-wp-interactive` directive in the loading bar from `core/router` to `core/router/private` so that internal navigation state properties (`hasStarted`, `hasFinished`) are not exposed as part of the public `core/router` store API.

Props westonruter.
Fixes #64647.
Built from https://develop.svn.wordpress.org/trunk@61653


git-svn-id: http://core.svn.wordpress.org/trunk@60964 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-16 21:03:40 +00:00
joedolson
9c13eca1c3 Admin: Update focus styles to match design reskin.
Apply design reskin changes to focus states on links, classic editor, media library, and other omitted contexts.

See also [61645].

Props joedolson, fabiankaegy.
Fixes #64644.
Built from https://develop.svn.wordpress.org/trunk@61652


git-svn-id: http://core.svn.wordpress.org/trunk@60963 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-16 17:24:42 +00:00
joedolson
b88c13e108 Users: Set username, email, and password fields to ltr.
Usernames, email, and password fields are currently `rtl` in `rtl` locales. However, these fields are primarily standardized to `ltr` character sets and for better experience and readability, should be presented left-to-right in all locales.

Fix username, email, and password fields throughout install and admin to be set to `ltr` text direction.

Props man4toman, sabernhardt, ierwira, agnieszkaszuba, SergeyBiryukov, joyously, hellofromTonya, shibleemehdi, oglekler, audrasjb, sajjad67, huzaifaalmesbah, joedolson.
Fixes #54915.
Built from https://develop.svn.wordpress.org/trunk@61651


git-svn-id: http://core.svn.wordpress.org/trunk@60962 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-16 17:02:47 +00:00
ntsekouras
821a799e07 Editor: Update build_query_vars_from_query_block to handle new taxQuery structure.
The Query Loop block's `taxQuery` attribute now supports an include/exclude structure for term filtering. This updates the server-side query building to handle both the old format (e.g. `{"category":[4]}`) and the new format (e.g. `{"include":{"category":[4]},"exclude":{"post_tag":[5]}}`).

Props ntsekouras, westonruter, peterwilsoncc, mcsf.
Fixes #64416.
Built from https://develop.svn.wordpress.org/trunk@61650


git-svn-id: http://core.svn.wordpress.org/trunk@60961 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-16 13:12:41 +00:00
Sergey Biryukov
27cecce3ff Docs: Add missing null to $post parameter types in various functions.
Props apermo.
Fixes #64645.
Built from https://develop.svn.wordpress.org/trunk@61649


git-svn-id: http://core.svn.wordpress.org/trunk@60960 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-15 23:18:43 +00:00
joedolson
5185b05367 Menus: Improve consistency in describing menu locations.
Menu locations are referred to in various places as 'menu location', 'theme location', or 'display location'.

In some cases these are clear, because both menus and locations are described in the same text. But in other cases they are ambiguous.

Clarify ambiguous uses of 'theme location' and 'menu location' in text.

Props pavelevap, sabernhardt, DrewAPicture, egill, bridgetwillard, obenland, joedolson.
Fixes #33743.
Built from https://develop.svn.wordpress.org/trunk@61648


git-svn-id: http://core.svn.wordpress.org/trunk@60959 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-15 19:23:44 +00:00
fabiankaegy
00a46b6006 Admin: Update notice styles to align with the design system.
Remove the full border and box-shadow from notices, keeping only the 4px left border. Add semantic background colors to each notice type: green for success, yellow for warnings, red for errors, and transparent for info. Update border colors to match the design system tokens.

Restyle the dismiss button with a larger 24px icon, flexbox centering, and 2px border-radius. Replace the red hover color with a subtle opacity change and apply a theme-color focus ring. Increase dismissible notice right padding to accommodate the larger button.

Update notice text with consistent typography and restyle notice links to use theme color custom properties with matching focus rings.

Props fabiankaegy, mukesh27, joedolson, phpbits, sabernhardt, Joen, fcoveram, dkotter, navi161, poojapadamad.
Fixes #64548.


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


git-svn-id: http://core.svn.wordpress.org/trunk@60958 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-15 08:24:37 +00:00
fabiankaegy
d4c1af9ecb Admin: Update card and container styles to align with the design system.
Apply 8px border-radius and a consistent `rgb(0, 0, 0, 0.1)` border to cards, postboxes, plugin cards, and theme cards. Standardize internal padding to 16px for postbox content and headers.

Update drag-and-drop interactions: replace dashed gray outlines on sortable drop zones with theme-color-tinted backgrounds, and restyle sortable placeholders with a solid theme-color border and subtle background fill.

Adjust dashboard widget spacing, welcome panel padding, and empty-container drop zone styles. Add overflow hidden to plugin and theme cards to clip content to the new rounded corners.

Props fabiankaegy, mukesh27, joedolson, navi161, phpbits, karmatosed, sabernhardt, poojapadamad, psorensen, generosus.
Fixes #64549.


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


git-svn-id: http://core.svn.wordpress.org/trunk@60957 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-15 08:18:36 +00:00
fabiankaegy
cc0fed3547 Admin: Update button and form field styles to align with the design system.
Introduce a design system tokens file (`_tokens.scss`) based on the WordPress Design System, providing standardized values for colors, spacing, typography, border-radius, and elevation.

Update buttons to use CSS custom properties for theme color support across all admin color schemes. Restyle primary buttons with filled theme-color backgrounds, secondary buttons with outlined borders, and add a tertiary button mixin. Adopt Gutenberg-style focus rings with outset box-shadows and transparent outlines for Windows High Contrast mode compatibility.

Increase default input and select height from 30px to 40px, apply 2px border-radius, and update border and placeholder colors to match the design system. Restyle checkboxes and radios with filled theme-color checked states and white indicator marks, using outset double-ring focus styles consistent with Gutenberg.

Apply compact 32px sizing to list table controls, page-title-action buttons, and toolbar elements. Convert tag input layouts and the major-publishing-actions bar to flexbox.

Props fabiankaegy, joedolson, audrasjb, joen, phpbits, magaliechetrit, karmatosed.
Fixes #64547.


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


git-svn-id: http://core.svn.wordpress.org/trunk@60956 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-15 08:10:37 +00:00
fabiankaegy
74089b9eb1 Admin: Change the default admin color scheme to Modern.
Rename the 'Modern' color scheme to 'Default' and the previous 'Default' scheme to 'Fresh'. Update all fallback references from 'fresh' to 'modern' across admin headers, the Customizer, the color scheme picker, the script loader, and user functions.

Add an upgrade routine in `upgrade_700()` to migrate existing users with the 'fresh' admin color to 'modern'.

Props fabiankaegy, audrasjb, mukesh27, westonruter, peterwilsoncc, jorbin, sabernhardt, joedolson, phpbits.
Fixes #64546.


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


git-svn-id: http://core.svn.wordpress.org/trunk@60955 1a063a9b-81f0-0310-95a4-ce76da25c4cd
2026-02-15 08:02:41 +00:00