Skip to content

PHP SDK: pin supported PHP version in CI and package metadata #3305

@countradooku

Description

@countradooku

Follow-up from the experimental PHP SDK review.

The PHP pre-merge action currently installs distro/default PHP meta-packages (php-cli, php-dev, php-mbstring, php-xml). Those defaults can drift across GitHub runner images, and the repo does not currently state which PHP version the SDK supports.

Proposal

  • Install explicit PHP 8.3 packages in .github/actions/php/pre-merge/action.yml:
    • php8.3-cli
    • php8.3-dev
    • php8.3-mbstring
    • php8.3-xml
  • Do not use external GitHub Actions for PHP setup; keep setup in-repo / apt-based like the current action.
  • Document the supported PHP version in foreign/php/README.md.
  • Tighten foreign/php/composer.json with:
"require": {
  "php": ">=8.3"
}

Rationale

Pinning the CI toolchain and Composer platform requirement makes the PHP SDK support policy explicit and avoids accidental changes when runner image defaults change.

Related: #3302
Initial PHP SDK work: #3235

Metadata

Metadata

Labels

good first issueGood for newcomersphpPull requests that update php code

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions