Skip to content

chore: adjust github actions for php 8.4#7

Merged
diego-ninja merged 2 commits intomainfrom
hotfix/github_actions
Nov 20, 2025
Merged

chore: adjust github actions for php 8.4#7
diego-ninja merged 2 commits intomainfrom
hotfix/github_actions

Conversation

@diego-ninja
Copy link
Owner

@diego-ninja diego-ninja commented Nov 20, 2025

Summary by CodeRabbit

  • Chores
    • Revamped CI workflow with updated actions, improved dependency caching, and more deterministic install steps for faster, more reliable builds.
  • Tests
    • Switched test runner to Pest, standardized on PHP 8.4, added validation and conditional coverage execution, and integrated coverage uploads to Coveralls.

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link

coderabbitai bot commented Nov 20, 2025

Caution

Review failed

The pull request is closed.

Walkthrough

Replaces and restructures the GitHub Actions workflow at .github/workflows/run-tests.yml: renames the workflow, targets main/develop branches, updates actions and PHP setup, replaces dependency caching with actions/cache@v4, switches to Composer install, adds composer validation, runs Pest tests and conditional coverage/upload steps for PHP 8.4.

Changes

Cohort / File(s) Change Summary
CI workflow (single-file restructure)
\.github/workflows/run-tests.yml
Renamed workflow to "Pest Tests"; constrained triggers to main/develop for push and PR; changed job key testtests; replaced matrix php/dependency variants with php-version: ['8.4']; upgraded actions (actions/checkout@v1v4, shivammathur/setup-phpv2); enabled XDebug; replaced actions/cache@v1 with actions/cache@v4 and switched to composer vendor caching with refined keys; changed dependency step from composer update to composer install --prefer-dist --no-progress --no-suggest; added composer validate steps; added Pest test step and conditional coverage/run & Coveralls upload for PHP 8.4; removed fail-fast and adjusted step names/sequencing.

Sequence Diagram(s)

sequenceDiagram
    autonumber
    participant GH as GitHub Actions
    participant Repo as Repository
    participant Runner as Runner
    participant Composer as Composer
    participant Pest as Pest
    participant Coveralls as Coveralls

    Note over GH,Repo: Trigger on push/PR to main or develop
    GH->>Runner: checkout (`actions/checkout@v4`)
    Runner->>Runner: setup PHP (`shivammathur/setup-php@v2`) \n (PHP 8.4, XDebug enabled)
    Runner->>Runner: restore cache (`actions/cache@v4`) or create new
    Runner->>Composer: composer validate composer.json & composer.lock
    Runner->>Composer: composer install --prefer-dist --no-progress --no-suggest
    Runner->>Pest: run tests (pest)
    alt PHP 8.4
        Runner->>Pest: run pest with coverage
        Runner->>Coveralls: upload coverage report
    end
    Runner-->>GH: job result
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

  • Single file but multiple logical changes: triggers, matrix simplification, action upgrades, caching strategy, new steps and conditional coverage.
  • Pay extra attention to:
    • Cache key/restore-keys correctness and vendor path.
    • Composer install flags and any lockfile implications.
    • Conditional expressions for running coverage and Coveralls upload.
    • Compatibility of shivammathur/setup-php@v2 usage and XDebug settings.

Possibly related PRs

Poem

🐇 I hopped through YAML, neat and spry,

Updated actions, told old keys goodbye.
Pest runs swift where coverage gleams,
Composer validated my dreams.
A rabbit's cheer for CI streams ✨

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Title check ⚠️ Warning The title mentions PHP 8.4 but the actual change only updates the cache action version from v1 to v4, with no PHP 8.4-specific modifications present in the changeset. Revise the title to accurately reflect the primary change, such as: 'chore: upgrade GitHub Actions cache to v4' or 'chore: update cache action version in workflows'.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 1009a8c and 23640bb.

📒 Files selected for processing (1)
  • .github/workflows/run-tests.yml (2 hunks)

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

🧹 Nitpick comments (1)
.github/workflows/run-tests.yml (1)

19-19: Consider updating the checkout action to v4.

While the cache action has been updated, actions/checkout@v1 on this line is also deprecated. For consistency and to ensure you're using actively maintained action versions, consider updating to actions/checkout@v4.

      - name: Checkout code
-       uses: actions/checkout@v1
+       uses: actions/checkout@v4
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between a1fe6ce and 1009a8c.

📒 Files selected for processing (1)
  • .github/workflows/run-tests.yml (1 hunks)
🔇 Additional comments (1)
.github/workflows/run-tests.yml (1)

32-36: Good update to cache action version.

The upgrade from actions/cache@v1 to actions/cache@v4 is appropriate and addresses the deprecation. The cache configuration (path, key) remains compatible with v4.

@diego-ninja diego-ninja merged commit e0d18e2 into main Nov 20, 2025
3 of 5 checks passed
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.

1 participant