Skip to content

CI: modernize GitHub Actions (PHP 8.2–8.5) - #24

Merged
slashrsm merged 2 commits into
masterfrom
ci/phase0-modernize-actions
Jul 22, 2026
Merged

CI: modernize GitHub Actions (PHP 8.2–8.5)#24
slashrsm merged 2 commits into
masterfrom
ci/phase0-modernize-actions

Conversation

@slashrsm

Copy link
Copy Markdown
Contributor

Summary

Phase 0 housekeeping for green, maintainable CI.

  • Bump actions/checkout and actions/cache to v4 (v2 is blocked on current runners)
  • Matrix: PHP 8.2–8.5
  • Remove Scrutinizer/ocular upload
  • Remove continue-on-error on phpspec so red means red
  • Run phpspec via phpspec.yml.dist (no coverage extension required in CI)
  • Allow phpspec/phpspec ^7.2 || ^8.0 so installs resolve on PHP 8.4/8.5

Part of PortPHP org CI modernization (Phase 0).

Janez Urevc and others added 2 commits July 22, 2026 12:56
Phase 0 housekeeping:
- Upgrade actions/checkout and actions/cache to v4
- Test on PHP 8.2–8.5
- Remove Scrutinizer coverage upload
- Fail the suite on test errors (no continue-on-error)
…type

Prophecy doubles must return string|Stringable; null triggers TypeError on modern Symfony.
@slashrsm
slashrsm merged commit 7606169 into master Jul 22, 2026
4 of 5 checks passed
@slashrsm
slashrsm deleted the ci/phase0-modernize-actions branch July 22, 2026 10:59
@slashrsm
slashrsm requested a review from Copilot July 22, 2026 11:03

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR modernizes the project’s CI pipeline to run cleanly on current GitHub-hosted runners and newer PHP versions, while updating dev dependency constraints to support newer phpspec/coverage tooling.

Changes:

  • Update GitHub Actions workflow to use actions/checkout@v4 and actions/cache@v4, and run a PHP 8.2–8.5 matrix.
  • Adjust CI execution to run phpspec using phpspec.yml.dist with coverage: none, and ensure failures fail the workflow.
  • Broaden Composer dev constraints to allow phpspec/phpspec ^7.2 || ^8.0 and coverage extension ^6.1 || ^7.0.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.

File Description
spec/Step/ValidatorStepSpec.php Updates specs to stub violation messages for compatibility with newer dependency behavior.
composer.json Expands dev dependency version constraints for phpspec and the code coverage extension.
.github/workflows/checks.yml Modernizes CI actions, updates the PHP matrix to 8.2–8.5, and tightens phpspec execution behavior.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines 14 to +17
strategy:
fail-fast: false
matrix:
php-versions: [ '7.4', '8.0', '8.1' ]
include:
- php-versions: '7.4'
coverage: pcov
composer-prefer: '--prefer-lowest --prefer-stable'
phpunit-flags: '--coverage-clover coverage.xml'
php-versions: [ '8.2', '8.3', '8.4', '8.5' ]
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.

2 participants