diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0630777..f87bfa3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -12,11 +12,18 @@ jobs: strategy: fail-fast: false matrix: - php-versions: ['8.0', '8.1', '8.2'] + php-versions: ['8.0', '8.1', '8.2', '8.3'] coverage: ['xdebug'] + code-style: ['yes'] code-analysis: ['no'] include: - php-versions: '7.4' + coverage: 'none' + code-style: 'yes' + code-analysis: 'yes' + - php-versions: '8.4' + coverage: 'xdebug' + code-style: 'yes' code-analysis: 'yes' steps: - name: Checkout @@ -45,8 +52,8 @@ jobs: run: composer install --no-progress --prefer-dist --optimize-autoloader - name: Code Analysis (PHP CS-Fixer) - if: matrix.code-analysis == 'yes' - run: php vendor/bin/php-cs-fixer fix --dry-run --diff + if: matrix.code-style == 'yes' + run: PHP_CS_FIXER_IGNORE_ENV=true php vendor/bin/php-cs-fixer fix --dry-run --diff - name: Code Analysis (PHPStan) if: matrix.code-analysis == 'yes' diff --git a/.php-cs-fixer.dist.php b/.php-cs-fixer.dist.php index e981862..4d464eb 100644 --- a/.php-cs-fixer.dist.php +++ b/.php-cs-fixer.dist.php @@ -10,6 +10,10 @@ $config->setRules([ '@PSR1' => true, '@Symfony' => true, + 'nullable_type_declaration' => [ + 'syntax' => 'question_mark', + ], + 'nullable_type_declaration_for_default_null_value' => true, ]); return $config; diff --git a/composer.json b/composer.json index 0dc4761..8781e8a 100644 --- a/composer.json +++ b/composer.json @@ -13,8 +13,8 @@ "sabre/uri" : "^2.3" }, "require-dev" : { - "friendsofphp/php-cs-fixer": "^3.54", - "phpstan/phpstan": "^1.10", + "friendsofphp/php-cs-fixer": "^3.64", + "phpstan/phpstan": "^1.12", "phpunit/phpunit" : "^9.6" }, "suggest" : { @@ -50,7 +50,7 @@ "phpstan analyse lib tests" ], "cs-fixer": [ - "php-cs-fixer fix" + "PHP_CS_FIXER_IGNORE_ENV=true php-cs-fixer fix" ], "phpunit": [ "phpunit --configuration tests/phpunit.xml" diff --git a/lib/Client.php b/lib/Client.php index f94d933..22ec6f9 100644 --- a/lib/Client.php +++ b/lib/Client.php @@ -475,7 +475,7 @@ protected function parseCurlResponse(array $headerLines, string $body, $curlHand list( $curlInfo, $curlErrNo, - $curlErrMsg + $curlErrMsg, ) = $this->curlStuff($curlHandle); if ($curlErrNo) { @@ -532,7 +532,7 @@ protected function parseCurlResult(string $response, $curlHandle): array list( $curlInfo, $curlErrNo, - $curlErrMsg + $curlErrMsg, ) = $this->curlStuff($curlHandle); if ($curlErrNo) { diff --git a/lib/Response.php b/lib/Response.php index 934d724..92baafd 100644 --- a/lib/Response.php +++ b/lib/Response.php @@ -153,7 +153,7 @@ public function setStatus($status): void } else { list( $statusCode, - $statusText + $statusText, ) = explode(' ', $status, 2); } $statusCode = (int) $statusCode; diff --git a/phpstan.neon b/phpstan.neon index 5802f6f..4be9ef9 100644 --- a/phpstan.neon +++ b/phpstan.neon @@ -18,3 +18,7 @@ parameters: message: "#^Strict comparison using === between null and array will always evaluate to false.$#" count: 1 path: lib/functions.php + - + message: "#^Offset 'value' on array.* in isset\\(\\) always exists and is not nullable.$#" + count: 1 + path: lib/functions.php