From 387b64ee39076392bef63ada41d71c8b07959f79 Mon Sep 17 00:00:00 2001 From: James Titcumb Date: Tue, 4 Jun 2024 08:03:39 +0100 Subject: [PATCH] Allow Laravel 11 for composer and CI matrix --- .github/workflows/continuous-integration.yml | 63 +++++++++++++++----- composer.json | 4 +- composer.lock | 2 +- 3 files changed, 52 insertions(+), 17 deletions(-) diff --git a/.github/workflows/continuous-integration.yml b/.github/workflows/continuous-integration.yml index 1ca82d05..05b2d577 100644 --- a/.github/workflows/continuous-integration.yml +++ b/.github/workflows/continuous-integration.yml @@ -361,6 +361,7 @@ jobs: - "8.*" - "9.*" - "10.*" + - "11.*" php-version: - "7.2" - "7.3" @@ -368,9 +369,9 @@ jobs: - "8.0" - "8.1" - "8.2" - - "8.3" # @todo confirm which versions of Laravel will support PHP 8.3 + - "8.3" exclude: - # See - https://laravel.com/docs/9.x/releases#support-policy + # 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+ @@ -394,11 +395,17 @@ jobs: - {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 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@v3 - name: "Install PHP" @@ -421,7 +428,7 @@ jobs: if: ${{ (matrix.php-version == '8.0' || matrix.php-version == '8.1') && (matrix.laravel-version == '8.*' || matrix.laravel-version == '9.*') }} run: "composer require --dev spatie/laravel-ignition:^1.6 --no-update --no-interaction" - name: "Install spatie/laravel-ignition ^2.0 (if available)" - if: ${{ (matrix.php-version == '8.1' || matrix.php-version == '8.2' || matrix.php-version == '8.3') && (matrix.laravel-version == '10.*') }} + if: ${{ (matrix.php-version == '8.1' || matrix.php-version == '8.2' || matrix.php-version == '8.3') && (matrix.laravel-version == '10.*' || matrix.laravel-version == '11.*') }} run: "composer require --dev spatie/laravel-ignition:^2.0 --no-update --no-interaction" - name: "Unrestrict nesbot/carbon for older PHP versions" if: ${{ (matrix.php-version == '7.2' || matrix.php-version == '7.3' || matrix.php-version == '7.4' || matrix.php-version == '8.0' || matrix.php-version == '8.1') }} @@ -447,6 +454,7 @@ jobs: - "8.*" - "9.*" - "10.*" + - "11.*" php-version: - "7.2" - "7.3" @@ -454,9 +462,9 @@ jobs: - "8.0" - "8.1" - "8.2" - - "8.3" # @todo confirm which versions of Laravel will support PHP 8.3 + - "8.3" exclude: - # See - https://laravel.com/docs/9.x/releases#support-policy + # 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+ @@ -480,11 +488,17 @@ jobs: - {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 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+ env: SCOUT_APM_KEY: ${{ secrets.SCOUT_APM_KEY }} steps: @@ -575,6 +589,7 @@ jobs: - "8.*" - "9.*" - "10.*" + - "11.*" php-version: - "7.2" - "7.3" @@ -582,9 +597,9 @@ jobs: - "8.0" - "8.1" - "8.2" - - "8.3" # @todo confirm which versions of Laravel will support PHP 8.2 + - "8.3" exclude: - # See - https://laravel.com/docs/9.x/releases#support-policy + # 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+ @@ -608,11 +623,17 @@ jobs: - {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 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+ env: SCOUT_APM_KEY: ${{ secrets.SCOUT_APM_KEY }} steps: @@ -673,6 +694,7 @@ jobs: - "8.*" - "9.*" - "10.*" + - "11.*" php-version: - "7.2" - "7.3" @@ -680,7 +702,7 @@ jobs: - "8.0" - "8.1" - "8.2" - - "8.3" # @todo confirm which versions of Laravel will support PHP 8.2 + - "8.3" exclude: # Lumen 5.5 supports PHP 7.1 - 7.3 - {lumen-version: "5.5.*", php-version: "7.4"} # Lumen 5.5 does not support PHP 7.4+ @@ -707,11 +729,17 @@ jobs: - {lumen-version: "9.*", php-version: "7.3"} # Lumen 9 requires 8.0+ - {lumen-version: "9.*", php-version: "7.4"} # Lumen 9 requires 8.0+ - {lumen-version: "9.*", php-version: "8.3"} # Lumen 9 does not support PHP 8.3+ - # Lumen 10 supports PHP 8.1 - 8.2 @todo tbc + # Lumen 10 supports PHP 8.1 - 8.3 - {lumen-version: "10.*", php-version: "7.2"} # Lumen 10 requires 8.1+ - {lumen-version: "10.*", php-version: "7.3"} # Lumen 10 requires 8.1+ - {lumen-version: "10.*", php-version: "7.4"} # Lumen 10 requires 8.1+ - {lumen-version: "10.*", php-version: "8.0"} # Lumen 10 requires 8.1+ + # Lumen 11 supports PHP 8.2 - 8.3 + - {lumen-version: "11.*", php-version: "7.2"} # Lumen 11 requires 8.2+ + - {lumen-version: "11.*", php-version: "7.3"} # Lumen 11 requires 8.2+ + - {lumen-version: "11.*", php-version: "7.4"} # Lumen 11 requires 8.2+ + - {lumen-version: "11.*", php-version: "8.0"} # Lumen 11 requires 8.2+ + - {lumen-version: "11.*", php-version: "8.1"} # Lumen 11 requires 8.2+ steps: - uses: actions/checkout@v3 - name: "Install PHP" @@ -754,6 +782,7 @@ jobs: - "8.*" - "9.*" - "10.*" + - "11.*" php-version: - "7.2" - "7.3" @@ -761,7 +790,7 @@ jobs: - "8.0" - "8.1" - "8.2" - - "8.3" # @todo confirm which versions of Laravel will support PHP 8.2 + - "8.3" exclude: # Lumen 5.5 supports PHP 7.1 - 7.3 - {lumen-version: "5.5.*", php-version: "7.4"} # Lumen 5.5 does not support PHP 7.4+ @@ -788,11 +817,17 @@ jobs: - {lumen-version: "9.*", php-version: "7.3"} # Lumen 9 requires 8.0+ - {lumen-version: "9.*", php-version: "7.4"} # Lumen 9 requires 8.0+ - {lumen-version: "9.*", php-version: "8.3"} # Lumen 9 does not support PHP 8.3+ - # Lumen 10 supports PHP 8.1 - 8.2 @todo tbc + # Lumen 10 supports PHP 8.1 - 8.3 - {lumen-version: "10.*", php-version: "7.2"} # Lumen 10 requires 8.1+ - {lumen-version: "10.*", php-version: "7.3"} # Lumen 10 requires 8.1+ - {lumen-version: "10.*", php-version: "7.4"} # Lumen 10 requires 8.1+ - {lumen-version: "10.*", php-version: "8.0"} # Lumen 10 requires 8.1+ + # Lumen 11 supports PHP 8.2 - 8.3 + - {lumen-version: "11.*", php-version: "7.2"} # Lumen 11 requires 8.2+ + - {lumen-version: "11.*", php-version: "7.3"} # Lumen 11 requires 8.2+ + - {lumen-version: "11.*", php-version: "7.4"} # Lumen 11 requires 8.2+ + - {lumen-version: "11.*", php-version: "8.0"} # Lumen 11 requires 8.2+ + - {lumen-version: "11.*", php-version: "8.1"} # Lumen 11 requires 8.2+ env: SCOUT_APM_KEY: ${{ secrets.SCOUT_APM_KEY }} steps: diff --git a/composer.json b/composer.json index 7fdf5ca3..e07d2f76 100644 --- a/composer.json +++ b/composer.json @@ -28,8 +28,8 @@ "api-ecosystem-for-laravel/dingo-api": "^3.0|^4.0", "doctrine/coding-standard": "^12.0", "guzzlehttp/guzzle": "^7.4", - "laravel/framework": "^5.5.0|^6.0|^7.0|^8.0|^9.0|^10.0", - "laravel/lumen-framework": "^5.5.0|^6.0|^7.0|^8.0|^9.0|^10.0", + "laravel/framework": "^5.5.0|^6.0|^7.0|^8.0|^9.0|^10.0|^11.0", + "laravel/lumen-framework": "^5.5.0|^6.0|^7.0|^8.0|^9.0|^10.0|^11.0", "monolog/monolog": "^1.27|^2.5|^3.0", "nesbot/carbon": "^2.62.1 || ^3.5", "nyholm/psr7": "^1.5", diff --git a/composer.lock b/composer.lock index 5c7efd89..5425420f 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "85f635ab99f31526a5c153ba855303ac", + "content-hash": "501479e36270d51c71c50474f88847ea", "packages": [ { "name": "brick/math",