Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[11.x] Supports PHP 8.4 #53468

Merged
merged 35 commits into from
Nov 21, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/workflows/databases-nightly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ jobs:
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.2
php-version: 8.3
extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, pdo_mysql, :php-psr
tools: composer:v2
coverage: none
Expand Down Expand Up @@ -76,7 +76,7 @@ jobs:
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.2
php-version: 8.3
extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, pdo_mysql, :php-psr
tools: composer:v2
coverage: none
Expand Down
16 changes: 8 additions & 8 deletions .github/workflows/databases.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.2
php-version: 8.3
extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, pdo_mysql, :php-psr
tools: composer:v2
coverage: none
Expand Down Expand Up @@ -81,7 +81,7 @@ jobs:
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.2
php-version: 8.3
extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, pdo_mysql, :php-psr
tools: composer:v2
coverage: none
Expand Down Expand Up @@ -127,7 +127,7 @@ jobs:
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.2
php-version: 8.3
extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, pdo_mysql, :php-psr
tools: composer:v2
coverage: none
Expand Down Expand Up @@ -174,7 +174,7 @@ jobs:
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.2
php-version: 8.3
extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, pdo_pgsql, :php-psr
tools: composer:v2
coverage: none
Expand Down Expand Up @@ -223,7 +223,7 @@ jobs:
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.2
php-version: 8.3
extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, pdo_pgsql, :php-psr
tools: composer:v2
coverage: none
Expand Down Expand Up @@ -270,7 +270,7 @@ jobs:
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.2
php-version: 8.3
extensions: dom, curl, libxml, mbstring, zip, pcntl, sqlsrv, pdo, pdo_sqlsrv, odbc, pdo_odbc, :php-psr
tools: composer:v2
coverage: none
Expand Down Expand Up @@ -318,7 +318,7 @@ jobs:
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.2
php-version: 8.3
extensions: dom, curl, libxml, mbstring, zip, pcntl, sqlsrv, pdo, pdo_sqlsrv, odbc, pdo_odbc, :php-psr
tools: composer:v2
coverage: none
Expand Down Expand Up @@ -357,7 +357,7 @@ jobs:
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.2
php-version: 8.3
extensions: dom, curl, libxml, mbstring, zip, pcntl, sqlsrv, pdo, pdo_sqlsrv, odbc, pdo_odbc, :php-psr
tools: composer:v2
coverage: none
Expand Down
25 changes: 11 additions & 14 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,8 +39,8 @@ jobs:
strategy:
fail-fast: true
matrix:
php: [8.2, 8.3]
phpunit: ['10.5', '11.0.1']
php: [8.2, 8.3, 8.4]
phpunit: ['10.5.12', '11.3.2']
stability: [prefer-lowest, prefer-stable]

name: PHP ${{ matrix.php }} - PHPUnit ${{ matrix.phpunit }} - ${{ matrix.stability }}
Expand All @@ -53,7 +53,7 @@ jobs:
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, gd, redis, igbinary, msgpack, lzf, zstd, lz4, memcached, gmp, :php-psr
extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, gd, redis, igbinary, msgpack, memcached, gmp, :php-psr
ini-values: error_reporting=E_ALL
tools: composer:v2
coverage: none
Expand All @@ -64,12 +64,14 @@ jobs:
- name: Set Framework version
run: composer config version "11.x-dev"

- name: Set minimum PHP 8.2 versions
- name: Set Minimum PHP 8.4 Versions
uses: nick-fields/retry@v3
with:
timeout_minutes: 5
max_attempts: 5
command: composer require guzzlehttp/psr7:^2.4 --no-interaction --no-update
command: composer require nesbot/carbon:^3.4 --no-interaction --no-update
shell: bash
if: matrix.php >= 8.4

- name: Set PHPUnit
uses: nick-fields/retry@v3
Expand Down Expand Up @@ -109,9 +111,12 @@ jobs:
strategy:
fail-fast: true
matrix:
php: [8.2, 8.3]
php: [8.2, 8.3, 8.4]
phpunit: ['10.5', '11.0.1']
stability: [prefer-lowest, prefer-stable]
exclude:
- php: 8.4
stability: prefer-lowest

name: PHP ${{ matrix.php }} - PHPUnit ${{ matrix.phpunit }} - ${{ matrix.stability }} - Windows

