Widen composer compatibility to include Laravel 11 #34
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Build | |
on: | |
push: | |
pull_request: | |
jobs: | |
validate-composer: | |
name: "Validate dependency installation" | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
extensions: [ "scoutapm", "" ] | |
laravel-version: | |
- "5.5.*" | |
- "6.*" | |
- "7.*" | |
- "8.*" | |
- "9.*" | |
- "10.*" | |
- "11.*" | |
php-version: | |
- "7.2" | |
- "7.3" | |
- "7.4" | |
- "8.0" | |
- "8.1" | |
- "8.2" | |
- "8.3" | |
exclude: | |
# See - https://laravel.com/docs/11.x/releases#support-policy | |
# See - https://github.com/laravel/framework/issues/40339 | |
# Laravel 5.5 supports PHP 7.1 - 7.4 | |
- {laravel-version: "5.5.*", php-version: "8.0"} # Laravel 5.5.* does not support PHP 8.0+ | |
- {laravel-version: "5.5.*", php-version: "8.1"} # Laravel 5.5.* does not support PHP 8.0+ | |
- {laravel-version: "5.5.*", php-version: "8.2"} # Laravel 5.5.* does not support PHP 8.0+ | |
- {laravel-version: "5.5.*", php-version: "8.3"} # Laravel 5.5.* does not support PHP 8.0+ | |
# Laravel 6 supports PHP 7.2 - 8.0 | |
- {laravel-version: "6.*", php-version: "8.1"} # Laravel 6 does not support PHP 8.1+ | |
- {laravel-version: "6.*", php-version: "8.2"} # Laravel 6 does not support PHP 8.1+ | |
- {laravel-version: "6.*", php-version: "8.3"} # Laravel 6 does not support PHP 8.1+ | |
# Laravel 7 supports PHP 7.2 - 8.0 | |
- {laravel-version: "7.*", php-version: "8.1"} # Laravel 7 does not support PHP 8.1+ | |
- {laravel-version: "7.*", php-version: "8.2"} # Laravel 7 does not support PHP 8.1+ | |
- {laravel-version: "7.*", php-version: "8.3"} # Laravel 7 does not support PHP 8.1+ | |
# Laravel 8 supports PHP 7.3 - 8.1 | |
- {laravel-version: "8.*", php-version: "7.2"} # Laravel 8 requires 7.3+ | |
- {laravel-version: "8.*", php-version: "8.2"} # Laravel 8 does not support PHP 8.2+ | |
- {laravel-version: "8.*", php-version: "8.3"} # Laravel 8 does not support PHP 8.2+ | |
# Laravel 9 supports PHP 8.0 - 8.2 | |
- {laravel-version: "9.*", php-version: "7.2"} # Laravel 9 requires 8.0+ | |
- {laravel-version: "9.*", php-version: "7.3"} # Laravel 9 requires 8.0+ | |
- {laravel-version: "9.*", php-version: "7.4"} # Laravel 9 requires 8.0+ | |
- {laravel-version: "9.*", php-version: "8.3"} # Laravel 9 does not support PHP 8.3+ | |
# Laravel 10 supports PHP 8.1 - 8.3 | |
- {laravel-version: "10.*", php-version: "7.2"} # Laravel 10 requires 8.1+ | |
- {laravel-version: "10.*", php-version: "7.3"} # Laravel 10 requires 8.1+ | |
- {laravel-version: "10.*", php-version: "7.4"} # Laravel 10 requires 8.1+ | |
- {laravel-version: "10.*", php-version: "8.0"} # Laravel 10 requires 8.1+ | |
# Laravel 11 supports PHP 8.2 - 8.3 | |
- {laravel-version: "11.*", php-version: "7.2"} # Laravel 11 requires 8.2+ | |
- {laravel-version: "11.*", php-version: "7.3"} # Laravel 11 requires 8.2+ | |
- {laravel-version: "11.*", php-version: "7.4"} # Laravel 11 requires 8.2+ | |
- {laravel-version: "11.*", php-version: "8.0"} # Laravel 11 requires 8.2+ | |
- {laravel-version: "11.*", php-version: "8.1"} # Laravel 11 requires 8.2+ | |
steps: | |
- uses: actions/checkout@v4 | |
- name: "Install PHP" | |
uses: shivammathur/setup-php@v2 | |
with: | |
coverage: "none" | |
php-version: "${{ matrix.php-version }}" | |
tools: pecl | |
extensions: ${{ matrix.extensions }} | |
# --no-update then a full `composer update` is needed to overcome locked dependencies | |
# See: https://github.com/composer/composer/issues/9561 | |
- name: "Require specific Laravel version ${{ matrix.laravel-version}}" | |
run: "composer require laravel/framework:${{ matrix.laravel-version}} --no-update --no-interaction --prefer-dist --prefer-stable" | |
- name: "Composer update with new requirements" | |
run: "composer update --no-interaction --prefer-dist --prefer-stable" |