From d957c8e1fbd96d21cc7063dccdb973a4a4b67f2f Mon Sep 17 00:00:00 2001 From: Vadim Abzalov Date: Tue, 26 May 2026 18:38:51 +0500 Subject: [PATCH 01/13] Fixed implicit nullable parameter deprecations on PHP 8.4 --- CHANGELOG.md | 6 ++++++ src/Client.php | 2 +- src/ClientInterface.php | 2 +- src/ConnectionSettings.php | 2 +- src/Frameworks/Illuminate/ClientFactory.php | 2 +- src/Frameworks/Illuminate/ClientFactoryInterface.php | 2 +- 6 files changed, 11 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index bc1b295..df5fa25 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,12 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog][keepachangelog] and this project adheres to [Semantic Versioning][semver]. +## Unreleased + +### Changed + +- Fixed implicit nullable parameter deprecations on PHP `8.4` + ## v2.8.0 ### Added diff --git a/src/Client.php b/src/Client.php index 0e31798..bb90851 100644 --- a/src/Client.php +++ b/src/Client.php @@ -57,7 +57,7 @@ public static function version(bool $without_hash = true): string /** * {@inheritdoc} */ - public function healthcheck(string $node_name = null): bool + public function healthcheck(?string $node_name = null): bool { $url = '/api/healthchecks/node' . ($node_name === null ? '' diff --git a/src/ClientInterface.php b/src/ClientInterface.php index fb1655d..e0a98b0 100644 --- a/src/ClientInterface.php +++ b/src/ClientInterface.php @@ -27,7 +27,7 @@ public static function version(bool $without_hash = true): string; * * @return bool */ - public function healthcheck(string $node_name = null): bool; + public function healthcheck(?string $node_name = null): bool; /** * Get queue info by name (and vhost). diff --git a/src/ConnectionSettings.php b/src/ConnectionSettings.php index ed39bed..f3ce106 100644 --- a/src/ConnectionSettings.php +++ b/src/ConnectionSettings.php @@ -44,7 +44,7 @@ public function __construct(string $entry_point, string $login = 'guest', string $password = 'guest', int $timeout = 5, - string $user_agent = null) + ?string $user_agent = null) { $this->entry_point = \rtrim($entry_point, ' \\/'); $this->login = $login; diff --git a/src/Frameworks/Illuminate/ClientFactory.php b/src/Frameworks/Illuminate/ClientFactory.php index 84064c3..a4de5ad 100644 --- a/src/Frameworks/Illuminate/ClientFactory.php +++ b/src/Frameworks/Illuminate/ClientFactory.php @@ -56,7 +56,7 @@ public function defaultConnectionName(): string /** * {@inheritdoc} */ - public function make(string $connection_name = null, array $options = null): ClientInterface + public function make(?string $connection_name = null, ?array $options = null): ClientInterface { $connection_name = $connection_name ?? $this->defaultConnectionName(); diff --git a/src/Frameworks/Illuminate/ClientFactoryInterface.php b/src/Frameworks/Illuminate/ClientFactoryInterface.php index 9455223..205b1ca 100644 --- a/src/Frameworks/Illuminate/ClientFactoryInterface.php +++ b/src/Frameworks/Illuminate/ClientFactoryInterface.php @@ -31,5 +31,5 @@ public function defaultConnectionName(): string; * * @return ClientInterface */ - public function make(string $connection_name = null, array $options = null): ClientInterface; + public function make(?string $connection_name = null, ?array $options = null): ClientInterface; } From d719b68c6c8f6c744c1b0aeab37b952715c5ec8a Mon Sep 17 00:00:00 2001 From: Vadim Abzalov Date: Tue, 26 May 2026 18:42:38 +0500 Subject: [PATCH 02/13] fix CHANGELOG.md --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index df5fa25..13f90a8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,7 +8,7 @@ The format is based on [Keep a Changelog][keepachangelog] and this project adher ### Changed -- Fixed implicit nullable parameter deprecations on PHP `8.4` +- Fixed implicit nullable parameter deprecations on PHP version `8.4` ## v2.8.0 From 06ec4c4ddb71c0612762713e134ae162965c0422 Mon Sep 17 00:00:00 2001 From: Eldario Date: Tue, 26 May 2026 19:10:25 +0500 Subject: [PATCH 03/13] Apply suggestion from @eldario --- CHANGELOG.md | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 13f90a8..ce77365 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,10 +6,9 @@ The format is based on [Keep a Changelog][keepachangelog] and this project adher ## Unreleased -### Changed - -- Fixed implicit nullable parameter deprecations on PHP version `8.4` +### Fixed +- Deprecated implicit marking of parameter as nullable ## v2.8.0 ### Added From 90c2ffd4ad897b6693ec76333e1a07c793dfa034 Mon Sep 17 00:00:00 2001 From: Eldario Date: Tue, 26 May 2026 19:11:03 +0500 Subject: [PATCH 04/13] Update CHANGELOG.md --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index ce77365..8ad9d59 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ The format is based on [Keep a Changelog][keepachangelog] and this project adher ### Fixed - Deprecated implicit marking of parameter as nullable + ## v2.8.0 ### Added From 51d8833c30cf9be267642e5dbf43aa22b590361f Mon Sep 17 00:00:00 2001 From: Vadim Abzalov Date: Wed, 27 May 2026 09:18:40 +0500 Subject: [PATCH 05/13] Add github check for PHP 8.4 --- .github/workflows/tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 0da09ce..b87015a 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -21,7 +21,7 @@ jobs: # Docs: setup: [basic, lowest] laravel: [default] coverage: [yes] - php: ['8.2', '8.3'] + php: ['8.2', '8.3', '8.4'] include: - php: '8.2' setup: [ basic, lowest ] From 8967ca516181ed2e05a1b832b72e5b492435cd92 Mon Sep 17 00:00:00 2001 From: Vadim Abzalov Date: Wed, 27 May 2026 09:42:24 +0500 Subject: [PATCH 06/13] guzzle is min 7.10 now. fixed phpstan config. --- composer.json | 2 +- phpstan.neon.dist | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/composer.json b/composer.json index cf52b70..39b384c 100644 --- a/composer.json +++ b/composer.json @@ -18,7 +18,7 @@ "php": "^8.2", "ext-json": "*", "ext-mbstring": "*", - "guzzlehttp/guzzle": "^7.7", + "guzzlehttp/guzzle": "^7.10", "illuminate/contracts": "~10.0 || ~11.0 || ~12.0", "illuminate/support": "~10.0 || ~11.0 || ~12.0", "illuminate/config": "~10.0 || ~11.0 || ~12.0", diff --git a/phpstan.neon.dist b/phpstan.neon.dist index 521d6fd..9791d75 100644 --- a/phpstan.neon.dist +++ b/phpstan.neon.dist @@ -1,5 +1,6 @@ parameters: level: 'max' - checkGenericClassInNonGenericObjectType: false + ignoreErrors: + - identifier: missingType.generics paths: - src From baeab32bb9cef5c3525be59ff724923584bd720a Mon Sep 17 00:00:00 2001 From: Vadim Abzalov Date: Wed, 27 May 2026 09:49:20 +0500 Subject: [PATCH 07/13] revert phpstan --- phpstan.neon.dist | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/phpstan.neon.dist b/phpstan.neon.dist index 9791d75..521d6fd 100644 --- a/phpstan.neon.dist +++ b/phpstan.neon.dist @@ -1,6 +1,5 @@ parameters: level: 'max' - ignoreErrors: - - identifier: missingType.generics + checkGenericClassInNonGenericObjectType: false paths: - src From b81086720a10b43c2e0692401aa4994a2547b21e Mon Sep 17 00:00:00 2001 From: Vadim Abzalov Date: Wed, 27 May 2026 14:21:37 +0500 Subject: [PATCH 08/13] update github matrix php 8.4 --- .github/workflows/tests.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index b87015a..b728aaf 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -27,6 +27,9 @@ jobs: # Docs: setup: [ basic, lowest ] coverage: no laravel: '^10.0' + - php: '8.4' + setup: [ basic ] + coverage: no steps: - name: Check out code uses: actions/checkout@v4 From 175bf1339ab32c0dd84979f79205d6c03714d457 Mon Sep 17 00:00:00 2001 From: Vadim Abzalov Date: Wed, 27 May 2026 14:28:41 +0500 Subject: [PATCH 09/13] exclude php 8.4 prefer-lowest --- .github/workflows/tests.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index b728aaf..c047c5a 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -27,9 +27,9 @@ jobs: # Docs: setup: [ basic, lowest ] coverage: no laravel: '^10.0' - - php: '8.4' - setup: [ basic ] - coverage: no + exclude: + - php: 8.4 + dependency-version: prefer-lowest steps: - name: Check out code uses: actions/checkout@v4 From 94c9a9ddae62b38f4780dfba916ce97a4788f9d3 Mon Sep 17 00:00:00 2001 From: Eldario Date: Wed, 27 May 2026 15:09:08 +0500 Subject: [PATCH 10/13] Apply suggestion from @eldario --- composer.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/composer.json b/composer.json index 39b384c..701f0ac 100644 --- a/composer.json +++ b/composer.json @@ -26,7 +26,7 @@ }, "require-dev": { "laravel/laravel": "~10.0 || ~11.0 || ~12.0", - "phpstan/phpstan": "^1.10", + "phpstan/phpstan": "^1.12.27", "phpunit/phpunit": "^10.5" }, "autoload": { From e4c526e25599309125cc247e27d24d458d889a1e Mon Sep 17 00:00:00 2001 From: Eldario Date: Wed, 27 May 2026 15:13:59 +0500 Subject: [PATCH 11/13] Apply suggestion from @eldario --- .github/workflows/tests.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index c047c5a..ae41494 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -28,8 +28,8 @@ jobs: # Docs: coverage: no laravel: '^10.0' exclude: - - php: 8.4 - dependency-version: prefer-lowest + - php: '8.4' + dependency-version: 'lowest' steps: - name: Check out code uses: actions/checkout@v4 From 6ccea1bf262d3d78ff793d74e62f560ca6783008 Mon Sep 17 00:00:00 2001 From: Eldario Date: Wed, 27 May 2026 15:16:27 +0500 Subject: [PATCH 12/13] Apply suggestion from @eldario --- .github/workflows/tests.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index ae41494..b87015a 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -27,9 +27,6 @@ jobs: # Docs: setup: [ basic, lowest ] coverage: no laravel: '^10.0' - exclude: - - php: '8.4' - dependency-version: 'lowest' steps: - name: Check out code uses: actions/checkout@v4 From 3559ac4b91fafe121ff947b0810c771805990daf Mon Sep 17 00:00:00 2001 From: Eldario Date: Thu, 28 May 2026 15:15:46 +0500 Subject: [PATCH 13/13] Update CHANGELOG.md --- CHANGELOG.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8ad9d59..c97335f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,6 +6,11 @@ The format is based on [Keep a Changelog][keepachangelog] and this project adher ## Unreleased +### Changed + +- Minimal `guzzlehttp/guzzle` version now is `7,10` +- Minimal `phpstan/phpstan` version now is `1.12.27` + ### Fixed - Deprecated implicit marking of parameter as nullable