Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2766 commits
Select commit Hold shift + click to select a range
3ecb392
Code Quality: Annotate HTML API's `parse_next_tag()` as "impure" for …
westonruter Aug 14, 2026
21eb291
Tests: Use the modern PHPUnit stubbing and matcher shorthands.
SergeyBiryukov Aug 15, 2026
6c0f205
Help/About: Optimize the About page images.
t-hamano Aug 16, 2026
2b0b3b8
Toolbar: Revert focus and hover style changes.
joedolson Aug 16, 2026
e7739d5
Rewrite Rules: Only a leading `www.` is optional in `url_to_postid()`.
joedolson Aug 16, 2026
1fcc5c0
Build/Test Tools: Allow text compression in the local environment.
westonruter Aug 16, 2026
3150f65
Build/Test Tools: Remove all `npx` commands.
desrosj Aug 16, 2026
b2e9a22
Build/Test Tools: Distinguish between cancelled and timed out workflo…
desrosj Aug 16, 2026
582236f
Tests: Use `assertIsCallable()` for callable assertions.
SergeyBiryukov Aug 16, 2026
1ae6d69
Filesystem API: Reject UNC and device paths in `validate_file()`.
whyisjake Aug 16, 2026
62668de
Build/Test Tools: Make `SLACK_GHA_TIMEOUT_WEBHOOK` optional.
desrosj Aug 16, 2026
32c0322
Code Quality: Resolve return.empty PHPStan errors in baseline.
dmsnell Aug 16, 2026
888f0d9
Build/Test Tools: Stop committing changes to tracked files in pull re…
johnbillion Aug 16, 2026
728a605
Docs: Remove a blank line between `@param` and `@return` in core docb…
SergeyBiryukov Aug 17, 2026
a554ae1
Docs: Add missing descriptions and declare types for `Translation_Ent…
SergeyBiryukov Aug 18, 2026
8b91cc1
Build/Test Tools: Test 7.1 in upgrade testing workflows.
SergeyBiryukov Aug 20, 2026
13aa7eb
Code Quality: Delete empty return.empty.neon PHPStan baseline file.
westonruter Aug 20, 2026
a51a237
Help/About: Update heading string to use placeholder.
peterwilsoncc Aug 21, 2026
497de8c
ramonjd Aug 21, 2026
c1428bf
General: Make `get_tag_regex()` match tags non-greedily.
afercia Aug 21, 2026
9b24d2d
Customize: Fix visual and DOM order mismatch of the Widgets panel but…
afercia Aug 21, 2026
209e59b
Docs: Remove a blank line between `@param` and `@return` in test docb…
SergeyBiryukov Aug 21, 2026
e63f564
Plugins: Prevent object IDs from becoming integer array keys.
westonruter Aug 21, 2026
efa89a0
Customize: Take into account longer translations for the Widgets pane…
afercia Aug 21, 2026
caf7e3b
Customize: Fix visual and DOM order mismatch of the Menus panel buttons.
afercia Aug 21, 2026
6f1a40d
Customize: Remove leading space from CSS selector in customize-contro…
afercia Aug 21, 2026
9563942
Media: Restore the HEIC upload error on the media upload form.
westonruter Aug 21, 2026
b68222a
Docs: Remove an extra space in the docblock of `wp_ajax_nopriv_heartb…
audrasjb Aug 22, 2026
860c6bb
Editor: Extract content from inside lists to generate post excerpts.
audrasjb Aug 23, 2026
b3e2615
Build/Test Tools: Remove unused `wp_mail()` real-send script.
SergeyBiryukov Aug 23, 2026
e5f0811
Site Health: Remove "default" text domain from translation function c…
audrasjb Aug 23, 2026
5ba7fb8
Make the ability category optional
gziolo Aug 24, 2026
6af4b97
Code Quality: Resolve greater.invalid PHPStan errors in baseline.
Aug 24, 2026
3349238
Build/Test Tools: Remove unused PHPUnit profiler.
SergeyBiryukov Aug 24, 2026
60e0d0b
Catch `Throwable` instances in `WP_AI_Client_Prompt_Builder`
gziolo Aug 25, 2026
3f5fdc5
Coding Standards: Replace remaining `join()` aliases with `implode()`.
SergeyBiryukov Aug 25, 2026
e28172b
Connectors: Only validate submitted AI provider API keys
gziolo Aug 26, 2026
c862361
Editor: Append the post slug to single post template titles when post…
ntsekouras Aug 26, 2026
75683ef
Code Modernization: Replace `socket_set_timeout()` usage in Snoopy li…
SergeyBiryukov Aug 26, 2026
558d0ff
Code Quality: Resolve the `isset.variable` PHPStan errors.
westonruter Aug 26, 2026
f8d3053
Customize: Emit valid `aria-pressed` on device buttons.
westonruter Aug 26, 2026
6655f47
Code Quality: Remove empty `greater.invalid` PHPStan baseline file.
westonruter Aug 26, 2026
cc80c3a
Cache API: Treat an unusable cached value as a miss.
westonruter Aug 26, 2026
fbd7acd
View configuration API: Add a Reading settings field.
t-hamano Aug 27, 2026
3342ad0
Build/Test Tools: Treat request-scoped constants as dynamic in PHPStan.
westonruter Aug 27, 2026
1806675
Code Quality: Mark `have_posts()` and `have_comments()` as "impure" f…
westonruter Aug 27, 2026
a01819f
Code Quality: Narrow post and term query return types by `fields`.
swissspidy Aug 27, 2026
ecc6a94
Administration: Improve wp namespace in password-strength-meter.js
afercia Aug 27, 2026
00849cc
Code Quality: Update PHPStan baseline files after r63358.
swissspidy Aug 27, 2026
6e3ab80
I18N: Fix just-in-time translation loading for network-activated plug…
swissspidy Aug 27, 2026
99584cf
I18N: Simplify `WP_Textdomain_Registry::has()`.
swissspidy Aug 27, 2026
f578e49
Administration: Improve consistency of the Dashboard widgets when Jav…
afercia Aug 27, 2026
de9fe67
Build/Test Tools: Make Grunt `jshint:plugins` skip common dependency/…
afercia Aug 27, 2026
6acebe6
Code Modernization: Use `array_find()` and `array_find_key()` where a…
SergeyBiryukov Aug 27, 2026
c72064d
Code Quality: Support passing an int to `wp_parse_list()` et al.
westonruter Aug 27, 2026
c590bda
Code Quality: Narrow `$upgrader` type in upgrader skins.
westonruter Aug 27, 2026
759f0cb
Code Quality: Call private static methods via `self::`.
westonruter Aug 27, 2026
2043dd6
Media: Document PDF alpha channel return value.
aaronjorbin Aug 27, 2026
e85c9e4
Administration: Fix the CSS Coding Standards in color-picker.css.
afercia Aug 27, 2026
758610d
Administration: Fix the CSS Coding Standards in farbtastic.css.
afercia Aug 27, 2026
061804d
Administration: Fix the CSS Coding Standards in site-icon.css.
afercia Aug 27, 2026
14a9963
Administration: Fix the CSS Coding Standards in classic-themes.css.
afercia Aug 27, 2026
e18f2f7
Administration: Fix the CSS Coding Standards in wp-auth-check.css.
afercia Aug 27, 2026
a04367d
Administration: Fix the CSS Coding Standards in wp-embed-template.css.
afercia Aug 27, 2026
9537399
Administration: Fix the CSS Coding Standards in wp-empty-template-ale…
afercia Aug 27, 2026
ed77ba9
Administration: Fix the CSS Coding Standards in wp-pointer.css.
afercia Aug 27, 2026
5bf6381
Code Quality: Add the documented `return null;` to 14 functions.
westonruter Aug 27, 2026
1e097e3
Code Quality: Resolve the remaining `return.missing` PHPStan errors.
westonruter Aug 27, 2026
25a91cb
HTML API: Refactor `wp_get_admin_notice()`.
dmsnell Aug 28, 2026
ddcfed2
Code Quality: Resolve the `encapsedStringPart.nonString` error.
westonruter Aug 28, 2026
8c78705
Editor: Add the fit text CSS class to server-rendered blocks.
t-hamano Aug 28, 2026
6794f59
Users: Document `comment_shortcuts` and `infinite_scrolling` properti…
westonruter Aug 28, 2026
4a8a86b
Code Quality: Call `WP_Theme_JSON`'s private statics via `self::`.
westonruter Aug 28, 2026
032e6b6
Themes: Correct slug generation for block template files.
t-hamano Aug 28, 2026
7b282cd
Administration: Fix the CSS Coding Standards in buttons.css.
afercia Aug 28, 2026
9748195
Administration: Fix the CSS Coding Standards in l10n.css.
afercia Aug 28, 2026
d5f7783
Administration: Fix the CSS Coding Standards in sunrise colors.scss.
afercia Aug 28, 2026
0953851
Administration: Fix the CSS Coding Standards in _variables.scss.
afercia Aug 28, 2026
1bff82b
Administration: Fix the CSS Coding Standards in _mixins.scss.
afercia Aug 28, 2026
f3c74e1
Abilities API: Add missing `@since 7.1.0` changelog entries
gziolo Aug 28, 2026
06c6908
Build/Test Tools: Update the `lint:jsdoc` configuration to be compati…
afercia Aug 28, 2026
67c01d5
XML-RPC: Require the `$fields` argument to be an array.
westonruter Aug 28, 2026
33a4f87
Feeds: Add a filterable list of XML namespaces.
westonruter Aug 28, 2026
5f12958
Code Quality: Remove redundant closure parameter in `WP_User::has_cap…
SergeyBiryukov Aug 28, 2026
d30211e
Build/Test Tools: Revert r63310 and r63313.
desrosj Aug 29, 2026
02778fd
Upgrade/Install: Update sodium_compat to v1.24.1.
SergeyBiryukov Aug 29, 2026
e41cb81
Administration: Render a table row header in the Application Password…
afercia Aug 30, 2026
98c9e23
Administration: Fix the Privacy tables row action text color contrast.
afercia Aug 30, 2026
f819b4a
Embeds: Update click handler to follow deeply nested links.
peterwilsoncc Aug 30, 2026
b72512f
Tests: Use `assertIsNotArray()` for array type assertions.
SergeyBiryukov Aug 30, 2026
1e78133
Embeds: Fix event handler variable within `linkClickHandler()`.
peterwilsoncc Aug 30, 2026
36d425e
Docs: Document functions within `embed-template.js`.
peterwilsoncc Aug 30, 2026
6759bae
Docs: Align hash notation with the values callers pass.
swissspidy Aug 31, 2026
4b2da6e
Docs: Describe the shape of label, capability and setting data.
swissspidy Aug 31, 2026
3eb17eb
General: Improve JavaScript inline code documentation part 1.
afercia Aug 31, 2026
987d42d
General: Improve JavaScript inline code documentation part 2.
afercia Aug 31, 2026
1f6b8f2
General: Improve JavaScript inline code documentation part 3.
afercia Aug 31, 2026
4676feb
General: Improve JavaScript inline code documentation part 4.
afercia Aug 31, 2026
ea95d00
Build/Test Tools: Publish PHPUnit timing metrics to CodeVitals.
lancewillett Aug 31, 2026
bbd9fc3
Code Modernization: Use the null coalescing operator in `WP_Customize…
SergeyBiryukov Aug 31, 2026
cdeeb95
Build/Test Tools: Flag slow PHPUnit tests in GitHub Actions.
lancewillett Aug 31, 2026
e5a9035
Build/Test Tools: Expand path filtering for the old branch testing wo…
lancewillett Aug 31, 2026
61ccf18
Build/Test Tools: Correct local environment failure handling.
lancewillett Aug 31, 2026
c8d371f
Build/Test Tools: Retry local environment registry commands.
lancewillett Aug 31, 2026
049287a
HTML API: Escape syntax characters in RCDATA.
dmsnell Aug 31, 2026
7cf6e95
Code Quality: Narrow return types for field-plucking functions.
swissspidy Sep 1, 2026
f3cc113
Build/Test Tools: Teach PHPStan to read hash notation.
swissspidy Sep 1, 2026
b915feb
Code Quality: Fix PHPStan-identified static analysis regressions from…
westonruter Sep 1, 2026
e7c56c6
Code Modernization: Use `is_iterable()` instead of manual array or `T…
SergeyBiryukov Sep 1, 2026
ac7748c
View Config: set summary fields.
oandregal Sep 2, 2026
c3cedd2
Build/Test Tools: Remove implicit dependencies on leaked state.
lancewillett Sep 2, 2026
6dbfdc9
View config: add descriptions for table layout styles.
oandregal Sep 2, 2026
96b7245
Build/Test Tools: Stop spawning downgrade test jobs.
lancewillett Sep 2, 2026
907af2b
Build/Test Tools: Allow PHPUnit workflows to test other repositories.
lancewillett Sep 2, 2026
5186490
Code Quality: Correct three inverted `$display` return docs.
westonruter Sep 2, 2026
308c95d
Code Quality: Restore `void` on the dual-mode template tag.
westonruter Sep 2, 2026
08f1589
Posts, Post Types: Rebuild meta capabilities on unregistration.
westonruter Sep 2, 2026
a036d30
Code Modernization: Use the null coalescing assignment operator in si…
SergeyBiryukov Sep 2, 2026
1640125
Docs: Correct the `WP_Block_Parser_Frame::leading_html_start` type.
westonruter Sep 3, 2026
4ee1582
Build/Test Tools: Allow the CSS precommit task to be skipped.
lancewillett Sep 3, 2026
a0dbcfb
Build/Test Tools: Remove redundant Playwright setup from E2E CI.
lancewillett Sep 3, 2026
88a113c
Build/Test Tools: Smoke test upgraded sites over HTTP.
lancewillett Sep 3, 2026
4594876
Login and Registration: Align tooltip icon with control.
joedolson Sep 3, 2026
86dc344
Build/Test Tools: Add `.nvmrc` files to default themes.
desrosj Sep 3, 2026
f6d9378
Code Quality: Tighten the remaining documented types for hooks.
westonruter Sep 3, 2026
ef47b25
Administration: Fix plugin update row in narrow viewports.
joedolson Sep 3, 2026
e156f65
Code Modernization: Use `array_all()` in `WP_Widget_Media_Gallery::ha…
SergeyBiryukov Sep 3, 2026
77d6fd0
Customize: Document and modernize the JS base API.
westonruter Sep 3, 2026
9aa189e
Customize: Correct the JSDoc for the controls API.
westonruter Sep 3, 2026
2600e5c
Customize: Correct the widgets and menus JSDoc.
westonruter Sep 3, 2026
52bb0e0
Customize: Correct the JSDoc in the preview frame.
westonruter Sep 3, 2026
f19cdb1
Customize: Document the header image models and views.
westonruter Sep 4, 2026
db9e1cd
REST API: Prevent fatal error when a null template reaches prepare_it…
ramonjd Sep 4, 2026
c6d26fe
Build/Test Tools: Isolate the PHPStan baseline generation cache.
westonruter Sep 4, 2026
b7d3419
General: Recognize any numeric zero in `size_format()`.
westonruter Sep 4, 2026
e0be8ea
Build/Test Tools: Run the PHPStan node visitors on every parse.
westonruter Sep 4, 2026
0c037b0
HTML API: Simplify interactive `class_list()` examples.
adamziel Sep 4, 2026
0a21b0a
Build/Test Tools: Integrate lint:jsdoc into the Core development work…
afercia Sep 4, 2026
743ddac
Build/Test Tools: Revert r63445.
lancewillett Sep 4, 2026
fd7f7d7
PHPUnit tests: Simplify font-face test fixtures.
lancewillett Sep 4, 2026
a8ed554
Build/Test Tools: Make the WordPress installation E2E test repeatable.
lancewillett Sep 4, 2026
ca221cf
Editor: Skip state styles for blocks without a `style` attribute.
westonruter Sep 4, 2026
bc64579
Build/Test Tools: Support branch pinning when testing Gutenberg build…
desrosj Sep 4, 2026
86c241d
Build/Test Tools: Run PHPUnit tests against PHP 8.6.
desrosj Sep 4, 2026
474555a
Administration: Use `wp_print_inline_script_tag()` in more places.
westonruter Sep 4, 2026
3e1a994
Administration: Fix doubled border on mobile for paused plugins.
joedolson Sep 4, 2026
2fbc03a
Code Quality: Remove redundant `parent_post_type` property from templ…
SergeyBiryukov Sep 4, 2026
fc5042d
Build/Test Tools: Regenerate PHPStan baselines for `property.onlyWrit…
westonruter Sep 4, 2026
85be7fc
Code Quality: Refine the dual-mode template tag annotations.
westonruter Sep 5, 2026
823a803
Taxonomy: Fix `wp_get_object_terms()` when requesting a count.
westonruter Sep 5, 2026
d84095d
Role/Capability: Ensure `wp_roles()` returns `WP_Roles`.
westonruter Sep 5, 2026
235ab84
Docs: Align `@param` tag columns in general core API docblocks.
t-hamano Sep 5, 2026
c97b996
Docs: Align `@param` tag columns in administration docblocks.
t-hamano Sep 5, 2026
588e67f
Docs: Align `@param` tag columns in REST API docblocks.
t-hamano Sep 5, 2026
381e7fa
Docs: Align `@param` tag columns in upgrade, plugin, and theme docblo…
t-hamano Sep 5, 2026
8be8550
Docs: Align `@param` tag columns in block editor docblocks.
t-hamano Sep 5, 2026
1210ee3
Docs: Align `@param` tag columns in users and multisite docblocks.
t-hamano Sep 5, 2026
4830f60
Docs: Align `@param` tag columns in post, comment, taxonomy, and medi…
t-hamano Sep 5, 2026
4447fcf
Bundled Themes: Document the parameters of five template functions.
t-hamano Sep 5, 2026
bed2f11
Administration: Fix the CSS Coding Standards in _tokens.scss.
afercia Sep 5, 2026
f5b31c7
Administration: Remove line-height values in pixels from _tokens.scss.
afercia Sep 5, 2026
09b9ce0
Code Modernization: Use the null coalescing assignment operator for d…
SergeyBiryukov Sep 5, 2026
9de78c3
Administration: Fix the CSS Coding Standards in jquery-ui-dialog.css.
afercia Sep 5, 2026
c6deaec
Administration: Fix the CSS Coding Standards in revisions.css.
afercia Sep 5, 2026
a16ec8c
Administration: Fix the CSS Coding Standards in admin-bar.css.
afercia Sep 5, 2026
65a0ebe
Administration: Remove unnecessary empty line in buttons.css.
afercia Sep 5, 2026
3b2dd63
Administration: Fix the CSS Coding Standards in admin-menu.css.
afercia Sep 5, 2026
696f277
Themes: Set the `template` property when a theme is its own parent.
westonruter Sep 6, 2026
49f2a8a
Code Modernization: Use the null coalescing assignment operator for d…
SergeyBiryukov Sep 6, 2026
f799969
Build/Test Tools: Update PHPStan to 2.2.13.
westonruter Sep 7, 2026
906d99c
Code Quality: Improve typing for `wp_array_slice_assoc()`.
westonruter Sep 7, 2026
306b837
Editor: Reuse a common block schema during theme.json sanitization.
sirreal Sep 7, 2026
efeefeb
HTML API: Allow raw text which cannot close its own element.
sirreal Sep 7, 2026
9af601a
General: Add missing descriptions to several JS docblocks in the enqu…
afercia Sep 7, 2026
4ac0e65
HTML API: Clarify parse_next_attribute() return value.
sirreal Sep 7, 2026
b3a711f
General: Add missing descriptions to several JS docblocks in the medi…
afercia Sep 7, 2026
c8e0e6e
Build/Test Tools: Share smoke checks between install and upgrade jobs.
lancewillett Sep 7, 2026
793faca
Build/Test Tools: Reference the smoke check action from trunk.
lancewillett Sep 7, 2026
04a7692
Build/Test Tools: Use exclusion-first workflow path filters.
lancewillett Sep 7, 2026
1771669
External Libraries: Update getID3 to version 1.9.26.
SergeyBiryukov Sep 7, 2026
4035d38
General: Minor JSDoc fixes after r63516.
afercia Sep 7, 2026
41a4f4f
Code Quality: Improve typing for `wp_parse_args()`.
westonruter Sep 7, 2026
c45ffab
Themes: restore layout styles for block style variations with a block…
ramonjd Sep 8, 2026
94b9c23
Code Quality: Combine registered block styles with `array_merge()`.
westonruter Sep 8, 2026
d0a82cc
General: Add missing descriptions to the Customize JavaScript docs.
afercia Sep 8, 2026
3e88213
REST API: expose privacy policy page in settings endpoint.
oandregal Sep 8, 2026
c6c8072
Docs: Align `@param` tag columns in block-supports and theme tests.
t-hamano Sep 8, 2026
28b3779
Docs: Align `@param` tag columns in Style Engine docblocks.
t-hamano Sep 8, 2026
57fe7db
Docs: Align `@param` and `@return` tags in block editor-related code.
t-hamano Sep 8, 2026
7973b13
View config: Add the `showPlaceholderIfEmpty` option to the panel for…
ntsekouras Sep 8, 2026
13b6dc3
Administration: Correct Font Library and Connectors message when buil…
afercia Sep 8, 2026
25bdbd1
Editor: Fix color of the TinyMCE button icons in the Classic block.
afercia Sep 8, 2026
82dbce5
General: Bump the pinned hash for Gutenberg to `5a04179`.
desrosj Sep 8, 2026
f606d66
General: Bump the pinned hash for Gutenberg to `ae8b34d`.
desrosj Sep 8, 2026
64f6923
General: Bump the pinned hash for Gutenberg to `658c8cb`.
desrosj Sep 8, 2026
7ff053b
Administration: Ensure the Activity Dashboard widget links are distin…
afercia Sep 8, 2026
0b05b54
Build/Test Tools: Await post title assertions in E2E tests.
lancewillett Sep 8, 2026
515a891
General: Bump the pinned hash for Gutenberg to `5a4cc50`.
desrosj Sep 8, 2026
62439bb
Build/Test Tools: Upgrade Node.js to 24.x.
desrosj Sep 8, 2026
f03710d
Code Quality: Narrow the `esc_sql()` parameter and return types.
westonruter Sep 8, 2026
40a1782
Code Modernization: Use the null coalescing assignment operator for r…
SergeyBiryukov Sep 8, 2026
ea146ac
Code Quality: Remove redundant boolean sub-expressions.
westonruter Sep 8, 2026
3e181d3
Administration: Prevent errors in wp-tooltip.js on browsers without p…
joedolson Sep 8, 2026
46ab13c
Multisite: Restore missing user reassignment dropdown when deleting u…
joedolson Sep 8, 2026
2419dda
Administration: Wrap more one-liner inline scripts.
westonruter Sep 8, 2026
e075d86
Tests: Remove unrelated option setup in REST settings test.
lancewillett Sep 9, 2026
447d765
Administration: Prevent race condition in wp-tooltip.js delay timer.
joedolson Sep 9, 2026
08b0ba9
View config: remove stale fields from wp_template.
oandregal Sep 9, 2026
ad4aa65
Toolbar: Remove the light background behind the Admin Bar site icon.
tyxla Sep 9, 2026
3290a8d
Toolbar: Prevent the site title from showing behind the site icon on …
tyxla Sep 9, 2026
eddb853
General: Add missing JS docblocks.
afercia Sep 9, 2026
83ba0ce
Build/Test Tools: Increase PHPUnit workflow `timeout-minutes`.
desrosj Sep 9, 2026
0f36f52
Build/Test Tools: Increase Gutenberg artifact retention.
desrosj Sep 9, 2026
8edab75
Administration: Remove usage of the #787c82 gray color.
afercia Sep 9, 2026
dafbbff
Build/Test Tools: Block ungrouped external HTTP requests.
lancewillett Sep 9, 2026
4c988a3
Tests: Remove unused sitemap taxonomy test variables.
lancewillett Sep 9, 2026
6e3e696
Tests: Simplify mocks in WP_Upgrader tests.
lancewillett Sep 9, 2026
d6b0c20
Tests: Reduce repeated core block style registration.
lancewillett Sep 9, 2026
37a5d59
Media: Prepare the attachment finalize response from the current post…
adamsilverstein Sep 9, 2026
126a9ea
Administration: Prevent fatal error in sprintf replacement in tooltips.
joedolson Sep 9, 2026
8f6799a
Code Modernization: Use `array_key_first()` to read the first key of …
SergeyBiryukov Sep 9, 2026
0370c3b
Docs: Update outdated upstream Chrome documentation link in `WP_Site_…
audrasjb Sep 9, 2026
27cb801
Docs: Replace `@see` with `@link` in `WP_Site_Icon` various docblocks.
audrasjb Sep 9, 2026
285d4d1
Sitemaps: Don't 404 valid sitemaps on sites with no posts.
westonruter Sep 9, 2026
90dcece
General: Enable the JSDoc rule require-param-name.
afercia Sep 10, 2026
50d7555
View Config: add form info for root/site entity.
oandregal Sep 10, 2026
8fd5864
Script Loader: Avoid a false entry in inline script data.
sirreal Sep 10, 2026
3b66b01
I18N: Validate cached translation file lists.
sirreal Sep 10, 2026
ecb1850
Privacy: Correct closing tag in results row on personal data tables.
SergeyBiryukov Sep 10, 2026
032936f
Application Passwords: Send email notification when an application pa…
johnbillion Sep 10, 2026
9a2e38e
Build/Test Tools: Log relevant URLs in GitHub Actions.
lancewillett Sep 10, 2026
43e329d
Build/Test Tools: Trim the routine PHPUnit database matrix.
lancewillett Sep 10, 2026
0ee9f30
Build/Test Tools: Run the full PHPUnit matrix by label.
lancewillett Sep 10, 2026
2c6ec19
Build/Test Tools: Delete attachment files during test cleanup.
lancewillett Sep 10, 2026
f8fb8d0
Build/Test Tools: Discard stale roles before test installation.
lancewillett Sep 10, 2026
a1c3fe1
Tests: Reduce repeated token map test setup.
lancewillett Sep 10, 2026
fe4400b
Build/Test Tools: Reset comment globals between tests.
lancewillett Sep 10, 2026
a508c69
Tests: Restore core Ajax hooks before each test.
lancewillett Sep 10, 2026
ac38246
Tests: Improve isolation of rewrite tests.
lancewillett Sep 10, 2026
f07d975
Tests: Restore themes after block tests.
lancewillett Sep 10, 2026
2a616e3
Docs: Use the `bool` and `int` short type forms in PHPDoc.
westonruter Sep 10, 2026
5aac49a
Build/Test Tools: Add `libxml` to the suggested extensions in `compos…
westonruter Sep 10, 2026
501d920
General: Enable the JSDoc rule require-param-description.
afercia Sep 11, 2026
5b1696e
Docs: Add missing blank line after `@since` in block parser
t-hamano Sep 11, 2026
27e5189
General: Fix indentation and alignments in JavaScript inline document…
afercia Sep 11, 2026
73ea9ac
Code Modernization: Use null coalescing operator in `WP_Block_Parser`
t-hamano Sep 11, 2026
c176fdb
Block Editor: Output `flex-direction: row` when a viewport override s…
jorgefilipecosta Sep 11, 2026
01248ee
Meta: Support site meta subtype in get_object_subtype().
spacedmonkey Sep 11, 2026
1dfb754
Tests: Use `assertSame()` in `WP_Customize_Nav_Menu_Item_Setting` tests.
lancewillett Sep 11, 2026
98a8a2f
Docs: Remove Screencast from the list of supported oEmbed providers.
SergeyBiryukov Sep 11, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"name": "WordPress Core Development",
"dockerComposeFile": "docker-compose.yml",
"service": "app",
"workspaceFolder": "/workspaces/${localWorkspaceFolderBasename}",
"workspaceFolder": "/workspace",

// Features to add to the dev container. More info: https://containers.dev/features.
"features": {
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ services:
WORDPRESS_DB_PASSWORD: examplepass
WORDPRESS_DB_NAME: exampledb
volumes:
- ../..:/workspaces:cached
- ..:/workspace:cached

db:
image: mariadb
Expand Down
2 changes: 1 addition & 1 deletion .devcontainer/setup.sh
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ else
fi

# Install dependencies
cd /workspaces/wordpress-develop
cd /workspace
npm install && npm run build:dev

# Install WordPress and activate the plugin/theme.
Expand Down
13 changes: 11 additions & 2 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,10 @@ LOCAL_PORT=8889
# Where to run WordPress from. Valid options are 'src' and 'build'.
LOCAL_DIR=src

# Whether or not to enable text compression (gzip) in the web server.
# Valid options are 'on' and 'off'.
LOCAL_NGINX_COMPRESSION=off

# The PHP version to use. Valid options are 'latest', and '{version}-fpm'.
LOCAL_PHP=latest

Expand Down Expand Up @@ -46,12 +50,12 @@ LOCAL_DB_TYPE=mysql
##
# The database version to use.
#
# Defaults to 8.0 with the assumption that LOCAL_DB_TYPE is set to `mysql` above.
# Defaults to 9.7 with the assumption that LOCAL_DB_TYPE is set to `mysql` above.
#
# When using `mysql`, see https://hub.docker.com/_/mysql for valid versions.
# When using `mariadb`, see https://hub.docker.com/_/mariadb for valid versions.
##
LOCAL_DB_VERSION=8.4
LOCAL_DB_VERSION=9.7

# Whether or not to enable multisite.
LOCAL_MULTISITE=false
Expand All @@ -67,3 +71,8 @@ LOCAL_WP_TESTS_DOMAIN=example.org

# The URL to use when running e2e tests.
WP_BASE_URL=http://localhost:${LOCAL_PORT}

##
# This silences the tips output by the dotenv package.
##
DOTENV_CONFIG_QUIET=true
15 changes: 0 additions & 15 deletions .eslintignore

This file was deleted.

105 changes: 78 additions & 27 deletions .eslintrc-jsdoc.js
Original file line number Diff line number Diff line change
@@ -1,29 +1,80 @@
module.exports = {
rules: {
'require-jsdoc': 'off',
'valid-jsdoc': [ 'error', {
prefer: {
arg: 'param',
argument: 'param',
extends: 'augments',
returns: 'return',
/**
* ESLint v10 flat config file for JSDoc linting.
* This config is based on the original valid-jsdoc rules.
*/

const jsdocPlugin = require( 'eslint-plugin-jsdoc' );

module.exports = [
{
plugins: {
jsdoc: jsdocPlugin,
},
settings: {
jsdoc: {
tagNamePreference: {
'arg': 'param',
'argument': 'param',
'extends': 'augments',
'returns': 'return',
},
preferredTypes: {
'array': 'Array',
'bool': 'boolean',
'Boolean': 'boolean',
'float': 'number',
'Float': 'number',
'function': 'Function',
'int': 'number',
'integer': 'number',
'Integer': 'number',
'Number': 'number',
'object': 'Object',
'String': 'string',
'Void': 'void',
},
},
preferType: {
array: 'Array',
bool: 'boolean',
Boolean: 'boolean',
float: 'number',
Float: 'number',
int: 'number',
integer: 'number',
Integer: 'number',
Number: 'number',
object: 'Object',
String: 'string',
Void: 'void',
},
requireParamDescription: false,
requireReturn: false,
} ],
},
rules: {
'jsdoc/check-alignment': 'error',
'jsdoc/check-indentation': [ 'error', {
excludeTags: [
'deprecated',
'example',
'param',
'property',
'return',
'since',
'todo',
],
} ],
'jsdoc/check-line-alignment': [ 'error', 'always', {
tags: [ 'param', 'property' ],
} ],
'jsdoc/check-param-names': 'error',
'jsdoc/check-syntax': 'error',
'jsdoc/check-tag-names': [ 'error', {
definedTags: [
'memberOf',
'output',
'ticket',
'link',
],
} ],
'jsdoc/check-types': 'error',
'jsdoc/require-description': 'error',
'jsdoc/require-hyphen-before-param-description': [ 'error', 'never' ],
'jsdoc/require-jsdoc': 'error',
'jsdoc/require-param': [ 'error', {
enableFixer: false,
} ],
'jsdoc/require-param-description': 'error',
'jsdoc/require-param-name': 'error',
'jsdoc/require-param-type': 'error',
'jsdoc/require-returns': 'error',
'jsdoc/require-returns-check': 'error',
'jsdoc/require-returns-description': 'error',
'jsdoc/require-returns-type': 'error',
},
},
};
];
24 changes: 24 additions & 0 deletions .git-blame-ignore-revs
Original file line number Diff line number Diff line change
Expand Up @@ -48,3 +48,27 @@ f4f1b4821342fd1d58708356b3ec39d6fefe31ac # [33411]

# Coding Standards
8f95800d52c1736d651ae6e259f90ad4a0db2c3f # [42343]

# 6.8 Coding Standards
a4d6fb7c96cb46859e6d48a5d4c06fdeea7d039b # [59292]
9dd87b8f91300917447c271968d3c36289b440e8 # [59558]
# 903b1fe840d4232bbc249d32d8981824e5fa71de # [59953] includes a punctuation change
a96fa164b00ed51c7c0481574834cff92ab9b1f0 # [60043]
7607cbc5d1e770451f1a2b61d851820dfa23bb43 # [60044]
7047a91c0ecdbf43d4a7a0a591464cd1ed2f2c4b # [60046]
1aa6da693ad739b78752a55d154cd48cb757b90b # [60047]
d44e1c2ce2dc638e89ed6a1d02b1cfadb8a15fe7 # [60048]
a18719e7ea49ab7ac0091e076840cb7efdf51cc5 # [60049]

# 6.9 Coding Standards
d0d89b62485e724e3d06f01981dd1940b2f36fce # [60074]
c53010159b60735ffa6ba5fa8a416ff0e86a159c # [60109]
cbb6519119276ceba4279eaee73ab66294ebd820 # [60402]
3d736c763e0b1384c65abfa3bcf6d3bc45869516 # [60664]
b96f25f5c31bfd1580c21084c368098792b4c741 # [60780]
ff6c5fadfa6272685d910b474917ecb6adc17f10 # [60808]
08b2f9cfe9064873a501c3543e2c995405431dcc # [60816]
e683403cc1856113e3cb010b1579dcd01cdef5fc # [61036]
8d24041c08a58b2f79504699fb3f63d01737b876 # [61075]
87cbbb1dfcf19fcfc128fc66603462a649d01502 # [61087]
db1b4811e5ab8df343b03032d7607abe01a9e8e2 # [61138]
20 changes: 20 additions & 0 deletions .github/actions/smoke-check/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: 'Smoke check a WordPress installation'
description: 'Serves an installed single site with PHP built-in web server and checks that its front end, REST API, and admin respond.'

inputs:
admin-user:
description: 'The username of an administrator account on the site.'
required: true
admin-password:
description: 'The password of the administrator account.'
required: true

runs:
using: 'composite'
steps:
- name: Serve the site and check it
shell: bash
run: bash "${GITHUB_ACTION_PATH}/smoke-check.sh"
env:
WP_ADMIN_USER: ${{ inputs.admin-user }}
WP_ADMIN_PASSWORD: ${{ inputs.admin-password }}
117 changes: 117 additions & 0 deletions .github/actions/smoke-check/smoke-check.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,117 @@
#!/bin/bash
#
# Smoke checks an installed WordPress single site over HTTP.
#
# Runs from the root of the installation, with WP-CLI available. Multisite is not supported because
# a network's domain lives in wp-config.php and the database, not just an option.

set -euo pipefail

: "${RUNNER_TEMP:?}" "${WP_ADMIN_USER:?}" "${WP_ADMIN_PASSWORD:?}"

site_port=8889
site_url="http://127.0.0.1:${site_port}"
server_log="${RUNNER_TEMP}/server.log"
jar="${RUNNER_TEMP}/cookies.txt"
: > "${jar}"
response="${RUNNER_TEMP}/response.txt"
code="${RUNNER_TEMP}/http-code.txt"
http_code=''

version="$(wp core version)"

# Nothing undoes these, so the site is only good for this check afterwards.
wp option update home "${site_url}"
wp option update siteurl "${site_url}"
# A fresh install shows posts here already, but the front page check below needs it.
wp option update show_on_front posts
# Both make requests no check asked for, and the update checks call api.wordpress.org.
wp config set DISABLE_WP_CRON true --raw
wp config set WP_HTTP_BLOCK_EXTERNAL true --raw

# opcache counts php -S as a web SAPI, so the runner's JIT runs here and segfaults.
php -d opcache.jit=disable -S "127.0.0.1:${site_port}" -t . > "${server_log}" 2>&1 &
server_pid=$!

stop_server() {
local status=$?
kill "${server_pid}" 2> /dev/null || true
wait "${server_pid}" 2> /dev/null || true
[ "${status}" -eq 0 ] || cat "${server_log}" || true
exit "${status}"
}
trap stop_server EXIT

# No connection prints 000 and exits 7, which set -e would take as fatal.
deadline=$(( SECONDS + 30 ))
while :; do
ready_code="$(curl --silent --max-time 5 --output /dev/null --write-out '%{http_code}' "${site_url}/" || true)"
[ "${ready_code}" = '000' ] || break
[ "${SECONDS}" -lt "${deadline}" ] || { echo '::error::the server never answered'; exit 1; }
sleep 1
done

fail() {
echo "::error::${1}"
tail -n 20 "${response}"
exit 1
}

# An HTTP error returns to the caller. No reply at all is fatal.
fetch() {
local path="${1}" status=0
shift
: > "${response}"
curl --silent --show-error --max-time 30 --output "${response}" \
--write-out '%{http_code}' --cookie "${jar}" --cookie-jar "${jar}" \
"$@" "${site_url}${path}" > "${code}" || status=$?
http_code="$(cat "${code}")"
[ "${status}" -eq 0 ] || [ "${status}" -eq 22 ] \
|| fail "${path} got no reply and curl exited ${status}"
return "${status}"
}

check() {
local path="${1}" marker status=0
shift
fetch "${path}" --fail-with-body || status=$?
[ "${status}" -eq 0 ] || fail "${path} returned HTTP ${http_code}"
for marker in "$@"; do
grep -qF -e "${marker}" "${response}" || fail "${path} did not contain: ${marker}"
done
echo "ok ${path}"
}

# A fatal mid-page still returns 200, so every check also asks for the closing tag.
check '/' "content=\"WordPress ${version}\"" 'Hello world!' '</html>'

fetch '/?rest_route=/' --fail-with-body || fail "/?rest_route=/ returned HTTP ${http_code}"
jq -e --arg url "${site_url}" '.url == $url and ( .namespaces | index( "wp/v2" ) )' "${response}" > /dev/null \
|| fail 'the REST index was not the expected JSON'
echo 'ok /?rest_route=/'

# It prints this for an empty database too, which the checks above rule out.
check '/wp-admin/upgrade.php' 'No Update Required' '</html>'

fetch '/?p=99999999' || true
[ "${http_code}" = '404' ] || fail "a missing post returned ${http_code}, expected 404"
grep -qF '</html>' "${response}" || fail 'the 404 page was cut short'
echo 'ok 404 handling'

login_status=0
fetch '/wp-login.php' --fail-with-body \
--data-urlencode "log=${WP_ADMIN_USER}" --data-urlencode "pwd=${WP_ADMIN_PASSWORD}" || login_status=$?
[ "${login_status}" -eq 0 ] || fail "logging in returned HTTP ${http_code}"
grep -qF 'wordpress_logged_in_' "${jar}" || fail 'logging in did not set an authentication cookie'
echo 'ok login'

# The admin bar renders only for a logged-in user.
check '/wp-admin/' 'id="wpadminbar"' '</html>'

# Catches a fatal during shutdown. An empty log would let the grep pass silently.
[ -s "${server_log}" ] || { echo '::error::the server wrote no log'; exit 1; }
if grep -qE 'Fatal error|Uncaught|Segmentation fault' "${server_log}"; then
echo '::error::the server logged a fatal error'
exit 1
fi
echo 'ok server log'
31 changes: 0 additions & 31 deletions .github/dependabot.yml

This file was deleted.

Loading
Loading