Skip to content

Issue/208 Require PHP 8.1 and test on PHP 8.1 to 8.3 - #209

Merged
armanist merged 2 commits into
quantum-php:masterfrom
armanist:issue/208-php-8-1
Oct 23, 2026
Merged

armanist merged 2 commits into
quantum-php:masterfrom
armanist:issue/208-php-8-1

Conversation

@armanist

@armanist armanist commented Oct 23, 2026 •

Copy link
Copy Markdown
Contributor

Closes #208. Follows quantum-php/framework#595.

What changed

  • composer.json requires php ^8.1.
  • The CI matrix is PHP 8.1, 8.2 and 8.3.
  • PHPStan phpVersion is 80100 and Rector uses UP_TO_PHP_81.
  • The Rector 8.1 level set is applied to the project code (second commit): 6 properties in the DTOs and services become readonly, and 5 null values are cast to strings before trim(), strtotime() and preg_replace(), which avoids the PHP 8.1 null deprecation.
  • The README states PHP 8.1 as the minimum.
  • CHANGELOG.md has a breaking entry and a changed entry under 3.1.0.

Why

quantum/framework requires PHP 8.1 since 3.1, so CI on PHP 8.0 can no longer install it, and the skeleton's own constraint was wrong.

Breaking changes

  • Projects on PHP 8.0 cannot install this version.

Testing

  • Locally on PHP 8.1: the Unit suite (19 tests, 72 assertions) and the Feature suite (27 tests, 147 assertions) pass before and after the Rector changes, and cs:check, PHPStan and rector:check pass.
  • CI runs the tests and a short end-to-end check (it starts the app and requests /api/posts) on PHP 8.1, 8.2 and 8.3, and all pass.

@quantum-php quantum-php deleted a comment from coderabbitai Bot Oct 23, 2026
@armanist
armanist merged commit c8f12f7 into quantum-php:master Oct 23, 2026
4 of 5 checks passed
@armanist
armanist deleted the issue/208-php-8-1 branch October 23, 2026 17:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Require PHP 8.1 and test on PHP 8.1 to 8.3

1 participant