diff --git a/.github/workflows/autoformat.yml b/.github/workflows/autoformat.yml index aa6cccf..22a2dfb 100644 --- a/.github/workflows/autoformat.yml +++ b/.github/workflows/autoformat.yml @@ -8,7 +8,7 @@ jobs: composer-normalize: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 with: ref: ${{ github.head_ref }} @@ -29,7 +29,7 @@ jobs: prettier: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 with: ref: ${{ github.head_ref }} @@ -44,7 +44,7 @@ jobs: php-cs-fixer: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 with: ref: ${{ github.head_ref }} diff --git a/.github/workflows/validate.yml b/.github/workflows/validate.yml index 3326c54..2239e91 100644 --- a/.github/workflows/validate.yml +++ b/.github/workflows/validate.yml @@ -35,7 +35,7 @@ jobs: steps: - name: "Checkout" - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: "Install PHP with extensions" uses: shivammathur/setup-php@v2 @@ -60,13 +60,15 @@ jobs: - "8.0" - "8.1" - "8.2" + - "8.3" + - "8.4" dependencies: - "prefer-lowest" - "prefer-stable" steps: - name: "Checkout" - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: "Install PHP with extensions" uses: shivammathur/setup-php@v2 @@ -87,7 +89,7 @@ jobs: steps: - name: "Checkout" - uses: actions/checkout@v2 + uses: actions/checkout@v4 - name: "Install PHP with extensions" uses: shivammathur/setup-php@v2 diff --git a/CHANGELOG.md b/CHANGELOG.md index d9d7834..95b6dab 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## Unreleased +## v6.4.0 + +### Added + +- Support `thecodingmachine/safe` 3 + ## v6.3.0 ### Added diff --git a/composer.json b/composer.json index f842e69..a5e706e 100644 --- a/composer.json +++ b/composer.json @@ -18,7 +18,7 @@ "ext-json": "*", "egulias/email-validator": "^2.1.17 || ^3 || ^4", "spatie/regex": "^1.4 || ^2 || ^3", - "thecodingmachine/safe": "^1.3 || ^2", + "thecodingmachine/safe": "^1.3 || ^2 || ^3", "webonyx/graphql-php": "^15" }, "require-dev": { diff --git a/src/DateScalar.php b/src/DateScalar.php index 6920f10..678fc56 100644 --- a/src/DateScalar.php +++ b/src/DateScalar.php @@ -29,10 +29,7 @@ public function parseValue($value): \DateTimeInterface public function parseLiteral($valueNode, ?array $variables = null): \DateTimeInterface { if (! $valueNode instanceof StringValueNode) { - throw new Error( - "Query error: Can only parse strings, got {$valueNode->kind}", - $valueNode - ); + throw new Error("Query error: Can only parse strings, got {$valueNode->kind}", $valueNode); } return $this->tryParsingDate($valueNode->value, Error::class); diff --git a/src/JSON.php b/src/JSON.php index c07d575..724fa80 100644 --- a/src/JSON.php +++ b/src/JSON.php @@ -47,9 +47,7 @@ protected function decodeJSON(mixed $value): mixed // @phpstan-ignore-next-line we attempt unsafe values and let it throw $decoded = \Safe\json_decode($value); } catch (JsonException $jsonException) { - throw new Error( - $jsonException->getMessage() - ); + throw new Error($jsonException->getMessage()); } return $decoded; diff --git a/src/Regex.php b/src/Regex.php index bc4855d..8ae26f2 100644 --- a/src/Regex.php +++ b/src/Regex.php @@ -48,9 +48,7 @@ public function serialize($value): string $stringValue = Utils::coerceToString($value, InvariantViolation::class); if (! static::matchesRegex($stringValue)) { - throw new InvariantViolation( - static::unmatchedRegexMessage($stringValue) - ); + throw new InvariantViolation(static::unmatchedRegexMessage($stringValue)); } return $stringValue; @@ -68,9 +66,7 @@ public function parseValue($value): string $stringValue = Utils::coerceToString($value, Error::class); if (! static::matchesRegex($stringValue)) { - throw new Error( - static::unmatchedRegexMessage($stringValue) - ); + throw new Error(static::unmatchedRegexMessage($stringValue)); } return $stringValue; @@ -81,10 +77,7 @@ public function parseLiteral($valueNode, ?array $variables = null): string $value = Utils::extractStringFromLiteral($valueNode); if (! static::matchesRegex($value)) { - throw new Error( - static::unmatchedRegexMessage($value), - $valueNode - ); + throw new Error(static::unmatchedRegexMessage($value), $valueNode); } return $value; diff --git a/src/StringScalar.php b/src/StringScalar.php index 727a5c3..28d2cc2 100644 --- a/src/StringScalar.php +++ b/src/StringScalar.php @@ -43,9 +43,7 @@ public function serialize($value): string $stringValue = Utils::coerceToString($value, InvariantViolation::class); if (! $this->isValid($stringValue)) { - throw new InvariantViolation( - $this->invalidStringMessage($stringValue) - ); + throw new InvariantViolation($this->invalidStringMessage($stringValue)); } return $stringValue; @@ -64,9 +62,7 @@ public function parseValue($value): string $stringValue = Utils::coerceToString($value, Error::class); if (! $this->isValid($stringValue)) { - throw new Error( - $this->invalidStringMessage($stringValue) - ); + throw new Error($this->invalidStringMessage($stringValue)); } return $stringValue; @@ -77,10 +73,7 @@ public function parseLiteral($valueNode, ?array $variables = null): string $stringValue = Utils::extractStringFromLiteral($valueNode); if (! $this->isValid($stringValue)) { - throw new Error( - $this->invalidStringMessage($stringValue), - $valueNode - ); + throw new Error($this->invalidStringMessage($stringValue), $valueNode); } return $stringValue; diff --git a/src/Utils.php b/src/Utils.php index ddfc99a..0a44b2a 100644 --- a/src/Utils.php +++ b/src/Utils.php @@ -28,10 +28,7 @@ public static function canBeString(mixed $value): bool public static function extractStringFromLiteral(Node $valueNode): string { if (! $valueNode instanceof StringValueNode) { - throw new Error( - "Query error: Can only parse strings got: {$valueNode->kind}", - $valueNode - ); + throw new Error("Query error: Can only parse strings got: {$valueNode->kind}", $valueNode); } return $valueNode->value;