diff --git a/.github/workflows/analyzers.yaml b/.github/workflows/analyzers.yaml index b67d45e..42ff949 100644 --- a/.github/workflows/analyzers.yaml +++ b/.github/workflows/analyzers.yaml @@ -7,7 +7,8 @@ jobs: strategy: matrix: operating-system: [ubuntu-latest] - php-versions: ['8.1', '8.2', '8.3'] + php-versions: [ '8.2', '8.3', '8.4' ] + composer-options: [ '--ignore-platform-req=php+' ] fail-fast: false name: PHP ${{ matrix.php-versions }} @ ${{ matrix.operating-system }} steps: diff --git a/.github/workflows/code-style.yaml b/.github/workflows/code-style.yaml index 923d306..65e0c34 100644 --- a/.github/workflows/code-style.yaml +++ b/.github/workflows/code-style.yaml @@ -7,7 +7,8 @@ jobs: strategy: matrix: operating-system: [ubuntu-latest] - php-versions: ['8.1', '8.2', '8.3'] + php-versions: [ '8.2', '8.3', '8.4' ] + composer-options: [ '--ignore-platform-req=php+' ] fail-fast: false name: PHP ${{ matrix.php-versions }} @ ${{ matrix.operating-system }} steps: diff --git a/.github/workflows/tests.yaml b/.github/workflows/tests.yaml index 5ca67f3..f819719 100644 --- a/.github/workflows/tests.yaml +++ b/.github/workflows/tests.yaml @@ -7,7 +7,8 @@ jobs: strategy: matrix: operating-system: [ubuntu-latest] - php-versions: ['8.1', '8.2', '8.3'] + php-versions: [ '8.2', '8.3', '8.4' ] + composer-options: [ '--ignore-platform-req=php+' ] dependency-preference: ['current', 'lowest', 'stable'] fail-fast: false name: PHP ${{ matrix.php-versions }} ${{ matrix.dependency-preference }} deps @ ${{ matrix.operating-system }} @@ -21,6 +22,6 @@ jobs: tools: 'composer:v2' extensions: pcov, mbstring, posix, dom, soap - name: Install dependencies - run: composer update --prefer-dist --no-progress --no-suggest ${{ matrix.dependency-preference == 'lowest' && '--prefer-lowest' || '' }} ${{ matrix.dependency-preference == 'stable' && '--prefer-stable' || '' }} + run: composer update --prefer-dist --no-progress --no-suggest ${{ matrix.dependency-preference == 'lowest' && '--prefer-lowest' || '' }} ${{ matrix.dependency-preference == 'stable' && '--prefer-stable' || '' }} ${{ matrix.composer-options }} - name: Run the tests run: ./vendor/bin/phpunit diff --git a/.phive/phars.xml b/.phive/phars.xml index e3b38d5..4aa93da 100644 --- a/.phive/phars.xml +++ b/.phive/phars.xml @@ -1,4 +1,4 @@ - + diff --git a/.php-cs-fixer.dist.php b/.php-cs-fixer.dist.php index f246a54..763952b 100644 --- a/.php-cs-fixer.dist.php +++ b/.php-cs-fixer.dist.php @@ -55,5 +55,6 @@ 'strict_comparison' => true, 'strict_param' => true, 'native_function_invocation' => true, + 'nullable_type_declaration_for_default_null_value' => true, ]) ; diff --git a/composer.json b/composer.json index 2ae4f09..221170e 100644 --- a/composer.json +++ b/composer.json @@ -20,22 +20,22 @@ } ], "require": { - "php": "~8.1.0 || ~8.2.0 || ~8.3.0", - "azjezz/psl": "^2.9.0", - "veewee/reflecta": "~0.6", - "veewee/xml": "^3.1", - "php-soap/engine": "^2.9", - "php-soap/wsdl": "^1.6", - "php-soap/xml": "^1.7", - "php-soap/wsdl-reader": "~0.15" + "php": "~8.2.0 || ~8.3.0 || ~8.4.0", + "azjezz/psl": "^3.0", + "veewee/reflecta": "~0.10", + "veewee/xml": "^3.3", + "php-soap/engine": "^2.13", + "php-soap/wsdl": "^1.12", + "php-soap/xml": "^1.8", + "php-soap/wsdl-reader": "~0.18" }, "require-dev": { - "vimeo/psalm": "^5.16", + "vimeo/psalm": "^5.26", "phpunit/phpunit": "^10.5", "symfony/var-dumper": "^7.0 || ^6.4", "php-standard-library/psalm-plugin": "^2.3", - "php-soap/engine-integration-tests": "^1.8.1", - "php-soap/psr18-transport": "^1.6", + "php-soap/engine-integration-tests": "^1.9", + "php-soap/psr18-transport": "^1.7", "guzzlehttp/guzzle": "^7.8" }, "config": { diff --git a/src/Exception/RestrictionException.php b/src/Exception/RestrictionException.php index 33fef0a..5f0979e 100644 --- a/src/Exception/RestrictionException.php +++ b/src/Exception/RestrictionException.php @@ -8,6 +8,7 @@ use Soap\Encoding\Formatter\QNameFormatter; use Soap\Engine\Metadata\Model\XsdType; use function is_scalar; +use function sprintf; final class RestrictionException extends InvalidArgumentException implements ExceptionInterface { diff --git a/src/TypeInference/XsiTypeDetector.php b/src/TypeInference/XsiTypeDetector.php index 614ceed..14a3e8a 100644 --- a/src/TypeInference/XsiTypeDetector.php +++ b/src/TypeInference/XsiTypeDetector.php @@ -17,6 +17,7 @@ use function is_string; use function Psl\Option\none; use function Psl\Option\some; +use function sprintf; final class XsiTypeDetector { diff --git a/tools/php-cs-fixer.phar b/tools/php-cs-fixer.phar index efc1559..d071fa5 100755 Binary files a/tools/php-cs-fixer.phar and b/tools/php-cs-fixer.phar differ