From 779d58c4f9ec6d8729e3045a44080247ba38245d Mon Sep 17 00:00:00 2001 From: Filip Halaxa Date: Mon, 7 Oct 2024 21:49:15 +0200 Subject: [PATCH] Support for PHP 8.4, dropped support for PHP < 7.2 --- Makefile | 5 ++--- build/build-image.sh | 2 +- build/composer-lt-7.2.json | 20 -------------------- build/composer-update.sh | 10 ++-------- composer.json | 2 +- src/ItemsOptions.php | 2 +- src/Parser.php | 4 ++-- 7 files changed, 9 insertions(+), 36 deletions(-) delete mode 100644 build/composer-lt-7.2.json diff --git a/Makefile b/Makefile index a4f6d5d..27afa1d 100644 --- a/Makefile +++ b/Makefile @@ -5,15 +5,14 @@ LATEST_PHP := 8.0 3.1.1 COVERAGE_PHP := 7.4 3.1.1 define PHP_VERSIONS -"7.0 2.7.2"\ -"7.1 2.9.8"\ "7.2 3.1.1"\ "7.3 3.1.1"\ "7.4 3.1.1"\ "8.0 3.1.1"\ "8.1 3.1.1"\ "8.2 3.2.0"\ -"8.3-rc 3.3.0alpha3" +"8.3 3.3.2"\ +"8.4-rc 3.4.0beta1" endef define DOCKER_RUN diff --git a/build/build-image.sh b/build/build-image.sh index bef1785..f541f8f 100755 --- a/build/build-image.sh +++ b/build/build-image.sh @@ -37,7 +37,7 @@ printf " && pecl install xdebug-$XDEBUG_VERSION \ && docker-php-ext-enable xdebug \ && docker-php-ext-enable opcache \ - && wget https://getcomposer.org/download/2.2.18/composer.phar -O /usr/local/bin/composer \ + && wget https://getcomposer.org/download/2.8.1/composer.phar -O /usr/local/bin/composer \ && chmod +x /usr/local/bin/composer " | docker build --quiet --tag "$CONTAINER_NAME" - > /dev/null diff --git a/build/composer-lt-7.2.json b/build/composer-lt-7.2.json deleted file mode 100644 index 6d6ba1f..0000000 --- a/build/composer-lt-7.2.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "name": "halaxa/json-machine", - "config": { - "lock": false, - "sort-packages": true - }, - "require": { - "php": "<7.2" - }, - "require-dev": { - "ext-json": "*", - "phpunit/phpunit": "^5.0" - }, - "autoload": { - "psr-4": {"JsonMachine\\": "src/"} - }, - "autoload-dev": { - "psr-4": {"JsonMachineTest\\": "test/JsonMachineTest"} - } -} diff --git a/build/composer-update.sh b/build/composer-update.sh index 77da018..fe46c0b 100755 --- a/build/composer-update.sh +++ b/build/composer-update.sh @@ -1,10 +1,4 @@ #!/usr/bin/env sh -if [ $(php -r "echo PHP_VERSION_ID;") -lt 70200 ] -then - set -x - COMPOSER=build/composer-lt-7.2.json composer --quiet update -else - set -x - composer --quiet update -fi +set -x +composer --quiet update diff --git a/composer.json b/composer.json index aba62e7..670651c 100644 --- a/composer.json +++ b/composer.json @@ -21,7 +21,7 @@ "sort-packages": true }, "require": { - "php": "7.0 - 8.3" + "php": "7.2 - 8.4" }, "require-dev": { "ext-json": "*", diff --git a/src/ItemsOptions.php b/src/ItemsOptions.php index e0b9d68..61ba626 100644 --- a/src/ItemsOptions.php +++ b/src/ItemsOptions.php @@ -59,7 +59,7 @@ class ItemsOptions extends \ArrayObject return $pointer; } - private function opt_decoder(ItemDecoder $decoder = null) + private function opt_decoder(?ItemDecoder $decoder = null) { return $decoder; } diff --git a/src/Parser.php b/src/Parser.php index 2c8326f..02faee1 100644 --- a/src/Parser.php +++ b/src/Parser.php @@ -54,11 +54,11 @@ class Parser implements \IteratorAggregate, PositionAware /** * @param array|string $jsonPointer Follows json pointer RFC https://tools.ietf.org/html/rfc6901 - * @param ItemDecoder $jsonDecoder + * @param ?ItemDecoder $jsonDecoder * * @throws InvalidArgumentException */ - public function __construct(Traversable $tokens, $jsonPointer = '', ItemDecoder $jsonDecoder = null) + public function __construct(Traversable $tokens, $jsonPointer = '', ?ItemDecoder $jsonDecoder = null) { $jsonPointers = (new ValidJsonPointers((array) $jsonPointer))->toArray();