Skip to content

Added PHP 8.3 to build matrix #29

Added PHP 8.3 to build matrix

Added PHP 8.3 to build matrix #29

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.*"
php-version:
- "7.2"
- "7.3"
- "7.4"
- "8.0"
- "8.1"
- "8.2"
- "8.3"
exclude:
# See - https://laravel.com/docs/9.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.2 @todo tbc
- {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+
steps:
- uses: actions/checkout@v3
- 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"