Make WordPress Core

Opened 7 weeks ago

Closed 2 weeks ago

#65571 closed defect (bug) (fixed)

Update required and suggested extensions in composer.json to align with WP requirements

Reported by: westonruter Owned by: westonruter
Priority: normal Milestone: 7.1
Component: Build/Test Tools Version:
Severity: normal Keywords: has-patch
Cc: Focuses:

Description

In looking at the Hosting handbook's required extensions, it includes both json and mysqli. However, in composer.json, the required extensions are hash and json:

		"ext-hash": "*",
		"ext-json": "*",

Furthermore, there are 12 highly recommended extensions whereas composer.json just suggests two:

		"ext-dom": "*",
		"ext-mysqli": "*"

(Note that hash is included as required in composer.json but it is only suggested on the hosting handbook. The handbook seems it should be updated here.)

For the sake of core development, we should update the required and suggested extensions so that environments can be better configured to work as expected (and IDEs can complain less).

Change History (4)

#1 @westonruter
7 weeks ago

  • Owner set to westonruter
  • Status assignedaccepted

This ticket was mentioned in PR #12384 on WordPress/wordpress-develop by @westonruter.


7 weeks ago
#2

  • Keywords has-patch added

Trac ticket: https://core.trac.wordpress.org/ticket/65571

See https://make.wordpress.org/hosting/handbook/server-environment/#required-extensions

Notes:

  • All PHP extensions, whether highly recommended or merely suggested by the handbook, are all included in suggest.
  • The mysqli extension is moved from suggest to require.
  • The hash extension is only suggested by the Handbook page but it is actually required.
  • The image extension mentioned by the Handbook page is actually the gd extension.

## Use of AI Tools

AI assistance: Yes
Tool(s): Claude Code
Model(s): Claude Opus 4.8
Used for: Code review

This ticket was mentioned in Slack in #hosting by westonruter. View the logs.


7 weeks ago

#4 @westonruter
2 weeks ago

  • Resolutionfixed
  • Status acceptedclosed

In 63004:

Build/Test Tools: Expand suggested extensions in composer.json.

The suggest section had accumulated only four extensions, added ad hoc as individual changes happened to need them. It now lists every extension that the Hosting handbook's server environment page identifies as required, highly recommended, or suggested. This lets development environments be provisioned to match what core actually expects, and gives IDEs an accurate picture of which functions are available.

The require section is deliberately left unchanged: the mysqli extension stays a suggestion rather than a requirement since a db.php drop-in can supply the database layer without it.

Developed in https://github.com/WordPress/wordpress-develop/pull/12384.
Follow-up to r56687, r62529, r62637.

Fixes #65571.

Note: See TracTickets for help on using tickets.