Expand All @@ -135,14 +140,6 @@ jobs:
- name: Set Framework version
run: composer config version "11.x-dev"

- name: Set Minimum PHP 8.2 Versions
uses: nick-fields/retry@v3
with:
timeout_minutes: 5
max_attempts: 5
command: composer require guzzlehttp/psr7:^2.4 --no-interaction --no-update
shell: bash

- name: Set PHPUnit
uses: nick-fields/retry@v3
with:
Expand Down
80 changes: 42 additions & 38 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -26,37 +26,38 @@
"composer-runtime-api": "^2.2",
"brick/math": "^0.9.3|^0.10.2|^0.11|^0.12",
"doctrine/inflector": "^2.0.5",
"dragonmantank/cron-expression": "^3.3.2",
"dragonmantank/cron-expression": "^3.4",
"egulias/email-validator": "^3.2.1|^4.0",
"fruitcake/php-cors": "^1.3",
"guzzlehttp/guzzle": "^7.8",
"guzzlehttp/guzzle": "^7.8.2",
"guzzlehttp/uri-template": "^1.0",
"laravel/prompts": "^0.1.18|^0.2.0|^0.3.0",
"laravel/serializable-closure": "^1.3|^2.0",
"league/commonmark": "^2.2.1",
"league/flysystem": "^3.8.0",
"league/flysystem": "^3.25.1",
"league/flysystem-local": "^3.25.1",
"monolog/monolog": "^3.0",
"nesbot/carbon": "^2.72.2|^3.0",
"nesbot/carbon": "^2.72.2|^3.4",
"nunomaduro/termwind": "^2.0",
"psr/container": "^1.1.1|^2.0.1",
"psr/log": "^1.0|^2.0|^3.0",
"psr/simple-cache": "^1.0|^2.0|^3.0",
"ramsey/uuid": "^4.7",
"symfony/console": "^7.0",
"symfony/error-handler": "^7.0",
"symfony/finder": "^7.0",
"symfony/http-foundation": "^7.0",
"symfony/http-kernel": "^7.0",
"symfony/mailer": "^7.0",
"symfony/mime": "^7.0",
"symfony/polyfill-php83": "^1.28",
"symfony/process": "^7.0",
"symfony/routing": "^7.0",
"symfony/uid": "^7.0",
"symfony/var-dumper": "^7.0",
"symfony/console": "^7.0.3",
"symfony/error-handler": "^7.0.3",
"symfony/finder": "^7.0.3",
"symfony/http-foundation": "^7.0.3",
"symfony/http-kernel": "^7.0.3",
"symfony/mailer": "^7.0.3",
"symfony/mime": "^7.0.3",
"symfony/polyfill-php83": "^1.31",
"symfony/process": "^7.0.3",
"symfony/routing": "^7.0.3",
"symfony/uid": "^7.0.3",
"symfony/var-dumper": "^7.0.3",
"tijsverkoyen/css-to-inline-styles": "^2.2.5",
"vlucas/phpdotenv": "^5.4.1",
"voku/portable-ascii": "^2.0"
"vlucas/phpdotenv": "^5.6.1",
"voku/portable-ascii": "^2.0.2"
},
"replace": {
"illuminate/auth": "self.version",
Expand Down Expand Up @@ -98,24 +99,27 @@
"require-dev": {
"ext-gmp": "*",
"ably/ably-php": "^1.0",
"aws/aws-sdk-php": "^3.235.5",
"fakerphp/faker": "^1.23",
"league/flysystem-aws-s3-v3": "^3.0",
"league/flysystem-ftp": "^3.0",
"league/flysystem-path-prefixing": "^3.3",
"league/flysystem-read-only": "^3.3",
"league/flysystem-sftp-v3": "^3.0",
"aws/aws-sdk-php": "^3.322.9",
"fakerphp/faker": "^1.24",
"guzzlehttp/promises": "^2.0.3",
"guzzlehttp/psr7": "^2.4",
"league/flysystem-aws-s3-v3": "^3.25.1",
"league/flysystem-ftp": "^3.25.1",
"league/flysystem-path-prefixing": "^3.25.1",
"league/flysystem-read-only": "^3.25.1",
"league/flysystem-sftp-v3": "^3.25.1",
"mockery/mockery": "^1.6.10",
"nyholm/psr7": "^1.2",
"orchestra/testbench-core": "^9.6",
"pda/pheanstalk": "^5.0",
"pda/pheanstalk": "^5.0.6",
"phpstan/phpstan": "^1.11.5",
"phpunit/phpunit": "^10.5|^11.0",
"predis/predis": "^2.0.2",
"phpunit/phpunit": "^10.5.35|^11.3.6",
"predis/predis": "^2.3",
"resend/resend-php": "^0.10.0",
"symfony/cache": "^7.0",
"symfony/http-client": "^7.0",
"symfony/psr-http-message-bridge": "^7.0"
"symfony/cache": "^7.0.3",
"symfony/http-client": "^7.0.3",
"symfony/translation": "^7.0.3",
"symfony/psr-http-message-bridge": "^7.0.3"
},
"conflict": {
"mockery/mockery": "1.6.8",
Expand Down Expand Up @@ -169,21 +173,21 @@
"ext-posix": "Required to use all features of the queue worker.",
"ext-redis": "Required to use the Redis cache and queue drivers (^4.0|^5.0|^6.0).",
"ably/ably-php": "Required to use the Ably broadcast driver (^1.0).",
"aws/aws-sdk-php": "Required to use the SQS queue driver, DynamoDb failed job storage, and SES mail driver (^3.235.5).",
"aws/aws-sdk-php": "Required to use the SQS queue driver, DynamoDb failed job storage, and SES mail driver (^3.322.9).",
"brianium/paratest": "Required to run tests in parallel (^7.0|^8.0).",
"fakerphp/faker": "Required to use the eloquent factory builder (^1.9.1).",
"filp/whoops": "Required for friendly error pages in development (^2.14.3).",
"laravel/tinker": "Required to use the tinker console command (^2.0).",
"league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^3.0).",
"league/flysystem-ftp": "Required to use the Flysystem FTP driver (^3.0).",
"league/flysystem-path-prefixing": "Required to use the scoped driver (^3.3).",
"league/flysystem-read-only": "Required to use read-only disks (^3.3)",
"league/flysystem-sftp-v3": "Required to use the Flysystem SFTP driver (^3.0).",
"league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^3.25.1).",
"league/flysystem-ftp": "Required to use the Flysystem FTP driver (^3.25.1).",
"league/flysystem-path-prefixing": "Required to use the scoped driver (^3.25.1).",
"league/flysystem-read-only": "Required to use read-only disks (^3.25.1)",
"league/flysystem-sftp-v3": "Required to use the Flysystem SFTP driver (^3.25.1).",
"mockery/mockery": "Required to use mocking (^1.6).",
"nyholm/psr7": "Required to use PSR-7 bridging features (^1.2).",
"pda/pheanstalk": "Required to use the beanstalk queue driver (^5.0).",
"phpunit/phpunit": "Required to use assertions and run tests (^10.5|^11.0).",
"predis/predis": "Required to use the predis connector (^2.0.2).",
"predis/predis": "Required to use the predis connector (^2.3).",
"psr/http-message": "Required to allow Storage::put to accept a StreamInterface (^1.0).",
"pusher/pusher-php-server": "Required to use the Pusher broadcast driver (^6.0|^7.0).",
"resend/resend-php": "Required to enable support for the Resend mail transport (^0.10.0).",
Expand Down
6 changes: 3 additions & 3 deletions src/Illuminate/Console/composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -23,9 +23,9 @@
"illuminate/view": "^11.0",
"laravel/prompts": "^0.1.20|^0.2|^0.3",
"nunomaduro/termwind": "^2.0",
"symfony/console": "^7.0",
"symfony/polyfill-php83": "^1.28",
"symfony/process": "^7.0"
"symfony/console": "^7.0.3",
"symfony/polyfill-php83": "^1.31",
"symfony/process": "^7.0.3"
},
"autoload": {
"psr-4": {
Expand Down
4 changes: 2 additions & 2 deletions src/Illuminate/Cookie/composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@
"illuminate/contracts": "^11.0",
"illuminate/macroable": "^11.0",
"illuminate/support": "^11.0",
"symfony/http-foundation": "^7.0",
"symfony/http-kernel": "^7.0"
"symfony/http-foundation": "^7.0.3",
"symfony/http-kernel": "^7.0.3"
},
"autoload": {
"psr-4": {
Expand Down
2 changes: 1 addition & 1 deletion src/Illuminate/Database/composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
},
"suggest": {
"ext-filter": "Required to use the Postgres database driver.",
"fakerphp/faker": "Required to use the eloquent factory builder (^1.21).",
"fakerphp/faker": "Required to use the eloquent factory builder (^1.24).",
"illuminate/console": "Required to use the database commands (^11.0).",
"illuminate/events": "Required to use the observers with Eloquent (^11.0).",
"illuminate/filesystem": "Required to use the migrations (^11.0).",
Expand Down
10 changes: 5 additions & 5 deletions src/Illuminate/Filesystem/composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
"illuminate/contracts": "^11.0",
"illuminate/macroable": "^11.0",
"illuminate/support": "^11.0",
"symfony/finder": "^7.0"
"symfony/finder": "^7.0.3"
},
"autoload": {
"psr-4": {
Expand All @@ -39,10 +39,10 @@
"ext-ftp": "Required to use the Flysystem FTP driver.",
"ext-hash": "Required to use the Filesystem class.",
"illuminate/http": "Required for handling uploaded files (^7.0).",
"league/flysystem": "Required to use the Flysystem local driver (^3.0.16).",
"league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^3.0).",
"league/flysystem-ftp": "Required to use the Flysystem FTP driver (^3.0).",
"league/flysystem-sftp-v3": "Required to use the Flysystem SFTP driver (^3.0).",
"league/flysystem": "Required to use the Flysystem local driver (^3.25.1).",
"league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^3.25.1).",
"league/flysystem-ftp": "Required to use the Flysystem FTP driver (^3.25.1).",
"league/flysystem-sftp-v3": "Required to use the Flysystem SFTP driver (^3.25.1).",
"psr/http-message": "Required to allow Storage::put to accept a StreamInterface (^1.0).",
"symfony/filesystem": "Required to enable support for relative symbolic links (^7.0).",
"symfony/mime": "Required to enable support for guessing extensions (^7.0)."
Expand Down
10 changes: 5 additions & 5 deletions src/Illuminate/Http/composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -17,16 +17,16 @@
"php": "^8.2",
"ext-filter": "*",
"fruitcake/php-cors": "^1.3",
"guzzlehttp/guzzle": "^7.8",
"guzzlehttp/guzzle": "^7.8.2",
"guzzlehttp/uri-template": "^1.0",
"illuminate/collections": "^11.0",
"illuminate/macroable": "^11.0",
"illuminate/session": "^11.0",
"illuminate/support": "^11.0",
"symfony/http-foundation": "^7.0",
"symfony/http-kernel": "^7.0",
"symfony/polyfill-php83": "^1.28",
"symfony/mime": "^7.0"
"symfony/http-foundation": "^7.0.3",
"symfony/http-kernel": "^7.0.3",
"symfony/polyfill-php83": "^1.31",
"symfony/mime": "^7.0.3"
},
"autoload": {
"psr-4": {
Expand Down
4 changes: 2 additions & 2 deletions src/Illuminate/Mail/composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
"illuminate/support": "^11.0",
"league/commonmark": "^2.2",
"psr/log": "^1.0|^2.0|^3.0",
"symfony/mailer": "^7.0",
"symfony/mailer": "^7.0.3",
"tijsverkoyen/css-to-inline-styles": "^2.2.5"
},
"autoload": {
Expand All @@ -36,7 +36,7 @@
}
},
"suggest": {
"aws/aws-sdk-php": "Required to use the SES mail driver (^3.235.5).",
"aws/aws-sdk-php": "Required to use the SES mail driver (^3.322.9).",
"resend/resend-php": "Required to enable support for the Resend mail transport (^0.10.0).",
"symfony/http-client": "Required to use the Symfony API mail transports (^7.0).",
"symfony/mailgun-mailer": "Required to enable support for the Mailgun mail transport (^7.0).",
Expand Down
2 changes: 1 addition & 1 deletion src/Illuminate/Process/composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@
"illuminate/contracts": "^11.0",
"illuminate/macroable": "^11.0",
"illuminate/support": "^11.0",
"symfony/process": "^7.0"
"symfony/process": "^7.0.3"
},
"autoload": {
"psr-4": {
Expand Down
Loading