From 7de90e5a54162f58a4c5bd2d56c9de06f06d0dd1 Mon Sep 17 00:00:00 2001 From: "reactphp-parallel-renovate-runner[bot]" <226772824+reactphp-parallel-renovate-runner[bot]@users.noreply.github.com> Date: Sun, 19 Apr 2026 20:23:40 +0000 Subject: [PATCH] Update dependency wyrihaximus/async-test-utilities to v12 --- .gitattributes | 15 +- Makefile | 30 +- README.md | 2 +- composer.json | 14 +- composer.lock | 1735 +++++++++++++++++++++----------------- etc/qa/phpstan.neon | 15 - src/AbstractPoolTest.php | 7 + 7 files changed, 989 insertions(+), 829 deletions(-) diff --git a/.gitattributes b/.gitattributes index 6105002..5061bf9 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,9 +1,22 @@ # Set the default behavior, in case people don't have core.autocrlf set. * text eol=lf +# These files are binary and should be left untouched +# (binary is a macro for -text -diff) +*.png binary +*.jpg binary +*.jpeg binary +*.gif binary +*.ico binary +*.webp binary +*.bmp binary +*.ttf binary + # Ignoring files for distribution archieves .github/ export-ignore -etc/ export-ignore +etc/ci/ export-ignore +etc/dev-app/ export-ignore +etc/qa/ export-ignore examples/ export-ignore tests/ export-ignore var/ export-ignore diff --git a/Makefile b/Makefile index 286f020..f0b790b 100644 --- a/Makefile +++ b/Makefile @@ -5,14 +5,14 @@ SHELL=bash DOCKER_AVAILABLE=$(shell ((command -v docker >/dev/null 2>&1) && echo 0 || echo 1)) CONTAINER_REGISTRY_REPO="ghcr.io/wyrihaximusnet/php" -COMPOSER_SHOW_EXTENSION_LIST_PROD=$(shell (((command -v composer >/dev/null 2>&1) && composer show -t --no-plugins) || docker run --rm -v "`pwd`:`pwd`" -w `pwd` ${CONTAINER_REGISTRY_REPO}:8.4-nts-alpine-slim-dev composer show -t --no-plugins) | grep -o "\-\-\(ext-\).\+" | sort | uniq | cut -d- -f4- | tr -d '\n' | grep . | sed '/^$$/d' | xargs | sed -e 's/ /, /g' | tr -cd '[:alnum:],' | sed 's/.$$//') -COMPOSER_SHOW_EXTENSION_LIST_DEV=$(shell (((command -v composer >/dev/null 2>&1) && composer show -s --no-plugins) || docker run --rm -v "`pwd`:`pwd`" -w `pwd` ${CONTAINER_REGISTRY_REPO}:8.4-nts-alpine-slim-dev composer show -s --no-plugins) | grep -o "\(ext-\).\+" | sort | uniq | cut -d- -f2- | cut -d" " -f1 | xargs | sed -e 's/ /, /g' | tr -cd '[:alnum:],') +COMPOSER_SHOW_EXTENSION_LIST_PROD=$(shell (((command -v composer >/dev/null 2>&1) && composer show -t --no-plugins 2>/dev/null) || docker run --rm -v "`pwd`:`pwd`" -w `pwd` ${CONTAINER_REGISTRY_REPO}:8.4-nts-alpine-slim-dev composer show -t --no-plugins) | grep -o "\-\-\(ext-\).\+" | sort | uniq | cut -d- -f4- | tr -d '\n' | grep . | sed '/^$$/d' | xargs | sed -e 's/ /, /g' | tr -cd '[:alnum:],' | sed 's/.$$//') +COMPOSER_SHOW_EXTENSION_LIST_DEV=$(shell (((command -v composer >/dev/null 2>&1) && composer show -s --no-plugins 2>/dev/null) || docker run --rm -v "`pwd`:`pwd`" -w `pwd` ${CONTAINER_REGISTRY_REPO}:8.4-nts-alpine-slim-dev composer show -s --no-plugins) | grep -o "\(ext-\).\+" | sort | uniq | cut -d- -f2- | cut -d" " -f1 | xargs | sed -e 's/ /, /g' | tr -cd '[:alnum:],') COMPOSER_SHOW_EXTENSION_LIST=$(shell echo "${COMPOSER_SHOW_EXTENSION_LIST_PROD},${COMPOSER_SHOW_EXTENSION_LIST_DEV}") SLIM_DOCKER_IMAGE=$(shell php -r 'echo count(array_intersect(["gd", "vips"], explode(",", "${COMPOSER_SHOW_EXTENSION_LIST}"))) > 0 ? "" : "-slim";') NTS_OR_ZTS_DOCKER_IMAGE=$(shell php -r 'echo count(array_intersect(["parallel"], explode(",", "${COMPOSER_SHOW_EXTENSION_LIST}"))) > 0 ? "zts" : "nts";') PHP_VERSION:=$(shell (((command -v docker >/dev/null 2>&1) && docker run --rm -v "`pwd`:`pwd`" ${CONTAINER_REGISTRY_REPO}:8.4-nts-alpine-slim php -r "echo json_decode(file_get_contents('`pwd`/composer.json'), true)['config']['platform']['php'];") || echo "8.3") | php -r "echo str_replace('|', '.', explode('.', implode('|', explode('.', stream_get_contents(STDIN), 2)), 2)[0]);") CONTAINER_NAME=$(shell echo "${CONTAINER_REGISTRY_REPO}:${PHP_VERSION}-${NTS_OR_ZTS_DOCKER_IMAGE}-alpine${SLIM_DOCKER_IMAGE}-dev") -COMPOSER_CACHE_DIR=$(shell (command -v composer >/dev/null 2>&1) && composer config --global cache-dir -q || echo ${HOME}/.composer-php/cache) +COMPOSER_CACHE_DIR=$(shell (command -v composer >/dev/null 2>&1) && composer config --global cache-dir -q 2>/dev/null || echo ${HOME}/.composer-php/cache) COMPOSER_CONTAINER_CACHE_DIR=$(shell ((command -v docker >/dev/null 2>&1) && docker run --rm -it ${CONTAINER_NAME} composer config --global cache-dir -q) || echo ${HOME}/.composer-php/cache) ifneq ("$(wildcard /.you-are-in-a-wyrihaximus.net-php-docker-image)","") @@ -46,12 +46,12 @@ endif all: ## Runs everything #### $(DOCKER_RUN) make all-raw all-raw: ## The real runs everything, but due to sponge it has to be ran inside DOCKER_RUN ##U## - ((shell command -v sponge >/dev/null 2>&1) && (sh -c '$(shell printf "%s %s" $(MAKE) $(shell cat $(MAKEFILE_LIST) | grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' | grep -v "##*I*##" | grep -v "####" | grep -v "##U##" | awk 'BEGIN {FS = ":.*?## "}; {printf "%s\n", $$1}' | sponge | tr '\r\n' '_') | tr '_' ' ')') || (grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' $(MAKEFILE_LIST) | grep -v "##*I*##" | grep -v "####" | grep -v "##U##" | awk 'BEGIN {FS = ":.*?## "}; {printf "%s\n", $$1}' | xargs -o $(MAKE))) + $(MAKE) syntax-php rector-upgrade cs-fix cs stan unit-testing mutation-testing composer-require-checker composer-unused backward-compatibility-check ## Count: 10 ## Temporary set of migrations to get all my repos in shape migrations-git-enforce-gitattributes-contents: #### Enforce .gitattributes contents ##*I*## - ($(DOCKER_RUN) php -r 'file_put_contents(".gitattributes", base64_decode("IyBTZXQgdGhlIGRlZmF1bHQgYmVoYXZpb3IsIGluIGNhc2UgcGVvcGxlIGRvbid0IGhhdmUgY29yZS5hdXRvY3JsZiBzZXQuCiogdGV4dCBlb2w9bGYKCiMgSWdub3JpbmcgZmlsZXMgZm9yIGRpc3RyaWJ1dGlvbiBhcmNoaWV2ZXMKLmdpdGh1Yi8gZXhwb3J0LWlnbm9yZQpldGMvIGV4cG9ydC1pZ25vcmUKZXhhbXBsZXMvIGV4cG9ydC1pZ25vcmUKdGVzdHMvIGV4cG9ydC1pZ25vcmUKdmFyLyBleHBvcnQtaWdub3JlCi5kZXZjb250YWluZXIuanNvbiBleHBvcnQtaWdub3JlCi5lZGl0b3Jjb25maWcgZXhwb3J0LWlnbm9yZQouZ2l0YXR0cmlidXRlcyBleHBvcnQtaWdub3JlCi5naXRpZ25vcmUgZXhwb3J0LWlnbm9yZQpDT05UUklCVVRJTkcubWQgZXhwb3J0LWlnbm9yZQpjb21wb3Nlci5sb2NrIGV4cG9ydC1pZ25vcmUKTWFrZWZpbGUgZXhwb3J0LWlnbm9yZQpSRUFETUUubWQgZXhwb3J0LWlnbm9yZQoKIyBEaWZmaW5nCioucGhwIGRpZmY9cGhwCg=="));' || true) + ($(DOCKER_RUN) php -r 'file_put_contents(".gitattributes", base64_decode("IyBTZXQgdGhlIGRlZmF1bHQgYmVoYXZpb3IsIGluIGNhc2UgcGVvcGxlIGRvbid0IGhhdmUgY29yZS5hdXRvY3JsZiBzZXQuCiogdGV4dCBlb2w9bGYKCiMgVGhlc2UgZmlsZXMgYXJlIGJpbmFyeSBhbmQgc2hvdWxkIGJlIGxlZnQgdW50b3VjaGVkCiMgKGJpbmFyeSBpcyBhIG1hY3JvIGZvciAtdGV4dCAtZGlmZikKKi5wbmcgYmluYXJ5CiouanBnIGJpbmFyeQoqLmpwZWcgYmluYXJ5CiouZ2lmIGJpbmFyeQoqLmljbyBiaW5hcnkKKi53ZWJwIGJpbmFyeQoqLmJtcCBiaW5hcnkKKi50dGYgYmluYXJ5CgojIElnbm9yaW5nIGZpbGVzIGZvciBkaXN0cmlidXRpb24gYXJjaGlldmVzCi5naXRodWIvIGV4cG9ydC1pZ25vcmUKZXRjL2NpLyBleHBvcnQtaWdub3JlCmV0Yy9kZXYtYXBwLyBleHBvcnQtaWdub3JlCmV0Yy9xYS8gZXhwb3J0LWlnbm9yZQpleGFtcGxlcy8gZXhwb3J0LWlnbm9yZQp0ZXN0cy8gZXhwb3J0LWlnbm9yZQp2YXIvIGV4cG9ydC1pZ25vcmUKLmRldmNvbnRhaW5lci5qc29uIGV4cG9ydC1pZ25vcmUKLmVkaXRvcmNvbmZpZyBleHBvcnQtaWdub3JlCi5naXRhdHRyaWJ1dGVzIGV4cG9ydC1pZ25vcmUKLmdpdGlnbm9yZSBleHBvcnQtaWdub3JlCkNPTlRSSUJVVElORy5tZCBleHBvcnQtaWdub3JlCmNvbXBvc2VyLmxvY2sgZXhwb3J0LWlnbm9yZQpNYWtlZmlsZSBleHBvcnQtaWdub3JlClJFQURNRS5tZCBleHBvcnQtaWdub3JlCgojIERpZmZpbmcKKi5waHAgZGlmZj1waHAK"));' || true) migrations-git-make-sure-gitignore-exists: #### Make sure .gitignore exists ##*I*## ($(DOCKER_RUN) touch .gitignore || true) @@ -264,13 +264,13 @@ migrations-renovate-point-at-correct-config: #### Ensure .github/renovate.json p ## Our default jobs -on-install-or-update: ## Runs everything #### - ((shell command -v sponge >/dev/null 2>&1) && (sh -c '$(shell printf "%s %s" $(MAKE) $(shell cat $(MAKEFILE_LIST) | grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' | grep -E "##\*(I|ILH)\*##" | awk 'BEGIN {FS = ":.*?## "}; {printf "%s\n", $$1}' | sponge | tr '\r\n' '_') | tr '_' ' ')') || (grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' $(MAKEFILE_LIST) | grep -E "##\*(I|ILH)\*##" | awk 'BEGIN {FS = ":.*?## "}; {printf "%s\n", $$1}' | xargs -o $(MAKE))) +on-install-or-update: ## Tasks, like migrations, that specifically have be run after composer install or update. These will also run by self hosted Renovate #### + $(MAKE) migrations-git-enforce-gitattributes-contents migrations-git-make-sure-gitignore-exists migrations-git-make-sure-gitignore-ignores-var migrations-git-make-sure-gitignore-excludes-var-gitkeep migrations-php-make-sure-var-exists migrations-php-make-sure-var-gitkeep-exists migrations-php-make-sure-etc-exists migrations-php-make-sure-etc-ci-exists migrations-php-make-sure-etc-qa-exists migrations-php-move-psalm-xml-config-to-etc migrations-php-remove-psalm-xml-config migrations-php-remove-old-phpunit-xml-dist-config migrations-php-remove-old-phpunit-xml-config migrations-php-ensure-etc-ci-markdown-link-checker-json-exists migrations-php-move-infection-config-to-etc migrations-php-infection-create-config-if-not-exists migrations-php-remove-phpunit-config-dir-from-infection migrations-php-fix-logs-relative-paths-for-infection migrations-php-infection-ensure-log-text-has-the-correct-path migrations-php-infection-ensure-log-summary-has-the-correct-path migrations-php-infection-ensure-log-json-has-the-correct-path migrations-php-infection-ensure-log-per-mutator-has-the-correct-path migrations-php-add-github-true-to-for-infection migrations-php-set-phpunit-ensure-config-file-exists migrations-php-set-phpunit-xsd-path-to-local migrations-php-move-phpstan migrations-php-set-phpstan-ensure-config-file-exists migrations-php-set-phpstan-uncomment-parameters migrations-php-set-phpstan-add-parameters-if-it-isnt-present-in-the-config-file migrations-php-set-phpstan-paths-in-config migrations-php-set-phpstan-level-max-in-config migrations-php-set-phpstan-resolve-ergebnis-noExtends-classesAllowedToBeExtended migrations-php-set-phpstan-drop-checkGenericClassInNonGenericObjectType migrations-php-phpstan-add-prefix-for-anything-that-starts-with-vendor-in-a-list migrations-php-set-phpstan-drop-include-test-utilities-rules migrations-php-set-phpstan-drop-include-async-test-utilities-rules migrations-php-set-rector-create-config-if-not-exists migrations-php-composer-unused-create-config-if-not-exists migrations-php-composer-unused-drop-commented-out-line-scattered-across-my-repos migrations-php-move-phpcs migrations-php-move-phpcs-not-dist migrations-php-set-phpcs-ensure-config-file-exists migrations-php-phpcs-make-basepath-is-correct-relatively migrations-php-phpcs-make-cache-is-correct-relatively migrations-php-phpcs-make-sure-config-has-correct-relative-path-for-etc migrations-php-phpcs-make-sure-etc-has-no-trailing-slash migrations-php-phpcs-make-sure-config-has-correct-relative-path-for-src migrations-php-phpcs-make-sure-src-has-no-trailing-slash migrations-php-phpcs-make-sure-config-has-correct-relative-path-for-tests migrations-php-phpcs-make-sure-tests-has-no-trailing-slash migrations-php-phpcs-make-sure-etc-is-ran-through migrations-php-move-composer-require-checker migrations-php-composer-require-checker-create-config-if-not-exists migrations-php-make-sure-github-exists migrations-github-codeowners migrations-php-make-sure-github-workflows-exists migrations-github-actions-remove-composer-diff migrations-github-actions-remove-markdown-check-links migrations-github-actions-remove-markdown-craft-release migrations-github-actions-remove-set-milestone-on-pr migrations-github-actions-move-ci migrations-github-actions-remove-ci-if-its-old-style-php-ci-workflow migrations-github-actions-create-ci-if-not-exists migrations-github-actions-move-release-management migrations-github-actions-fix-management-in-release-management-referenced-workflow-file migrations-github-actions-create-release-management-if-not-exists migrations-renovate-remove-dependabot-config migrations-renovate-move-config migrations-renovate-create-config-if-not-exists migrations-renovate-point-at-correct-config syntax-php composer-normalize rector-upgrade cs-fix ## Count: 74 syntax-php: ## Lint PHP syntax ##*ILH*## $(DOCKER_RUN) vendor/bin/parallel-lint --exclude vendor . -composer-normalize: ### Normalize composer.json ##*I*## +composer-normalize: #### Normalize composer.json ##*I*## $(DOCKER_RUN) composer normalize $(DOCKER_RUN) COMPOSER_DISABLE_NETWORK=1 composer update --lock --no-scripts || $(DOCKER_RUN) composer update --lock --no-scripts @@ -287,10 +287,10 @@ stan: ## Run static analysis (PHPStan) ##*LCH*## $(DOCKER_RUN) vendor/bin/phpstan analyse --ansi --configuration=./etc/qa/phpstan.neon unit-testing: ## Run tests ##*A*## - $(DOCKER_RUN) vendor/bin/phpunit --colors=always -c ./etc/qa/phpunit.xml --coverage-text --coverage-html ./var/tests-unit-coverage-html --coverage-clover ./var/tests-unit-clover-coverage.xml + $(DOCKER_RUN) vendor/bin/phpunit --colors=always -c ./etc/qa/phpunit.xml $(shell $(DOCKER_RUN) php -r 'if (function_exists("xdebug_get_code_coverage")) { echo " --coverage-text --coverage-html ./var/tests-unit-coverage-html --coverage-clover ./var/tests-unit-clover-coverage.xml"; }') unit-testing-raw: ## Run tests ##*D*## #### - php vendor/phpunit/phpunit/phpunit --colors=always -c ./etc/qa/phpunit.xml --coverage-text --coverage-html ./var/tests-unit-coverage-html --coverage-clover ./var/tests-unit-clover-coverage.xml + php vendor/phpunit/phpunit/phpunit --colors=always -c ./etc/qa/phpunit.xml $(shell php -r 'if (function_exists("xdebug_get_code_coverage")) { echo " --coverage-text --coverage-html ./var/tests-unit-coverage-html --coverage-clover ./var/tests-unit-clover-coverage.xml"; }') mutation-testing: ## Run mutation testing ##*LCH*## $(DOCKER_RUN) vendor/bin/infection --ansi --log-verbosity=all --ignore-msi-with-no-mutations --configuration=./etc/qa/infection.json5 --static-analysis-tool=phpstan --static-analysis-tool-options="--memory-limit=-1" --threads=$(THREADS) || (cat ./var/infection.log && false) @@ -327,17 +327,17 @@ help: ## Show this help #### @grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' $(MAKEFILE_LIST) | grep -v "##U##" | sort | awk 'BEGIN {FS = ":.*?## "}; {printf " \033[32m%-32s\033[0m %s\n", $$1, $$2}' | tr -d '#' task-list-ci-all: ## CI: Generate a JSON array of jobs to run on all variations - @grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' $(MAKEFILE_LIST) | grep -E "##\*A\*##" | grep -v "##U##" | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "%s\n", $$1}' | jq --raw-input --slurp -c 'split("\n")| .[0:-1]' + @echo "[\"syntax-php\",\"cs\",\"stan\",\"unit-testing\",\"mutation-testing\",\"composer-require-checker\",\"composer-unused\",\"backward-compatibility-check\"]" ## Count: 8 task-list-ci-dos: ## CI: Generate a JSON array of jobs to run Directly on the OS variations - @grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' $(MAKEFILE_LIST) | grep -E "##\*D\*##" | grep -v "##U##" | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "%s\n", $$1}' | jq --raw-input --slurp -c 'split("\n")| .[0:-1]' + @echo "[\"unit-testing-raw\"]" ## Count: 1 task-list-ci-low: ## CI: Generate a JSON array of jobs to run against the lowest dependencies on the primary threading target - @grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' $(MAKEFILE_LIST) | grep -E "##\*(L|LC|LCH|LH)\*##" | grep -v "###" | grep -v "##U##" | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "%s\n", $$1}' | jq --raw-input --slurp -c 'split("\n")| .[0:-1]' + @echo "[\"syntax-php\",\"cs\",\"stan\",\"mutation-testing\"]" ## Count: 4 task-list-ci-locked: ## CI: Generate a JSON array of jobs to run against the locked dependencies on the primary threading target - @grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' $(MAKEFILE_LIST) | grep -E "##\*(C|LC|LCH|CH)\*##" | grep -v "###" | grep -v "##U##" | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "%s\n", $$1}' | jq --raw-input --slurp -c 'split("\n")| .[0:-1]' + @echo "[\"cs\",\"stan\",\"mutation-testing\",\"composer-require-checker\",\"composer-unused\",\"backward-compatibility-check\"]" ## Count: 6 task-list-ci-high: ## CI: Generate a JSON array of jobs to run against the highest dependencies on the primary threading target - @grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' $(MAKEFILE_LIST) | grep -E "##\*(H|LH|LCH|LC)\*##" | grep -v "###" | grep -v "##U##" | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "%s\n", $$1}' | jq --raw-input --slurp -c 'split("\n")| .[0:-1]' + @echo "[\"syntax-php\",\"cs\",\"stan\",\"mutation-testing\"]" ## Count: 4 diff --git a/README.md b/README.md index 362ae42..5e64574 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ composer require react-parallel/pool-tests --dev ## License ## -Copyright 2024 [Cees-Jan Kiewiet](http://wyrihaximus.net/) +Copyright 2026 [Cees-Jan Kiewiet](http://wyrihaximus.net/) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation diff --git a/composer.json b/composer.json index b4bd4df..0421b5d 100644 --- a/composer.json +++ b/composer.json @@ -12,18 +12,18 @@ "require": { "php": "^8.4", "ext-parallel": "*", - "moneyphp/money": "^4.7.0", - "phpunit/phpunit": "^12.1.6", + "moneyphp/money": "^4.8.0", + "phpunit/phpunit": "^12.5.24", "react-parallel/contracts": "^2.1.0", "react-parallel/event-loop": "^2.1.0", - "react/event-loop": "^1.5", - "react/promise": "^3.2", - "wyrihaximus/async-test-utilities": "^10.5.0", + "react/event-loop": "^1.6.0", + "react/promise": "^3.3.0", + "wyrihaximus/async-test-utilities": "^12.2.0", "wyrihaximus/pool-info": "^2.0" }, "require-dev": { - "react-parallel/runtime": "^3", - "wyrihaximus/makefiles": "^0.7.11" + "react-parallel/runtime": "^3.1.0", + "wyrihaximus/makefiles": "^0.7.16" }, "autoload": { "psr-4": { diff --git a/composer.lock b/composer.lock index 9618eef..d7df5dc 100644 --- a/composer.lock +++ b/composer.lock @@ -4,20 +4,20 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "a987a5175443860779e15ab65bb965a7", + "content-hash": "796e7bbfa5c3bd448d6e9118e9f05c52", "packages": [ { "name": "azjezz/psl", - "version": "4.1.0", + "version": "4.3.0", "source": { "type": "git", - "url": "https://github.com/azjezz/psl.git", - "reference": "8b962895814bd665f0eac10b1f53c836fbcecdca" + "url": "https://github.com/php-standard-library/php-standard-library.git", + "reference": "74c95be0214eb7ea39146ed00ac4eb71b45d787b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/azjezz/psl/zipball/8b962895814bd665f0eac10b1f53c836fbcecdca", - "reference": "8b962895814bd665f0eac10b1f53c836fbcecdca", + "url": "https://api.github.com/repos/php-standard-library/php-standard-library/zipball/74c95be0214eb7ea39146ed00ac4eb71b45d787b", + "reference": "74c95be0214eb7ea39146ed00ac4eb71b45d787b", "shasum": "" }, "require": { @@ -26,11 +26,11 @@ "ext-json": "*", "ext-mbstring": "*", "ext-sodium": "*", - "php": "~8.3.0 || ~8.4.0", + "php": "~8.3.0 || ~8.4.0 || ~8.5.0", "revolt/event-loop": "^1.0.7" }, "require-dev": { - "carthage-software/mago": "^1.0.0-beta.32", + "carthage-software/mago": "^1.6.0", "infection/infection": "^0.31.2", "php-coveralls/php-coveralls": "^2.7.0", "phpbench/phpbench": "^1.4.0", @@ -67,8 +67,8 @@ ], "description": "PHP Standard Library", "support": { - "issues": "https://github.com/azjezz/psl/issues", - "source": "https://github.com/azjezz/psl/tree/4.1.0" + "issues": "https://github.com/php-standard-library/php-standard-library/issues", + "source": "https://github.com/php-standard-library/php-standard-library/tree/4.3.0" }, "funding": [ { @@ -80,7 +80,8 @@ "type": "github" } ], - "time": "2025-10-23T11:34:56+00:00" + "abandoned": "php-standard-library/php-standard-library", + "time": "2026-02-24T01:58:53+00:00" }, { "name": "beberlei/assert", @@ -285,16 +286,16 @@ }, { "name": "composer-unused/symbol-parser", - "version": "0.3.1", + "version": "0.3.3", "source": { "type": "git", "url": "https://github.com/composer-unused/symbol-parser.git", - "reference": "a55ecd3c10867be27a2eabf31cd1600160d250ae" + "reference": "afa62007cca768bd1ecbc0e8ed347c675c239410" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer-unused/symbol-parser/zipball/a55ecd3c10867be27a2eabf31cd1600160d250ae", - "reference": "a55ecd3c10867be27a2eabf31cd1600160d250ae", + "url": "https://api.github.com/repos/composer-unused/symbol-parser/zipball/afa62007cca768bd1ecbc0e8ed347c675c239410", + "reference": "afa62007cca768bd1ecbc0e8ed347c675c239410", "shasum": "" }, "require": { @@ -304,16 +305,17 @@ "phpstan/phpdoc-parser": "^1.25 || ^2", "psr/container": "^1.0 || ^2.0", "psr/log": "^1.1 || ^2 || ^3", - "symfony/finder": "^5.3 || ^6.0 || ^7.0" + "symfony/finder": "^5.3 || ^6.0 || ^7.0 || ^8.0" }, "require-dev": { - "ergebnis/composer-normalize": "^2.45", + "ergebnis/composer-normalize": "^2.49", "ext-ds": "*", "phpstan/phpstan": "^2.1", - "phpunit/phpunit": "^9.6.10 || ^10.5", + "phpunit/phpunit": "^10.5", "roave/security-advisories": "dev-master", - "squizlabs/php_codesniffer": "^3.11.3", - "symfony/serializer": "^5.4" + "squizlabs/php_codesniffer": "^4.0.1", + "symfony/property-access": "^5.4 || ^6.0 || ^7.0 || ^8.0", + "symfony/serializer": "^5.4 || ^6.0 || ^7.0 || ^8.0" }, "type": "library", "autoload": { @@ -352,20 +354,20 @@ "type": "other" } ], - "time": "2025-03-19T09:13:50+00:00" + "time": "2026-01-29T13:38:57+00:00" }, { "name": "composer/ca-bundle", - "version": "1.5.8", + "version": "1.5.11", "source": { "type": "git", "url": "https://github.com/composer/ca-bundle.git", - "reference": "719026bb30813accb68271fee7e39552a58e9f65" + "reference": "68ff39175e8e94a4bb1d259407ce51a6a60f09e6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/ca-bundle/zipball/719026bb30813accb68271fee7e39552a58e9f65", - "reference": "719026bb30813accb68271fee7e39552a58e9f65", + "url": "https://api.github.com/repos/composer/ca-bundle/zipball/68ff39175e8e94a4bb1d259407ce51a6a60f09e6", + "reference": "68ff39175e8e94a4bb1d259407ce51a6a60f09e6", "shasum": "" }, "require": { @@ -412,7 +414,7 @@ "support": { "irc": "irc://irc.freenode.org/composer", "issues": "https://github.com/composer/ca-bundle/issues", - "source": "https://github.com/composer/ca-bundle/tree/1.5.8" + "source": "https://github.com/composer/ca-bundle/tree/1.5.11" }, "funding": [ { @@ -424,26 +426,26 @@ "type": "github" } ], - "time": "2025-08-20T18:49:47+00:00" + "time": "2026-03-30T09:16:10+00:00" }, { "name": "composer/class-map-generator", - "version": "1.6.2", + "version": "1.7.2", "source": { "type": "git", "url": "https://github.com/composer/class-map-generator.git", - "reference": "ba9f089655d4cdd64e762a6044f411ccdaec0076" + "reference": "6a9c2f0970022ab00dc58c07d0685dd712f2231b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/class-map-generator/zipball/ba9f089655d4cdd64e762a6044f411ccdaec0076", - "reference": "ba9f089655d4cdd64e762a6044f411ccdaec0076", + "url": "https://api.github.com/repos/composer/class-map-generator/zipball/6a9c2f0970022ab00dc58c07d0685dd712f2231b", + "reference": "6a9c2f0970022ab00dc58c07d0685dd712f2231b", "shasum": "" }, "require": { "composer/pcre": "^2.1 || ^3.1", "php": "^7.2 || ^8.0", - "symfony/finder": "^4.4 || ^5.3 || ^6 || ^7" + "symfony/finder": "^4.4 || ^5.3 || ^6 || ^7 || ^8" }, "require-dev": { "phpstan/phpstan": "^1.12 || ^2", @@ -451,7 +453,7 @@ "phpstan/phpstan-phpunit": "^1 || ^2", "phpstan/phpstan-strict-rules": "^1.1 || ^2", "phpunit/phpunit": "^8", - "symfony/filesystem": "^5.4 || ^6" + "symfony/filesystem": "^5.4 || ^6 || ^7 || ^8" }, "type": "library", "extra": { @@ -481,7 +483,7 @@ ], "support": { "issues": "https://github.com/composer/class-map-generator/issues", - "source": "https://github.com/composer/class-map-generator/tree/1.6.2" + "source": "https://github.com/composer/class-map-generator/tree/1.7.2" }, "funding": [ { @@ -493,30 +495,31 @@ "type": "github" } ], - "time": "2025-08-20T18:52:43+00:00" + "time": "2026-03-30T15:36:56+00:00" }, { "name": "composer/composer", - "version": "2.8.12", + "version": "2.9.7", "source": { "type": "git", "url": "https://github.com/composer/composer.git", - "reference": "3e38919bc9a2c3c026f2151b5e56d04084ce8f0b" + "reference": "82a2fbd1372a98d7915cfb092acf05207d9b4113" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/composer/zipball/3e38919bc9a2c3c026f2151b5e56d04084ce8f0b", - "reference": "3e38919bc9a2c3c026f2151b5e56d04084ce8f0b", + "url": "https://api.github.com/repos/composer/composer/zipball/82a2fbd1372a98d7915cfb092acf05207d9b4113", + "reference": "82a2fbd1372a98d7915cfb092acf05207d9b4113", "shasum": "" }, "require": { "composer/ca-bundle": "^1.5", "composer/class-map-generator": "^1.4.0", "composer/metadata-minifier": "^1.0", - "composer/pcre": "^2.2 || ^3.2", + "composer/pcre": "^2.3 || ^3.3", "composer/semver": "^3.3", "composer/spdx-licenses": "^1.5.7", "composer/xdebug-handler": "^2.0.2 || ^3.0.3", + "ext-json": "*", "justinrainbow/json-schema": "^6.5.1", "php": "^7.2.5 || ^8.0", "psr/log": "^1.0 || ^2.0 || ^3.0", @@ -524,13 +527,14 @@ "seld/jsonlint": "^1.4", "seld/phar-utils": "^1.2", "seld/signal-handler": "^2.0", - "symfony/console": "^5.4.47 || ^6.4.25 || ^7.1.10", - "symfony/filesystem": "^5.4.45 || ^6.4.24 || ^7.1.10", - "symfony/finder": "^5.4.45 || ^6.4.24 || ^7.1.10", + "symfony/console": "^5.4.47 || ^6.4.25 || ^7.1.10 || ^8.0", + "symfony/filesystem": "^5.4.45 || ^6.4.24 || ^7.1.10 || ^8.0", + "symfony/finder": "^5.4.45 || ^6.4.24 || ^7.1.10 || ^8.0", "symfony/polyfill-php73": "^1.24", "symfony/polyfill-php80": "^1.24", "symfony/polyfill-php81": "^1.24", - "symfony/process": "^5.4.47 || ^6.4.25 || ^7.1.10" + "symfony/polyfill-php84": "^1.30", + "symfony/process": "^5.4.47 || ^6.4.25 || ^7.1.10 || ^8.0" }, "require-dev": { "phpstan/phpstan": "^1.11.8", @@ -538,12 +542,13 @@ "phpstan/phpstan-phpunit": "^1.4.0", "phpstan/phpstan-strict-rules": "^1.6.0", "phpstan/phpstan-symfony": "^1.4.0", - "symfony/phpunit-bridge": "^6.4.25 || ^7.3.3" + "symfony/phpunit-bridge": "^6.4.25 || ^7.3.3 || ^8.0" }, "suggest": { - "ext-openssl": "Enabling the openssl extension allows you to access https URLs for repositories and packages", - "ext-zip": "Enabling the zip extension allows you to unzip archives", - "ext-zlib": "Allow gzip compression of HTTP requests" + "ext-curl": "Provides HTTP support (will fallback to PHP streams if missing)", + "ext-openssl": "Enables access to repositories and packages over HTTPS", + "ext-zip": "Allows direct extraction of ZIP archives (unzip/7z binaries will be used instead if available)", + "ext-zlib": "Enables gzip for HTTP requests" }, "bin": [ "bin/composer" @@ -556,7 +561,7 @@ ] }, "branch-alias": { - "dev-main": "2.8-dev" + "dev-main": "2.9-dev" } }, "autoload": { @@ -591,7 +596,7 @@ "irc": "ircs://irc.libera.chat:6697/composer", "issues": "https://github.com/composer/composer/issues", "security": "https://github.com/composer/composer/security/policy", - "source": "https://github.com/composer/composer/tree/2.8.12" + "source": "https://github.com/composer/composer/tree/2.9.7" }, "funding": [ { @@ -603,7 +608,7 @@ "type": "github" } ], - "time": "2025-09-19T11:41:59+00:00" + "time": "2026-04-14T11:31:52+00:00" }, { "name": "composer/metadata-minifier", @@ -832,24 +837,24 @@ }, { "name": "composer/spdx-licenses", - "version": "1.5.9", + "version": "1.6.0", "source": { "type": "git", "url": "https://github.com/composer/spdx-licenses.git", - "reference": "edf364cefe8c43501e21e88110aac10b284c3c9f" + "reference": "5ecd0cb4177696f9fd48f1605dda81db3dee7889" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer/spdx-licenses/zipball/edf364cefe8c43501e21e88110aac10b284c3c9f", - "reference": "edf364cefe8c43501e21e88110aac10b284c3c9f", + "url": "https://api.github.com/repos/composer/spdx-licenses/zipball/5ecd0cb4177696f9fd48f1605dda81db3dee7889", + "reference": "5ecd0cb4177696f9fd48f1605dda81db3dee7889", "shasum": "" }, "require": { - "php": "^5.3.2 || ^7.0 || ^8.0" + "php": "^7.2 || ^8.0" }, "require-dev": { "phpstan/phpstan": "^1.11", - "symfony/phpunit-bridge": "^3 || ^7" + "symfony/phpunit-bridge": "^6.4.25 || ^7.3.3 || ^8.0" }, "type": "library", "extra": { @@ -892,7 +897,7 @@ "support": { "irc": "ircs://irc.libera.chat:6697/composer", "issues": "https://github.com/composer/spdx-licenses/issues", - "source": "https://github.com/composer/spdx-licenses/tree/1.5.9" + "source": "https://github.com/composer/spdx-licenses/tree/1.6.0" }, "funding": [ { @@ -902,13 +907,9 @@ { "url": "https://github.com/composer", "type": "github" - }, - { - "url": "https://tidelift.com/funding/github/packagist/composer/composer", - "type": "tidelift" } ], - "time": "2025-05-12T21:07:07+00:00" + "time": "2026-04-08T20:18:39+00:00" }, { "name": "composer/xdebug-handler", @@ -978,29 +979,29 @@ }, { "name": "dealerdirect/phpcodesniffer-composer-installer", - "version": "v1.1.2", + "version": "v1.2.0", "source": { "type": "git", "url": "https://github.com/PHPCSStandards/composer-installer.git", - "reference": "e9cf5e4bbf7eeaf9ef5db34938942602838fc2b1" + "reference": "845eb62303d2ca9b289ef216356568ccc075ffd1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCSStandards/composer-installer/zipball/e9cf5e4bbf7eeaf9ef5db34938942602838fc2b1", - "reference": "e9cf5e4bbf7eeaf9ef5db34938942602838fc2b1", + "url": "https://api.github.com/repos/PHPCSStandards/composer-installer/zipball/845eb62303d2ca9b289ef216356568ccc075ffd1", + "reference": "845eb62303d2ca9b289ef216356568ccc075ffd1", "shasum": "" }, "require": { "composer-plugin-api": "^2.2", "php": ">=5.4", - "squizlabs/php_codesniffer": "^2.0 || ^3.1.0 || ^4.0" + "squizlabs/php_codesniffer": "^3.1.0 || ^4.0" }, "require-dev": { "composer/composer": "^2.2", "ext-json": "*", "ext-zip": "*", "php-parallel-lint/php-parallel-lint": "^1.4.0", - "phpcompatibility/php-compatibility": "^9.0", + "phpcompatibility/php-compatibility": "^9.0 || ^10.0.0@dev", "yoast/phpunit-polyfills": "^1.0" }, "type": "composer-plugin", @@ -1070,27 +1071,27 @@ "type": "thanks_dev" } ], - "time": "2025-07-17T20:45:56+00:00" + "time": "2025-11-11T04:32:07+00:00" }, { "name": "doctrine/coding-standard", - "version": "13.0.1", + "version": "14.0.0", "source": { "type": "git", "url": "https://github.com/doctrine/coding-standard.git", - "reference": "0affd62169186f32de725ca612e6129e81186a21" + "reference": "897a7dc209e49ee6cf04e689c41112df17967130" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/coding-standard/zipball/0affd62169186f32de725ca612e6129e81186a21", - "reference": "0affd62169186f32de725ca612e6129e81186a21", + "url": "https://api.github.com/repos/doctrine/coding-standard/zipball/897a7dc209e49ee6cf04e689c41112df17967130", + "reference": "897a7dc209e49ee6cf04e689c41112df17967130", "shasum": "" }, "require": { "dealerdirect/phpcodesniffer-composer-installer": "^0.6.2 || ^0.7 || ^1.0.0", "php": "^7.4 || ^8.0", - "slevomat/coding-standard": "^8.16", - "squizlabs/php_codesniffer": "^3.7" + "slevomat/coding-standard": "^8.23", + "squizlabs/php_codesniffer": "^4" }, "type": "phpcodesniffer-standard", "notification-url": "https://packagist.org/downloads/", @@ -1124,22 +1125,22 @@ ], "support": { "issues": "https://github.com/doctrine/coding-standard/issues", - "source": "https://github.com/doctrine/coding-standard/tree/13.0.1" + "source": "https://github.com/doctrine/coding-standard/tree/14.0.0" }, - "time": "2025-05-14T10:54:19+00:00" + "time": "2025-09-21T18:21:47+00:00" }, { "name": "ergebnis/composer-normalize", - "version": "2.48.2", + "version": "2.51.0", "source": { "type": "git", "url": "https://github.com/ergebnis/composer-normalize.git", - "reference": "86dc9731b8320f49e9be9ad6d8e4de9b8b0e9b8b" + "reference": "36fb17dce18579ccab50f71b411a32ed55e6d4bc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ergebnis/composer-normalize/zipball/86dc9731b8320f49e9be9ad6d8e4de9b8b0e9b8b", - "reference": "86dc9731b8320f49e9be9ad6d8e4de9b8b0e9b8b", + "url": "https://api.github.com/repos/ergebnis/composer-normalize/zipball/36fb17dce18579ccab50f71b411a32ed55e6d4bc", + "reference": "36fb17dce18579ccab50f71b411a32ed55e6d4bc", "shasum": "" }, "require": { @@ -1153,27 +1154,27 @@ "php": "~7.4.0 || ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0 || ~8.5.0" }, "require-dev": { - "composer/composer": "^2.8.3", + "composer/composer": "^2.9.4", "ergebnis/license": "^2.7.0", - "ergebnis/php-cs-fixer-config": "^6.53.0", - "ergebnis/phpstan-rules": "^2.11.0", - "ergebnis/phpunit-slow-test-detector": "^2.20.0", + "ergebnis/php-cs-fixer-config": "^6.61.1", + "ergebnis/phpstan-rules": "^2.13.1", + "ergebnis/phpunit-slow-test-detector": "^2.24.0", + "ergebnis/rector-rules": "^1.18.1", "fakerphp/faker": "^1.24.1", - "infection/infection": "~0.26.6", "phpstan/extension-installer": "^1.4.3", - "phpstan/phpstan": "^2.1.17", - "phpstan/phpstan-deprecation-rules": "^2.0.3", - "phpstan/phpstan-phpunit": "^2.0.7", - "phpstan/phpstan-strict-rules": "^2.0.6", - "phpunit/phpunit": "^9.6.20", - "rector/rector": "^2.1.4", + "phpstan/phpstan": "^2.1.47", + "phpstan/phpstan-deprecation-rules": "^2.0.4", + "phpstan/phpstan-phpunit": "^2.0.16", + "phpstan/phpstan-strict-rules": "^2.0.10", + "phpunit/phpunit": "^9.6.33", + "rector/rector": "^2.4.1", "symfony/filesystem": "^5.4.41" }, "type": "composer-plugin", "extra": { "class": "Ergebnis\\Composer\\Normalize\\NormalizePlugin", "branch-alias": { - "dev-main": "2.49-dev" + "dev-main": "2.51-dev" }, "plugin-optional": true, "composer-normalize": { @@ -1210,7 +1211,7 @@ "security": "https://github.com/ergebnis/composer-normalize/blob/main/.github/SECURITY.md", "source": "https://github.com/ergebnis/composer-normalize" }, - "time": "2025-09-06T11:42:34+00:00" + "time": "2026-04-14T11:17:04+00:00" }, { "name": "ergebnis/json", @@ -1369,36 +1370,38 @@ }, { "name": "ergebnis/json-pointer", - "version": "3.7.1", + "version": "3.8.0", "source": { "type": "git", "url": "https://github.com/ergebnis/json-pointer.git", - "reference": "43bef355184e9542635e35dd2705910a3df4c236" + "reference": "b58c3c468a7ff109fdf9a255f17de29ecbe5276c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ergebnis/json-pointer/zipball/43bef355184e9542635e35dd2705910a3df4c236", - "reference": "43bef355184e9542635e35dd2705910a3df4c236", + "url": "https://api.github.com/repos/ergebnis/json-pointer/zipball/b58c3c468a7ff109fdf9a255f17de29ecbe5276c", + "reference": "b58c3c468a7ff109fdf9a255f17de29ecbe5276c", "shasum": "" }, "require": { "php": "~7.4.0 || ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0 || ~8.5.0" }, "require-dev": { - "ergebnis/composer-normalize": "^2.43.0", - "ergebnis/data-provider": "^3.2.0", - "ergebnis/license": "^2.4.0", - "ergebnis/php-cs-fixer-config": "^6.32.0", - "ergebnis/phpunit-slow-test-detector": "^2.15.0", - "fakerphp/faker": "^1.23.1", + "ergebnis/composer-normalize": "^2.50.0", + "ergebnis/data-provider": "^3.6.0", + "ergebnis/license": "^2.7.0", + "ergebnis/php-cs-fixer-config": "^6.60.2", + "ergebnis/phpstan-rules": "^2.13.1", + "ergebnis/phpunit-slow-test-detector": "^2.24.0", + "ergebnis/rector-rules": "^1.16.0", + "fakerphp/faker": "^1.24.1", "infection/infection": "~0.26.6", "phpstan/extension-installer": "^1.4.3", - "phpstan/phpstan": "^1.12.10", - "phpstan/phpstan-deprecation-rules": "^1.2.1", - "phpstan/phpstan-phpunit": "^1.4.0", - "phpstan/phpstan-strict-rules": "^1.6.1", - "phpunit/phpunit": "^9.6.19", - "rector/rector": "^1.2.10" + "phpstan/phpstan": "^2.1.46", + "phpstan/phpstan-deprecation-rules": "^2.0.4", + "phpstan/phpstan-phpunit": "^2.0.16", + "phpstan/phpstan-strict-rules": "^2.0.10", + "phpunit/phpunit": "^9.6.34", + "rector/rector": "^2.4.0" }, "type": "library", "extra": { @@ -1438,7 +1441,7 @@ "security": "https://github.com/ergebnis/json-pointer/blob/main/.github/SECURITY.md", "source": "https://github.com/ergebnis/json-pointer" }, - "time": "2025-09-06T09:28:19+00:00" + "time": "2026-04-07T14:52:13+00:00" }, { "name": "ergebnis/json-printer", @@ -1594,35 +1597,35 @@ }, { "name": "ergebnis/phpstan-rules", - "version": "2.12.0", + "version": "2.13.1", "source": { "type": "git", "url": "https://github.com/ergebnis/phpstan-rules.git", - "reference": "c4e0121a937b3b551f800a86e7d78794da2783ea" + "reference": "f69db86b98595c34fc1f61c89fe3b380141aa519" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ergebnis/phpstan-rules/zipball/c4e0121a937b3b551f800a86e7d78794da2783ea", - "reference": "c4e0121a937b3b551f800a86e7d78794da2783ea", + "url": "https://api.github.com/repos/ergebnis/phpstan-rules/zipball/f69db86b98595c34fc1f61c89fe3b380141aa519", + "reference": "f69db86b98595c34fc1f61c89fe3b380141aa519", "shasum": "" }, "require": { "ext-mbstring": "*", "php": "~7.4.0 || ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0 || ~8.5.0", - "phpstan/phpstan": "^2.1.8" + "phpstan/phpstan": "^2.1.35" }, "require-dev": { "codeception/codeception": "^4.0.0 || ^5.0.0", "doctrine/orm": "^2.20.0 || ^3.3.0", - "ergebnis/composer-normalize": "^2.47.0", - "ergebnis/license": "^2.6.0", - "ergebnis/php-cs-fixer-config": "^6.54.0", + "ergebnis/composer-normalize": "^2.49.0", + "ergebnis/license": "^2.7.0", + "ergebnis/php-cs-fixer-config": "^6.59.0", "ergebnis/phpunit-slow-test-detector": "^2.20.0", "fakerphp/faker": "^1.24.1", "phpstan/extension-installer": "^1.4.3", "phpstan/phpstan-deprecation-rules": "^2.0.3", - "phpstan/phpstan-phpunit": "^2.0.7", - "phpstan/phpstan-strict-rules": "^2.0.6", + "phpstan/phpstan-phpunit": "^2.0.12", + "phpstan/phpstan-strict-rules": "^2.0.8", "phpunit/phpunit": "^9.6.21", "psr/container": "^2.0.2", "symfony/finder": "^5.4.45", @@ -1663,30 +1666,30 @@ "security": "https://github.com/ergebnis/phpstan-rules/blob/main/.github/SECURITY.md", "source": "https://github.com/ergebnis/phpstan-rules" }, - "time": "2025-09-07T13:31:33+00:00" + "time": "2026-01-27T17:13:06+00:00" }, { "name": "ergebnis/phpunit-slow-test-detector", - "version": "2.20.0", + "version": "2.24.0", "source": { "type": "git", "url": "https://github.com/ergebnis/phpunit-slow-test-detector.git", - "reference": "36225d36071cb0e7aae3e05a8baa82ace28e1094" + "reference": "e713c1397b09e07892657cdf909731d29481ff4c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ergebnis/phpunit-slow-test-detector/zipball/36225d36071cb0e7aae3e05a8baa82ace28e1094", - "reference": "36225d36071cb0e7aae3e05a8baa82ace28e1094", + "url": "https://api.github.com/repos/ergebnis/phpunit-slow-test-detector/zipball/e713c1397b09e07892657cdf909731d29481ff4c", + "reference": "e713c1397b09e07892657cdf909731d29481ff4c", "shasum": "" }, "require": { "php": "~7.0.0 || ~7.1.0 || ~7.2.0 || ~7.3.0 || ~7.4.0 || ~8.0.0 || ~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0 || ~8.5.0", - "phpunit/phpunit": "^6.5.0 || ^7.5.0 || ^8.5.19 || ^9.0.0 || ^10.0.0 || ^11.0.0 || ^12.0.0" + "phpunit/phpunit": "^6.5.0 || ^7.5.0 || ^8.5.19 || ^9.0.0 || ^10.0.0 || ^11.0.0 || ^12.0.0 || ^13.0.0" }, "require-dev": { - "ergebnis/composer-normalize": "^2.47.0", - "ergebnis/license": "^2.6.0", - "ergebnis/php-cs-fixer-config": "^6.52.0", + "ergebnis/composer-normalize": "^2.50.0", + "ergebnis/license": "^2.7.0", + "ergebnis/php-cs-fixer-config": "^6.60.1", "fakerphp/faker": "~1.20.0", "phpstan/extension-installer": "^1.4.3", "phpstan/phpstan": "^1.12.11", @@ -1736,7 +1739,7 @@ "security": "https://github.com/ergebnis/phpunit-slow-test-detector/blob/main/.github/SECURITY.md", "source": "https://github.com/ergebnis/phpunit-slow-test-detector" }, - "time": "2025-08-19T07:48:39+00:00" + "time": "2026-03-13T10:52:55+00:00" }, { "name": "fidry/cpu-core-counter", @@ -1852,16 +1855,16 @@ }, { "name": "icanhazstring/composer-unused", - "version": "0.9.5", + "version": "0.9.6", "source": { "type": "git", "url": "https://github.com/composer-unused/composer-unused.git", - "reference": "13b1d32e35e7c6dc997c01342c4fe1b217b6d767" + "reference": "c60030af7954a528746dd2180c10b5e0871e84c7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/composer-unused/composer-unused/zipball/13b1d32e35e7c6dc997c01342c4fe1b217b6d767", - "reference": "13b1d32e35e7c6dc997c01342c4fe1b217b6d767", + "url": "https://api.github.com/repos/composer-unused/composer-unused/zipball/c60030af7954a528746dd2180c10b5e0871e84c7", + "reference": "c60030af7954a528746dd2180c10b5e0871e84c7", "shasum": "" }, "require": { @@ -1876,19 +1879,19 @@ "phpstan/phpdoc-parser": "^1.25 || ^2", "psr/container": "^1.0 || ^2.0", "psr/log": "^1.1 || ^2 || ^3", - "symfony/config": "^6.0 || ^7.0", - "symfony/console": "^6.0 || ^7.0", - "symfony/dependency-injection": "^6.0 || ^7.0", - "symfony/property-access": "^6.0 || ^7.0", - "symfony/serializer": "^6.0 || ^7.0", - "webmozart/assert": "^1.10", + "symfony/config": "^6.0 || ^7.0 || ^8.0", + "symfony/console": "^6.0 || ^7.0 || ^8.0", + "symfony/dependency-injection": "^6.0 || ^7.0 || ^8.0", + "symfony/property-access": "^6.0 || ^7.0 || ^8.0", + "symfony/serializer": "^6.0 || ^7.0 || ^8.0", + "webmozart/assert": "^1.10 || ^2.0", "webmozart/glob": "^4.4" }, "require-dev": { "bamarni/composer-bin-plugin": "^1.8", "codeception/verify": "^3.1", "dg/bypass-finals": "^1.6", - "ergebnis/composer-normalize": "^2.42", + "ergebnis/composer-normalize": "^2.49", "ext-ds": "*", "ext-zend-opcache": "*", "jangregor/phpstan-prophecy": "^2.1.1", @@ -1896,11 +1899,11 @@ "php-ds/php-ds": "^1.5", "phpspec/prophecy-phpunit": "^2.2.0", "phpstan/extension-installer": "^1.3", - "phpstan/phpstan": "^2.1.8", - "phpstan/phpstan-phpunit": "^2.0.4", - "phpunit/phpunit": "^9.6.13", + "phpstan/phpstan": "^2.1.37", + "phpstan/phpstan-phpunit": "^2.0.12", + "phpunit/phpunit": "^9.6.34", "roave/security-advisories": "dev-master", - "squizlabs/php_codesniffer": "^3.9" + "squizlabs/php_codesniffer": "^3.13" }, "bin": [ "bin/composer-unused" @@ -1949,7 +1952,7 @@ "type": "other" } ], - "time": "2025-09-22T07:07:50+00:00" + "time": "2026-01-30T05:52:24+00:00" }, { "name": "infection/abstract-testframework-adapter", @@ -2130,16 +2133,16 @@ }, { "name": "infection/infection", - "version": "0.31.7", + "version": "0.32.7", "source": { "type": "git", "url": "https://github.com/infection/infection.git", - "reference": "a66e38972304f5c742d4ee19adec132c45bb5a46" + "reference": "066ee69f1e8e6dec8965a79d5ba020656c590b5e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/infection/infection/zipball/a66e38972304f5c742d4ee19adec132c45bb5a46", - "reference": "a66e38972304f5c742d4ee19adec132c45bb5a46", + "url": "https://api.github.com/repos/infection/infection/zipball/066ee69f1e8e6dec8965a79d5ba020656c590b5e", + "reference": "066ee69f1e8e6dec8965a79d5ba020656c590b5e", "shasum": "" }, "require": { @@ -2156,40 +2159,47 @@ "infection/include-interceptor": "^0.2.5", "infection/mutator": "^0.4", "justinrainbow/json-schema": "^6.0", - "nikic/php-parser": "^5.3", + "nikic/php-parser": "^5.6.2", "ondram/ci-detector": "^4.1.0", - "php": "^8.2", - "sanmai/di-container": "^0.1.4", + "php": "^8.3", + "psr/log": "^2.0 || ^3.0", + "sanmai/di-container": "^0.1.12", "sanmai/duoclock": "^0.1.0", "sanmai/later": "^0.1.7", - "sanmai/pipeline": "^7.0", - "sebastian/diff": "^4.0 || ^5.0 || ^6.0 || ^7.0", - "symfony/console": "^6.4 || ^7.0", - "symfony/filesystem": "^6.4 || ^7.0", - "symfony/finder": "^6.4 || ^7.0", - "symfony/process": "^6.4 || ^7.0", + "sanmai/pipeline": "^7.2", + "sebastian/diff": "^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0", + "symfony/console": "^6.4 || ^7.0 || ^8.0", + "symfony/filesystem": "^6.4 || ^7.0 || ^8.0", + "symfony/finder": "^6.4 || ^7.0 || ^8.0", + "symfony/polyfill-php85": "^1.33", + "symfony/process": "^6.4 || ^7.0 || ^8.0", "thecodingmachine/safe": "^v3.0", - "webmozart/assert": "^1.11" + "webmozart/assert": "^1.11 || ^2.0" }, "conflict": { "antecedent/patchwork": "<2.1.25", "dg/bypass-finals": "<1.4.1" }, "require-dev": { + "carthage-software/mago": "^1.20", "ext-simplexml": "*", "fidry/makefile": "^1.0", + "fig/log-test": "^1.2", + "phpat/phpat": "^0.12.4", + "phpbench/phpbench": "^1.4", "phpstan/extension-installer": "^1.4", "phpstan/phpstan": "^2.1", "phpstan/phpstan-phpunit": "^2.0", "phpstan/phpstan-strict-rules": "^2.0", "phpstan/phpstan-webmozart-assert": "^2.0", "phpunit/phpunit": "^11.5.27", - "rector/rector": "^2.0", - "shipmonk/dead-code-detector": "^0.12.0", + "rector/rector": "^2.2.4", + "shipmonk/dead-code-detector": "^0.15", "shipmonk/name-collision-detector": "^2.1", "sidz/phpstan-rules": "^0.5.1", - "symfony/yaml": "^6.4 || ^7.0", - "thecodingmachine/phpstan-safe-rule": "^1.4" + "symfony/yaml": "^6.4 || ^7.0 || ^8.0", + "thecodingmachine/phpstan-safe-rule": "^1.4", + "webmozarts/strict-phpunit": "^7.15" }, "bin": [ "bin/infection" @@ -2245,7 +2255,7 @@ ], "support": { "issues": "https://github.com/infection/infection/issues", - "source": "https://github.com/infection/infection/tree/0.31.7" + "source": "https://github.com/infection/infection/tree/0.32.7" }, "funding": [ { @@ -2257,7 +2267,7 @@ "type": "open_collective" } ], - "time": "2025-10-12T08:32:39+00:00" + "time": "2026-04-23T21:11:41+00:00" }, { "name": "infection/mutator", @@ -2314,23 +2324,23 @@ }, { "name": "jetbrains/phpstorm-stubs", - "version": "v2024.3", + "version": "v2026.1", "source": { "type": "git", - "url": "https://github.com/JetBrains/phpstorm-stubs.git", - "reference": "0e82bdfe850c71857ee4ee3501ed82a9fc5d043c" + "url": "https://github.com/JetBrains/phpstorm-stubs", + "reference": "2cdd054c4109dfb76667c9198bf9427606354243" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/JetBrains/phpstorm-stubs/zipball/0e82bdfe850c71857ee4ee3501ed82a9fc5d043c", - "reference": "0e82bdfe850c71857ee4ee3501ed82a9fc5d043c", + "url": "https://api.github.com/repos/JetBrains/phpstorm-stubs/zipball/2cdd054c4109dfb76667c9198bf9427606354243", + "reference": "2cdd054c4109dfb76667c9198bf9427606354243", "shasum": "" }, "require-dev": { - "friendsofphp/php-cs-fixer": "v3.64.0", - "nikic/php-parser": "v5.3.1", - "phpdocumentor/reflection-docblock": "5.6.0", - "phpunit/phpunit": "11.4.3" + "friendsofphp/php-cs-fixer": "^v3.86", + "nikic/php-parser": "^v5.6", + "phpdocumentor/reflection-docblock": "^5.6", + "phpunit/phpunit": "^12.3" }, "type": "library", "autoload": { @@ -2354,28 +2364,25 @@ "stubs", "type" ], - "support": { - "source": "https://github.com/JetBrains/phpstorm-stubs/tree/v2024.3" - }, - "time": "2024-12-14T08:03:12+00:00" + "time": "2026-02-19T20:12:01+00:00" }, { "name": "justinrainbow/json-schema", - "version": "6.5.2", + "version": "6.8.0", "source": { "type": "git", "url": "https://github.com/jsonrainbow/json-schema.git", - "reference": "ac0d369c09653cf7af561f6d91a705bc617a87b8" + "reference": "89ac92bcfe5d0a8a4433c7b89d394553ae7250cc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/jsonrainbow/json-schema/zipball/ac0d369c09653cf7af561f6d91a705bc617a87b8", - "reference": "ac0d369c09653cf7af561f6d91a705bc617a87b8", + "url": "https://api.github.com/repos/jsonrainbow/json-schema/zipball/89ac92bcfe5d0a8a4433c7b89d394553ae7250cc", + "reference": "89ac92bcfe5d0a8a4433c7b89d394553ae7250cc", "shasum": "" }, "require": { "ext-json": "*", - "marc-mabe/php-enum": "^4.0", + "marc-mabe/php-enum": "^4.4", "php": "^7.2 || ^8.0" }, "require-dev": { @@ -2430,40 +2437,40 @@ ], "support": { "issues": "https://github.com/jsonrainbow/json-schema/issues", - "source": "https://github.com/jsonrainbow/json-schema/tree/6.5.2" + "source": "https://github.com/jsonrainbow/json-schema/tree/6.8.0" }, - "time": "2025-09-09T09:42:27+00:00" + "time": "2026-04-02T12:43:11+00:00" }, { "name": "lcobucci/clock", - "version": "3.4.0", + "version": "3.6.0", "source": { "type": "git", "url": "https://github.com/lcobucci/clock.git", - "reference": "f91d84f65cb3e974988bbe872b5da8ca132a155f" + "reference": "4cdd88f761e9be9095ccbedf3e08d61ae216c643" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/lcobucci/clock/zipball/f91d84f65cb3e974988bbe872b5da8ca132a155f", - "reference": "f91d84f65cb3e974988bbe872b5da8ca132a155f", + "url": "https://api.github.com/repos/lcobucci/clock/zipball/4cdd88f761e9be9095ccbedf3e08d61ae216c643", + "reference": "4cdd88f761e9be9095ccbedf3e08d61ae216c643", "shasum": "" }, "require": { - "php": "~8.3.0 || ~8.4.0", + "php": "~8.4.0 || ~8.5.0", "psr/clock": "^1.0" }, "provide": { "psr/clock-implementation": "1.0" }, "require-dev": { - "infection/infection": "^0.31", - "lcobucci/coding-standard": "^11.1.0", + "infection/infection": "^0.32", + "lcobucci/coding-standard": "^12.0", "phpstan/extension-installer": "^1.3.1", - "phpstan/phpstan": "^2.0.0", - "phpstan/phpstan-deprecation-rules": "^2.0.0", - "phpstan/phpstan-phpunit": "^2.0.0", - "phpstan/phpstan-strict-rules": "^2.0.0", - "phpunit/phpunit": "^12.0.0" + "phpstan/phpstan": "^2.1", + "phpstan/phpstan-deprecation-rules": "^2.0", + "phpstan/phpstan-phpunit": "^2.0", + "phpstan/phpstan-strict-rules": "^2.0", + "phpunit/phpunit": "^13.0" }, "type": "library", "autoload": { @@ -2484,7 +2491,7 @@ "description": "Yet another clock abstraction", "support": { "issues": "https://github.com/lcobucci/clock/issues", - "source": "https://github.com/lcobucci/clock/tree/3.4.0" + "source": "https://github.com/lcobucci/clock/tree/3.6.0" }, "funding": [ { @@ -2496,7 +2503,7 @@ "type": "patreon" } ], - "time": "2025-10-08T18:00:48+00:00" + "time": "2026-04-13T21:30:16+00:00" }, { "name": "localheinz/diff", @@ -2555,37 +2562,42 @@ }, { "name": "maglnet/composer-require-checker", - "version": "4.16.1", + "version": "4.20.0", "source": { "type": "git", "url": "https://github.com/maglnet/ComposerRequireChecker.git", - "reference": "2449a6298a0c39d940287d5d3afaf05a6f80fd0c" + "reference": "c62d517ef5ac2d347dd9b3d02c1cc16c0f1091e2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/maglnet/ComposerRequireChecker/zipball/2449a6298a0c39d940287d5d3afaf05a6f80fd0c", - "reference": "2449a6298a0c39d940287d5d3afaf05a6f80fd0c", + "url": "https://api.github.com/repos/maglnet/ComposerRequireChecker/zipball/c62d517ef5ac2d347dd9b3d02c1cc16c0f1091e2", + "reference": "c62d517ef5ac2d347dd9b3d02c1cc16c0f1091e2", "shasum": "" }, "require": { + "azjezz/psl": "^4.2.0", "composer-runtime-api": "^2.0.0", "ext-phar": "*", - "nikic/php-parser": "^5.4.0", - "php": "~8.2.0 || ~8.3.0 || ~8.4.0", - "symfony/console": "^6.4.1 || ^7.0.1", - "webmozart/assert": "^1.11.0", + "nikic/php-parser": "^5.7.0", + "php": "~8.3.0 || ~8.4.0 || ~8.5.0", + "symfony/console": "^7.4.1", "webmozart/glob": "^4.7.0" }, + "conflict": { + "revolt/event-loop": "< 1.0.8" + }, "require-dev": { - "doctrine/coding-standard": "^12.0.0", + "doctrine/coding-standard": "^14.0.0", "ext-zend-opcache": "*", - "phing/phing": "^3.0.1", - "phpstan/phpstan": "^2.1.2", - "phpunit/phpunit": "^11.5.7", - "psalm/plugin-phpunit": "^0.19.2", - "roave/infection-static-analysis-plugin": "^1.36.0", + "phing/phing": "^3.1.1", + "php-standard-library/phpstan-extension": "^2.0.2", + "php-standard-library/psalm-plugin": "^2.3", + "phpstan/phpstan": "^2.1.33", + "phpunit/phpunit": "^12.5.4", + "psalm/plugin-phpunit": "^0.19.5", + "roave/infection-static-analysis-plugin": "^1.42.0", "spatie/temporary-directory": "^2.3.0", - "vimeo/psalm": "^6.4.0" + "vimeo/psalm": "^6.14.3" }, "bin": [ "bin/composer-require-checker" @@ -2630,9 +2642,9 @@ ], "support": { "issues": "https://github.com/maglnet/ComposerRequireChecker/issues", - "source": "https://github.com/maglnet/ComposerRequireChecker/tree/4.16.1" + "source": "https://github.com/maglnet/ComposerRequireChecker/tree/4.20.0" }, - "time": "2025-02-07T09:09:45+00:00" + "time": "2025-12-29T11:34:42+00:00" }, { "name": "marc-mabe/php-enum", @@ -2792,23 +2804,23 @@ }, { "name": "moneyphp/money", - "version": "v4.7.1", + "version": "v4.8.0", "source": { "type": "git", "url": "https://github.com/moneyphp/money.git", - "reference": "1a23f0e1b22e2c59ed5ed70cfbe4cbe696be9348" + "reference": "b358727ea5a5cd2d7475e59c31dfc352440ae7ec" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/moneyphp/money/zipball/1a23f0e1b22e2c59ed5ed70cfbe4cbe696be9348", - "reference": "1a23f0e1b22e2c59ed5ed70cfbe4cbe696be9348", + "url": "https://api.github.com/repos/moneyphp/money/zipball/b358727ea5a5cd2d7475e59c31dfc352440ae7ec", + "reference": "b358727ea5a5cd2d7475e59c31dfc352440ae7ec", "shasum": "" }, "require": { "ext-bcmath": "*", "ext-filter": "*", "ext-json": "*", - "php": "~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0" + "php": "~8.1.0 || ~8.2.0 || ~8.3.0 || ~8.4.0 || ~8.5.0" }, "require-dev": { "cache/taggable-cache": "^1.1.0", @@ -2876,9 +2888,9 @@ ], "support": { "issues": "https://github.com/moneyphp/money/issues", - "source": "https://github.com/moneyphp/money/tree/v4.7.1" + "source": "https://github.com/moneyphp/money/tree/v4.8.0" }, - "time": "2025-06-06T07:12:38+00:00" + "time": "2025-10-23T07:55:09+00:00" }, { "name": "myclabs/deep-copy", @@ -2942,20 +2954,20 @@ }, { "name": "nette/utils", - "version": "v4.0.8", + "version": "v4.1.3", "source": { "type": "git", "url": "https://github.com/nette/utils.git", - "reference": "c930ca4e3cf4f17dcfb03037703679d2396d2ede" + "reference": "bb3ea637e3d131d72acc033cfc2746ee893349fe" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nette/utils/zipball/c930ca4e3cf4f17dcfb03037703679d2396d2ede", - "reference": "c930ca4e3cf4f17dcfb03037703679d2396d2ede", + "url": "https://api.github.com/repos/nette/utils/zipball/bb3ea637e3d131d72acc033cfc2746ee893349fe", + "reference": "bb3ea637e3d131d72acc033cfc2746ee893349fe", "shasum": "" }, "require": { - "php": "8.0 - 8.5" + "php": "8.2 - 8.5" }, "conflict": { "nette/finder": "<3", @@ -2963,8 +2975,10 @@ }, "require-dev": { "jetbrains/phpstorm-attributes": "^1.2", + "nette/phpstan-rules": "^1.0", "nette/tester": "^2.5", - "phpstan/phpstan-nette": "^2.0@stable", + "phpstan/extension-installer": "^1.4@stable", + "phpstan/phpstan": "^2.1@stable", "tracy/tracy": "^2.9" }, "suggest": { @@ -2978,7 +2992,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "4.0-dev" + "dev-master": "4.1-dev" } }, "autoload": { @@ -3025,22 +3039,22 @@ ], "support": { "issues": "https://github.com/nette/utils/issues", - "source": "https://github.com/nette/utils/tree/v4.0.8" + "source": "https://github.com/nette/utils/tree/v4.1.3" }, - "time": "2025-08-06T21:43:34+00:00" + "time": "2026-02-13T03:05:33+00:00" }, { "name": "nikic/php-parser", - "version": "v5.6.1", + "version": "v5.7.0", "source": { "type": "git", "url": "https://github.com/nikic/PHP-Parser.git", - "reference": "f103601b29efebd7ff4a1ca7b3eeea9e3336a2a2" + "reference": "dca41cd15c2ac9d055ad70dbfd011130757d1f82" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/f103601b29efebd7ff4a1ca7b3eeea9e3336a2a2", - "reference": "f103601b29efebd7ff4a1ca7b3eeea9e3336a2a2", + "url": "https://api.github.com/repos/nikic/PHP-Parser/zipball/dca41cd15c2ac9d055ad70dbfd011130757d1f82", + "reference": "dca41cd15c2ac9d055ad70dbfd011130757d1f82", "shasum": "" }, "require": { @@ -3083,9 +3097,9 @@ ], "support": { "issues": "https://github.com/nikic/PHP-Parser/issues", - "source": "https://github.com/nikic/PHP-Parser/tree/v5.6.1" + "source": "https://github.com/nikic/PHP-Parser/tree/v5.7.0" }, - "time": "2025-08-13T20:13:15+00:00" + "time": "2025-12-06T11:56:16+00:00" }, { "name": "nikolaposa/version", @@ -3150,33 +3164,33 @@ }, { "name": "ocramius/package-versions", - "version": "2.10.0", + "version": "2.11.0", "source": { "type": "git", "url": "https://github.com/Ocramius/PackageVersions.git", - "reference": "b2181b8f0e2adeef0db76a209e1a69369d8abe6f" + "reference": "23359bf3003a71b053ac8ab4b3f651597bd3d261" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Ocramius/PackageVersions/zipball/b2181b8f0e2adeef0db76a209e1a69369d8abe6f", - "reference": "b2181b8f0e2adeef0db76a209e1a69369d8abe6f", + "url": "https://api.github.com/repos/Ocramius/PackageVersions/zipball/23359bf3003a71b053ac8ab4b3f651597bd3d261", + "reference": "23359bf3003a71b053ac8ab4b3f651597bd3d261", "shasum": "" }, "require": { "composer-runtime-api": "^2.2.0", - "php": "~8.2.0 || ~8.3.0 || ~8.4.0" + "php": "~8.2.0 || ~8.3.0 || ~8.4.0 || ~8.5.0" }, "replace": { "composer/package-versions-deprecated": "*" }, "require-dev": { - "composer/composer": "^2.8.5", - "doctrine/coding-standard": "^12.0.0", + "composer/composer": "^2.9.2", + "doctrine/coding-standard": "^14.0.0", "ext-zip": "^1.15.0", - "phpunit/phpunit": "^11.5.6", - "psalm/plugin-phpunit": "^0.19.2", - "roave/infection-static-analysis-plugin": "^1.36.0", - "vimeo/psalm": "^6.3.0" + "phpunit/phpunit": "^11.5.44", + "psalm/plugin-phpunit": "^0.19.5", + "roave/infection-static-analysis-plugin": "^1.39.0", + "vimeo/psalm": "^6.13.1" }, "type": "library", "autoload": { @@ -3197,7 +3211,7 @@ "description": "Provides efficient querying for installed package versions (no runtime IO)", "support": { "issues": "https://github.com/Ocramius/PackageVersions/issues", - "source": "https://github.com/Ocramius/PackageVersions/tree/2.10.0" + "source": "https://github.com/Ocramius/PackageVersions/tree/2.11.0" }, "funding": [ { @@ -3209,7 +3223,7 @@ "type": "tidelift" } ], - "time": "2025-02-05T12:31:16+00:00" + "time": "2025-11-27T11:43:11+00:00" }, { "name": "ondram/ci-detector", @@ -3619,16 +3633,16 @@ }, { "name": "phpstan/phpdoc-parser", - "version": "2.3.0", + "version": "2.3.2", "source": { "type": "git", "url": "https://github.com/phpstan/phpdoc-parser.git", - "reference": "1e0cd5370df5dd2e556a36b9c62f62e555870495" + "reference": "a004701b11273a26cd7955a61d67a7f1e525a45a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/1e0cd5370df5dd2e556a36b9c62f62e555870495", - "reference": "1e0cd5370df5dd2e556a36b9c62f62e555870495", + "url": "https://api.github.com/repos/phpstan/phpdoc-parser/zipball/a004701b11273a26cd7955a61d67a7f1e525a45a", + "reference": "a004701b11273a26cd7955a61d67a7f1e525a45a", "shasum": "" }, "require": { @@ -3660,17 +3674,17 @@ "description": "PHPDoc parser with support for nullable, intersection and generic types", "support": { "issues": "https://github.com/phpstan/phpdoc-parser/issues", - "source": "https://github.com/phpstan/phpdoc-parser/tree/2.3.0" + "source": "https://github.com/phpstan/phpdoc-parser/tree/2.3.2" }, - "time": "2025-08-30T15:50:23+00:00" + "time": "2026-01-25T14:56:51+00:00" }, { "name": "phpstan/phpstan", - "version": "2.1.31", + "version": "2.1.54", "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan/zipball/ead89849d879fe203ce9292c6ef5e7e76f867b96", - "reference": "ead89849d879fe203ce9292c6ef5e7e76f867b96", + "url": "https://api.github.com/repos/phpstan/phpstan/zipball/8be50c3992107dc837b17da4d140fbbdf9a5c5bd", + "reference": "8be50c3992107dc837b17da4d140fbbdf9a5c5bd", "shasum": "" }, "require": { @@ -3715,25 +3729,25 @@ "type": "github" } ], - "time": "2025-10-10T14:14:11+00:00" + "time": "2026-04-29T13:31:09+00:00" }, { "name": "phpstan/phpstan-deprecation-rules", - "version": "2.0.3", + "version": "2.0.4", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan-deprecation-rules.git", - "reference": "468e02c9176891cc901143da118f09dc9505fc2f" + "reference": "6b5571001a7f04fa0422254c30a0017ec2f2cacc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan-deprecation-rules/zipball/468e02c9176891cc901143da118f09dc9505fc2f", - "reference": "468e02c9176891cc901143da118f09dc9505fc2f", + "url": "https://api.github.com/repos/phpstan/phpstan-deprecation-rules/zipball/6b5571001a7f04fa0422254c30a0017ec2f2cacc", + "reference": "6b5571001a7f04fa0422254c30a0017ec2f2cacc", "shasum": "" }, "require": { "php": "^7.4 || ^8.0", - "phpstan/phpstan": "^2.1.15" + "phpstan/phpstan": "^2.1.39" }, "require-dev": { "php-parallel-lint/php-parallel-lint": "^1.2", @@ -3758,11 +3772,14 @@ "MIT" ], "description": "PHPStan rules for detecting usage of deprecated classes, methods, properties, constants and traits.", + "keywords": [ + "static analysis" + ], "support": { "issues": "https://github.com/phpstan/phpstan-deprecation-rules/issues", - "source": "https://github.com/phpstan/phpstan-deprecation-rules/tree/2.0.3" + "source": "https://github.com/phpstan/phpstan-deprecation-rules/tree/2.0.4" }, - "time": "2025-05-14T10:56:57+00:00" + "time": "2026-02-09T13:21:14+00:00" }, { "name": "phpstan/phpstan-mockery", @@ -3815,21 +3832,21 @@ }, { "name": "phpstan/phpstan-phpunit", - "version": "2.0.7", + "version": "2.0.16", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan-phpunit.git", - "reference": "9a9b161baee88a5f5c58d816943cff354ff233dc" + "reference": "6ab598e1bc106e6827fd346ae4a12b4a5d634c32" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan-phpunit/zipball/9a9b161baee88a5f5c58d816943cff354ff233dc", - "reference": "9a9b161baee88a5f5c58d816943cff354ff233dc", + "url": "https://api.github.com/repos/phpstan/phpstan-phpunit/zipball/6ab598e1bc106e6827fd346ae4a12b4a5d634c32", + "reference": "6ab598e1bc106e6827fd346ae4a12b4a5d634c32", "shasum": "" }, "require": { "php": "^7.4 || ^8.0", - "phpstan/phpstan": "^2.1.18" + "phpstan/phpstan": "^2.1.32" }, "conflict": { "phpunit/phpunit": "<7.0" @@ -3860,29 +3877,32 @@ "MIT" ], "description": "PHPUnit extensions and rules for PHPStan", + "keywords": [ + "static analysis" + ], "support": { "issues": "https://github.com/phpstan/phpstan-phpunit/issues", - "source": "https://github.com/phpstan/phpstan-phpunit/tree/2.0.7" + "source": "https://github.com/phpstan/phpstan-phpunit/tree/2.0.16" }, - "time": "2025-07-13T11:31:46+00:00" + "time": "2026-02-14T09:05:21+00:00" }, { "name": "phpstan/phpstan-strict-rules", - "version": "2.0.7", + "version": "2.0.11", "source": { "type": "git", "url": "https://github.com/phpstan/phpstan-strict-rules.git", - "reference": "d6211c46213d4181054b3d77b10a5c5cb0d59538" + "reference": "9b000a578b85b32945b358b172c7b20e91189024" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/phpstan/phpstan-strict-rules/zipball/d6211c46213d4181054b3d77b10a5c5cb0d59538", - "reference": "d6211c46213d4181054b3d77b10a5c5cb0d59538", + "url": "https://api.github.com/repos/phpstan/phpstan-strict-rules/zipball/9b000a578b85b32945b358b172c7b20e91189024", + "reference": "9b000a578b85b32945b358b172c7b20e91189024", "shasum": "" }, "require": { "php": "^7.4 || ^8.0", - "phpstan/phpstan": "^2.1.29" + "phpstan/phpstan": "^2.1.39" }, "require-dev": { "php-parallel-lint/php-parallel-lint": "^1.2", @@ -3908,42 +3928,44 @@ "MIT" ], "description": "Extra strict and opinionated rules for PHPStan", + "keywords": [ + "static analysis" + ], "support": { "issues": "https://github.com/phpstan/phpstan-strict-rules/issues", - "source": "https://github.com/phpstan/phpstan-strict-rules/tree/2.0.7" + "source": "https://github.com/phpstan/phpstan-strict-rules/tree/2.0.11" }, - "time": "2025-09-26T11:19:08+00:00" + "time": "2026-05-02T06:54:10+00:00" }, { "name": "phpunit/php-code-coverage", - "version": "12.4.0", + "version": "12.5.6", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "67e8aed88f93d0e6e1cb7effe1a2dfc2fee6022c" + "reference": "876099a072646c7745f673d7aeab5382c4439691" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/67e8aed88f93d0e6e1cb7effe1a2dfc2fee6022c", - "reference": "67e8aed88f93d0e6e1cb7effe1a2dfc2fee6022c", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/876099a072646c7745f673d7aeab5382c4439691", + "reference": "876099a072646c7745f673d7aeab5382c4439691", "shasum": "" }, "require": { "ext-dom": "*", "ext-libxml": "*", "ext-xmlwriter": "*", - "nikic/php-parser": "^5.6.1", + "nikic/php-parser": "^5.7.0", "php": ">=8.3", - "phpunit/php-file-iterator": "^6.0", "phpunit/php-text-template": "^5.0", "sebastian/complexity": "^5.0", "sebastian/environment": "^8.0.3", "sebastian/lines-of-code": "^4.0", "sebastian/version": "^6.0", - "theseer/tokenizer": "^1.2.3" + "theseer/tokenizer": "^2.0.1" }, "require-dev": { - "phpunit/phpunit": "^12.3.7" + "phpunit/phpunit": "^12.5.1" }, "suggest": { "ext-pcov": "PHP extension that provides line coverage", @@ -3952,7 +3974,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "12.4.x-dev" + "dev-main": "12.5.x-dev" } }, "autoload": { @@ -3981,7 +4003,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/php-code-coverage/issues", "security": "https://github.com/sebastianbergmann/php-code-coverage/security/policy", - "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/12.4.0" + "source": "https://github.com/sebastianbergmann/php-code-coverage/tree/12.5.6" }, "funding": [ { @@ -4001,20 +4023,20 @@ "type": "tidelift" } ], - "time": "2025-09-24T13:44:41+00:00" + "time": "2026-04-15T08:23:17+00:00" }, { "name": "phpunit/php-file-iterator", - "version": "6.0.0", + "version": "6.0.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-file-iterator.git", - "reference": "961bc913d42fe24a257bfff826a5068079ac7782" + "reference": "3d1cd096ef6bea4bf2762ba586e35dbd317cbfd5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/961bc913d42fe24a257bfff826a5068079ac7782", - "reference": "961bc913d42fe24a257bfff826a5068079ac7782", + "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/3d1cd096ef6bea4bf2762ba586e35dbd317cbfd5", + "reference": "3d1cd096ef6bea4bf2762ba586e35dbd317cbfd5", "shasum": "" }, "require": { @@ -4054,15 +4076,27 @@ "support": { "issues": "https://github.com/sebastianbergmann/php-file-iterator/issues", "security": "https://github.com/sebastianbergmann/php-file-iterator/security/policy", - "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/6.0.0" + "source": "https://github.com/sebastianbergmann/php-file-iterator/tree/6.0.1" }, "funding": [ { "url": "https://github.com/sebastianbergmann", "type": "github" + }, + { + "url": "https://liberapay.com/sebastianbergmann", + "type": "liberapay" + }, + { + "url": "https://thanks.dev/u/gh/sebastianbergmann", + "type": "thanks_dev" + }, + { + "url": "https://tidelift.com/funding/github/packagist/phpunit/php-file-iterator", + "type": "tidelift" } ], - "time": "2025-02-07T04:58:37+00:00" + "time": "2026-02-02T14:04:18+00:00" }, { "name": "phpunit/php-invoker", @@ -4250,16 +4284,16 @@ }, { "name": "phpunit/phpunit", - "version": "12.4.1", + "version": "12.5.24", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "fc5413a2e6d240d2f6d9317bdf7f0a24e73de194" + "reference": "d75dd30597caa80e72fad2ef7904601a30ef1046" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/fc5413a2e6d240d2f6d9317bdf7f0a24e73de194", - "reference": "fc5413a2e6d240d2f6d9317bdf7f0a24e73de194", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/d75dd30597caa80e72fad2ef7904601a30ef1046", + "reference": "d75dd30597caa80e72fad2ef7904601a30ef1046", "shasum": "" }, "require": { @@ -4273,18 +4307,19 @@ "phar-io/manifest": "^2.0.4", "phar-io/version": "^3.2.1", "php": ">=8.3", - "phpunit/php-code-coverage": "^12.4.0", - "phpunit/php-file-iterator": "^6.0.0", + "phpunit/php-code-coverage": "^12.5.6", + "phpunit/php-file-iterator": "^6.0.1", "phpunit/php-invoker": "^6.0.0", "phpunit/php-text-template": "^5.0.0", "phpunit/php-timer": "^8.0.0", "sebastian/cli-parser": "^4.2.0", - "sebastian/comparator": "^7.1.3", + "sebastian/comparator": "^7.1.6", "sebastian/diff": "^7.0.0", - "sebastian/environment": "^8.0.3", + "sebastian/environment": "^8.1.0", "sebastian/exporter": "^7.0.2", "sebastian/global-state": "^8.0.2", "sebastian/object-enumerator": "^7.0.0", + "sebastian/recursion-context": "^7.0.1", "sebastian/type": "^6.0.3", "sebastian/version": "^6.0.0", "staabm/side-effects-detector": "^1.0.5" @@ -4295,7 +4330,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "12.4-dev" + "dev-main": "12.5-dev" } }, "autoload": { @@ -4327,31 +4362,15 @@ "support": { "issues": "https://github.com/sebastianbergmann/phpunit/issues", "security": "https://github.com/sebastianbergmann/phpunit/security/policy", - "source": "https://github.com/sebastianbergmann/phpunit/tree/12.4.1" + "source": "https://github.com/sebastianbergmann/phpunit/tree/12.5.24" }, "funding": [ { - "url": "https://phpunit.de/sponsors.html", - "type": "custom" - }, - { - "url": "https://github.com/sebastianbergmann", - "type": "github" - }, - { - "url": "https://liberapay.com/sebastianbergmann", - "type": "liberapay" - }, - { - "url": "https://thanks.dev/u/gh/sebastianbergmann", - "type": "thanks_dev" - }, - { - "url": "https://tidelift.com/funding/github/packagist/phpunit/phpunit", - "type": "tidelift" + "url": "https://phpunit.de/sponsoring.html", + "type": "other" } ], - "time": "2025-10-09T14:08:29+00:00" + "time": "2026-05-01T04:21:04+00:00" }, { "name": "psr/clock", @@ -4692,16 +4711,16 @@ }, { "name": "react/event-loop", - "version": "v1.5.0", + "version": "v1.6.0", "source": { "type": "git", "url": "https://github.com/reactphp/event-loop.git", - "reference": "bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354" + "reference": "ba276bda6083df7e0050fd9b33f66ad7a4ac747a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/reactphp/event-loop/zipball/bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354", - "reference": "bbe0bd8c51ffc05ee43f1729087ed3bdf7d53354", + "url": "https://api.github.com/repos/reactphp/event-loop/zipball/ba276bda6083df7e0050fd9b33f66ad7a4ac747a", + "reference": "ba276bda6083df7e0050fd9b33f66ad7a4ac747a", "shasum": "" }, "require": { @@ -4752,7 +4771,7 @@ ], "support": { "issues": "https://github.com/reactphp/event-loop/issues", - "source": "https://github.com/reactphp/event-loop/tree/v1.5.0" + "source": "https://github.com/reactphp/event-loop/tree/v1.6.0" }, "funding": [ { @@ -4760,7 +4779,7 @@ "type": "open_collective" } ], - "time": "2023-11-13T13:48:05+00:00" + "time": "2025-11-17T20:46:25+00:00" }, { "name": "react/promise", @@ -4837,21 +4856,21 @@ }, { "name": "rector/rector", - "version": "2.2.1", + "version": "2.4.2", "source": { "type": "git", "url": "https://github.com/rectorphp/rector.git", - "reference": "e1aaf3061e9ae9342ed0824865e3a3360defddeb" + "reference": "e645b6463c6a88ea5b44b17d3387d35a912c7946" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/rectorphp/rector/zipball/e1aaf3061e9ae9342ed0824865e3a3360defddeb", - "reference": "e1aaf3061e9ae9342ed0824865e3a3360defddeb", + "url": "https://api.github.com/repos/rectorphp/rector/zipball/e645b6463c6a88ea5b44b17d3387d35a912c7946", + "reference": "e645b6463c6a88ea5b44b17d3387d35a912c7946", "shasum": "" }, "require": { "php": "^7.4|^8.0", - "phpstan/phpstan": "^2.1.26" + "phpstan/phpstan": "^2.1.48" }, "conflict": { "rector/rector-doctrine": "*", @@ -4885,7 +4904,7 @@ ], "support": { "issues": "https://github.com/rectorphp/rector/issues", - "source": "https://github.com/rectorphp/rector/tree/2.2.1" + "source": "https://github.com/rectorphp/rector/tree/2.4.2" }, "funding": [ { @@ -4893,20 +4912,20 @@ "type": "github" } ], - "time": "2025-10-06T21:25:14+00:00" + "time": "2026-04-16T13:07:34+00:00" }, { "name": "revolt/event-loop", - "version": "v1.0.7", + "version": "v1.0.8", "source": { "type": "git", "url": "https://github.com/revoltphp/event-loop.git", - "reference": "09bf1bf7f7f574453efe43044b06fafe12216eb3" + "reference": "b6fc06dce8e9b523c9946138fa5e62181934f91c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/revoltphp/event-loop/zipball/09bf1bf7f7f574453efe43044b06fafe12216eb3", - "reference": "09bf1bf7f7f574453efe43044b06fafe12216eb3", + "url": "https://api.github.com/repos/revoltphp/event-loop/zipball/b6fc06dce8e9b523c9946138fa5e62181934f91c", + "reference": "b6fc06dce8e9b523c9946138fa5e62181934f91c", "shasum": "" }, "require": { @@ -4963,37 +4982,37 @@ ], "support": { "issues": "https://github.com/revoltphp/event-loop/issues", - "source": "https://github.com/revoltphp/event-loop/tree/v1.0.7" + "source": "https://github.com/revoltphp/event-loop/tree/v1.0.8" }, - "time": "2025-01-25T19:27:39+00:00" + "time": "2025-08-27T21:33:23+00:00" }, { "name": "roave/backward-compatibility-check", - "version": "8.15.0", + "version": "8.19.0", "source": { "type": "git", "url": "https://github.com/Roave/BackwardCompatibilityCheck.git", - "reference": "8fa5863142c04febd76ad45758e6e8c929b15260" + "reference": "810eb88eeff37ef300653bcfb77ca51a314777a2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Roave/BackwardCompatibilityCheck/zipball/8fa5863142c04febd76ad45758e6e8c929b15260", - "reference": "8fa5863142c04febd76ad45758e6e8c929b15260", + "url": "https://api.github.com/repos/Roave/BackwardCompatibilityCheck/zipball/810eb88eeff37ef300653bcfb77ca51a314777a2", + "reference": "810eb88eeff37ef300653bcfb77ca51a314777a2", "shasum": "" }, "require": { - "azjezz/psl": "^4.0.1", - "composer/composer": "^2.8.12", + "azjezz/psl": "^4.2.1", + "composer/composer": "^2.9.5", "ext-dom": "*", "ext-json": "*", "ext-libxml": "*", "ext-simplexml": "*", - "nikic/php-parser": "^5.6.1", + "nikic/php-parser": "^5.7.0", "nikolaposa/version": "^4.2.1", - "ocramius/package-versions": "^2.10.0", - "php": "~8.3.0 || ~8.4.0", - "roave/better-reflection": "^6.65.0", - "symfony/console": "^7.3.4" + "ocramius/package-versions": "^2.11.0", + "php": "~8.3.0 || ~8.4.0 || ~8.5.0", + "roave/better-reflection": "^6.69.0", + "symfony/console": "^7.4.4" }, "conflict": { "marc-mabe/php-enum": "<4.7.2", @@ -5002,14 +5021,14 @@ }, "require-dev": { "doctrine/coding-standard": "^14.0.0", - "justinrainbow/json-schema": "^6.6.0", + "justinrainbow/json-schema": "^6.6.4", "php-standard-library/psalm-plugin": "^2.3.0", - "phpunit/phpunit": "^12.4.1", + "phpunit/phpunit": "^12.5.11", "psalm/plugin-phpunit": "^0.19.5", - "roave/infection-static-analysis-plugin": "^1.39.0", + "roave/infection-static-analysis-plugin": "^1.43.0", "roave/security-advisories": "dev-master", - "squizlabs/php_codesniffer": "^4.0.0", - "vimeo/psalm": "^6.13.1" + "squizlabs/php_codesniffer": "^4.0.1", + "vimeo/psalm": "^6.15.1" }, "bin": [ "bin/roave-backward-compatibility-check" @@ -5037,36 +5056,36 @@ "description": "Tool to compare two revisions of a public API to check for BC breaks", "support": { "issues": "https://github.com/Roave/BackwardCompatibilityCheck/issues", - "source": "https://github.com/Roave/BackwardCompatibilityCheck/tree/8.15.0" + "source": "https://github.com/Roave/BackwardCompatibilityCheck/tree/8.19.0" }, - "time": "2025-10-20T16:24:13+00:00" + "time": "2026-02-13T19:14:25+00:00" }, { "name": "roave/better-reflection", - "version": "6.65.0", + "version": "6.71.0", "source": { "type": "git", "url": "https://github.com/Roave/BetterReflection.git", - "reference": "fa1906fd72991d7ac7ff9e8169eb4bcd4c51bdba" + "reference": "3ec176d4a161b4e8764edc625d69ff624ca390b1" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/Roave/BetterReflection/zipball/fa1906fd72991d7ac7ff9e8169eb4bcd4c51bdba", - "reference": "fa1906fd72991d7ac7ff9e8169eb4bcd4c51bdba", + "url": "https://api.github.com/repos/Roave/BetterReflection/zipball/3ec176d4a161b4e8764edc625d69ff624ca390b1", + "reference": "3ec176d4a161b4e8764edc625d69ff624ca390b1", "shasum": "" }, "require": { "ext-json": "*", - "jetbrains/phpstorm-stubs": "2024.3", - "nikic/php-parser": "^5.6.1", - "php": "~8.2.0 || ~8.3.2 || ~8.4.1 || ~8.5.0" + "jetbrains/phpstorm-stubs": "2026.1", + "nikic/php-parser": "^5.7.0", + "php": "~8.4.1 || ~8.5.0" }, "conflict": { "thecodingmachine/safe": "<1.1.3" }, "require-dev": { - "phpbench/phpbench": "^1.4.1", - "phpunit/phpunit": "^11.5.42" + "phpbench/phpbench": "^1.6.1", + "phpunit/phpunit": "^13.1.8" }, "suggest": { "composer/composer": "Required to use the ComposerSourceLocator" @@ -5106,22 +5125,22 @@ "description": "Better Reflection - an improved code reflection API", "support": { "issues": "https://github.com/Roave/BetterReflection/issues", - "source": "https://github.com/Roave/BetterReflection/tree/6.65.0" + "source": "https://github.com/Roave/BetterReflection/tree/6.71.0" }, - "time": "2025-09-29T09:52:03+00:00" + "time": "2026-05-02T10:56:00+00:00" }, { "name": "sanmai/di-container", - "version": "0.1.5", + "version": "0.1.12", "source": { "type": "git", "url": "https://github.com/sanmai/di-container.git", - "reference": "355534ad7970fc7dab4211ecaf2da5c546855ee8" + "reference": "8b9ad72f6ac1f9e185e5bd060dc9479cb5191d8b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sanmai/di-container/zipball/355534ad7970fc7dab4211ecaf2da5c546855ee8", - "reference": "355534ad7970fc7dab4211ecaf2da5c546855ee8", + "url": "https://api.github.com/repos/sanmai/di-container/zipball/8b9ad72f6ac1f9e185e5bd060dc9479cb5191d8b", + "reference": "8b9ad72f6ac1f9e185e5bd060dc9479cb5191d8b", "shasum": "" }, "require": { @@ -5132,14 +5151,18 @@ "require-dev": { "ergebnis/composer-normalize": "^2.8", "friendsofphp/php-cs-fixer": "^3.17", - "infection/infection": ">=0.29", + "infection/infection": ">=0.31", "php-coveralls/php-coveralls": "^2.4.1", + "phpbench/phpbench": "^1.4", "phpstan/extension-installer": "^1.4", "phpunit/phpunit": "^11.5.25", "sanmai/phpstan-rules": "^0.3.10" }, "type": "library", "extra": { + "branch-alias": { + "dev-main": "0.1.x-dev" + }, "preferred-install": "dist" }, "autoload": { @@ -5175,7 +5198,7 @@ ], "support": { "issues": "https://github.com/sanmai/di-container/issues", - "source": "https://github.com/sanmai/di-container/tree/0.1.5" + "source": "https://github.com/sanmai/di-container/tree/0.1.12" }, "funding": [ { @@ -5183,20 +5206,20 @@ "type": "github" } ], - "time": "2025-08-04T09:43:58+00:00" + "time": "2026-01-27T08:25:46+00:00" }, { "name": "sanmai/duoclock", - "version": "0.1.1", + "version": "0.1.3", "source": { "type": "git", "url": "https://github.com/sanmai/DuoClock.git", - "reference": "30aa40092396dc96b68c8e8d49162619574477e2" + "reference": "47461e3ff65b7308635047831a55615652e7be1a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sanmai/DuoClock/zipball/30aa40092396dc96b68c8e8d49162619574477e2", - "reference": "30aa40092396dc96b68c8e8d49162619574477e2", + "url": "https://api.github.com/repos/sanmai/DuoClock/zipball/47461e3ff65b7308635047831a55615652e7be1a", + "reference": "47461e3ff65b7308635047831a55615652e7be1a", "shasum": "" }, "require": { @@ -5214,8 +5237,7 @@ "phpstan/extension-installer": "^1.4", "phpstan/phpstan": "^2", "phpunit/phpunit": "^11.5.25", - "sanmai/phpstan-rules": "^0.3.1", - "vimeo/psalm": "^6.12" + "sanmai/phpstan-rules": "^0.3.1" }, "type": "library", "extra": { @@ -5239,7 +5261,7 @@ "description": "PHP time mocking for tests - PSR-20 clock with mockable sleep(), time(), and TimeSpy for PHPUnit testing", "support": { "issues": "https://github.com/sanmai/DuoClock/issues", - "source": "https://github.com/sanmai/DuoClock/tree/0.1.1" + "source": "https://github.com/sanmai/DuoClock/tree/0.1.3" }, "funding": [ { @@ -5247,7 +5269,7 @@ "type": "github" } ], - "time": "2025-07-28T02:17:28+00:00" + "time": "2025-12-26T06:12:34+00:00" }, { "name": "sanmai/later", @@ -5315,16 +5337,16 @@ }, { "name": "sanmai/pipeline", - "version": "7.3", + "version": "7.9", "source": { "type": "git", "url": "https://github.com/sanmai/pipeline.git", - "reference": "98b114341fa65d1aefe37e83597fe4b2f2140784" + "reference": "d7046ecce91ae57fca403be694888371a21250eb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sanmai/pipeline/zipball/98b114341fa65d1aefe37e83597fe4b2f2140784", - "reference": "98b114341fa65d1aefe37e83597fe4b2f2140784", + "url": "https://api.github.com/repos/sanmai/pipeline/zipball/d7046ecce91ae57fca403be694888371a21250eb", + "reference": "d7046ecce91ae57fca403be694888371a21250eb", "shasum": "" }, "require": { @@ -5334,7 +5356,7 @@ "ergebnis/composer-normalize": "^2.8", "esi/phpunit-coverage-check": ">2", "friendsofphp/php-cs-fixer": "^3.17", - "infection/infection": ">=0.30.3", + "infection/infection": ">=0.32.3", "league/pipeline": "^0.3 || ^1.0", "php-coveralls/php-coveralls": "^2.4.1", "phpstan/extension-installer": "^1.4", @@ -5347,7 +5369,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "v6.x-dev" + "dev-main": "7.x-dev" } }, "autoload": { @@ -5371,7 +5393,7 @@ "description": "General-purpose collections pipeline", "support": { "issues": "https://github.com/sanmai/pipeline/issues", - "source": "https://github.com/sanmai/pipeline/tree/7.3" + "source": "https://github.com/sanmai/pipeline/tree/7.9" }, "funding": [ { @@ -5379,7 +5401,7 @@ "type": "github" } ], - "time": "2025-10-08T02:23:30+00:00" + "time": "2026-01-16T11:54:05+00:00" }, { "name": "sebastian/cli-parser", @@ -5452,16 +5474,16 @@ }, { "name": "sebastian/comparator", - "version": "7.1.3", + "version": "7.1.6", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "dc904b4bb3ab070865fa4068cd84f3da8b945148" + "reference": "c769009dee98f494e0edc3fd4f4087501688f11e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/dc904b4bb3ab070865fa4068cd84f3da8b945148", - "reference": "dc904b4bb3ab070865fa4068cd84f3da8b945148", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/c769009dee98f494e0edc3fd4f4087501688f11e", + "reference": "c769009dee98f494e0edc3fd4f4087501688f11e", "shasum": "" }, "require": { @@ -5520,7 +5542,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/comparator/issues", "security": "https://github.com/sebastianbergmann/comparator/security/policy", - "source": "https://github.com/sebastianbergmann/comparator/tree/7.1.3" + "source": "https://github.com/sebastianbergmann/comparator/tree/7.1.6" }, "funding": [ { @@ -5540,7 +5562,7 @@ "type": "tidelift" } ], - "time": "2025-08-20T11:27:00+00:00" + "time": "2026-04-14T08:23:15+00:00" }, { "name": "sebastian/complexity", @@ -5669,16 +5691,16 @@ }, { "name": "sebastian/environment", - "version": "8.0.3", + "version": "8.1.0", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/environment.git", - "reference": "24a711b5c916efc6d6e62aa65aa2ec98fef77f68" + "reference": "b121608b28a13f721e76ffbbd386d08eff58f3f6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/24a711b5c916efc6d6e62aa65aa2ec98fef77f68", - "reference": "24a711b5c916efc6d6e62aa65aa2ec98fef77f68", + "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/b121608b28a13f721e76ffbbd386d08eff58f3f6", + "reference": "b121608b28a13f721e76ffbbd386d08eff58f3f6", "shasum": "" }, "require": { @@ -5693,7 +5715,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-main": "8.0-dev" + "dev-main": "8.1-dev" } }, "autoload": { @@ -5721,7 +5743,7 @@ "support": { "issues": "https://github.com/sebastianbergmann/environment/issues", "security": "https://github.com/sebastianbergmann/environment/security/policy", - "source": "https://github.com/sebastianbergmann/environment/tree/8.0.3" + "source": "https://github.com/sebastianbergmann/environment/tree/8.1.0" }, "funding": [ { @@ -5741,7 +5763,7 @@ "type": "tidelift" } ], - "time": "2025-08-12T14:11:56+00:00" + "time": "2026-04-15T12:13:01+00:00" }, { "name": "sebastian/exporter", @@ -6453,49 +6475,51 @@ }, { "name": "shipmonk/dead-code-detector", - "version": "0.13.4", + "version": "0.14.1", "source": { "type": "git", "url": "https://github.com/shipmonk-rnd/dead-code-detector.git", - "reference": "5acf47424cc0eb0d72a80b3695051c64e590fe08" + "reference": "4fdc912b25b1e169041f534a517126a1090bb2f4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/shipmonk-rnd/dead-code-detector/zipball/5acf47424cc0eb0d72a80b3695051c64e590fe08", - "reference": "5acf47424cc0eb0d72a80b3695051c64e590fe08", + "url": "https://api.github.com/repos/shipmonk-rnd/dead-code-detector/zipball/4fdc912b25b1e169041f534a517126a1090bb2f4", + "reference": "4fdc912b25b1e169041f534a517126a1090bb2f4", "shasum": "" }, "require": { "php": "^7.4 || ^8.0", - "phpstan/phpstan": "^2.1.12" + "phpstan/phpstan": "^2.1.23" }, "require-dev": { "composer-runtime-api": "^2.0", "composer/semver": "^3.4", "doctrine/orm": "^2.19 || ^3.0", "editorconfig-checker/editorconfig-checker": "^10.6.0", - "ergebnis/composer-normalize": "^2.45.0", + "ergebnis/composer-normalize": "^2.48.1", "nette/application": "^3.1", "nette/component-model": "^3.0", "nette/utils": "^3.0 || ^4.0", "nikic/php-parser": "^5.4.0", + "phpbench/phpbench": "^1.2", "phpstan/phpstan-phpunit": "^2.0.4", "phpstan/phpstan-strict-rules": "^2.0.3", "phpstan/phpstan-symfony": "^2.0.2", "phpunit/phpcov": "^8.2", "phpunit/phpunit": "^9.6.22", - "shipmonk/coding-standard": "^0.1.3", + "shipmonk/coding-standard": "^0.2.0", "shipmonk/composer-dependency-analyser": "^1.8.2", + "shipmonk/coverage-guard": "^1.0.0", "shipmonk/name-collision-detector": "^2.1.1", "shipmonk/phpstan-dev": "^0.1.1", "shipmonk/phpstan-rules": "^4.1.0", - "symfony/contracts": "^2.5 || ^3.0", - "symfony/dependency-injection": "^5.4 || ^6.0 || ^7.0", - "symfony/doctrine-bridge": "^5.4 || ^6.0 || ^7.0", - "symfony/event-dispatcher": "^5.4 || ^6.0 || ^7.0", - "symfony/http-kernel": "^5.4 || ^6.0 || ^7.0", - "symfony/routing": "^5.4 || ^6.0 || ^7.0", - "symfony/validator": "^5.4 || ^6.0 || ^7.0", + "symfony/contracts": "^2.5 || ^3.0 || ^4.0", + "symfony/dependency-injection": "^5.4 || ^6.0 || ^7.0 || ^8.0", + "symfony/doctrine-bridge": "^5.4 || ^6.0 || ^7.0 || ^8.0", + "symfony/event-dispatcher": "^5.4 || ^6.0 || ^7.0 || ^8.0", + "symfony/http-kernel": "^5.4 || ^6.0 || ^7.0 || ^8.0", + "symfony/routing": "^5.4 || ^6.0 || ^7.0 || ^8.0", + "symfony/validator": "^5.4 || ^6.0 || ^7.0 || ^8.0", "twig/twig": "^3.0" }, "type": "phpstan-extension", @@ -6524,27 +6548,27 @@ ], "support": { "issues": "https://github.com/shipmonk-rnd/dead-code-detector/issues", - "source": "https://github.com/shipmonk-rnd/dead-code-detector/tree/0.13.4" + "source": "https://github.com/shipmonk-rnd/dead-code-detector/tree/0.14.1" }, - "time": "2025-10-09T17:12:07+00:00" + "time": "2025-12-18T11:03:53+00:00" }, { "name": "shipmonk/phpstan-rules", - "version": "4.2.1", + "version": "4.3.7", "source": { "type": "git", "url": "https://github.com/shipmonk-rnd/phpstan-rules.git", - "reference": "2c3a585230138ce1f4b276fe203cc378693dece8" + "reference": "a46689f9179206f1edcfe078bcec6fc1ec5bf202" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/shipmonk-rnd/phpstan-rules/zipball/2c3a585230138ce1f4b276fe203cc378693dece8", - "reference": "2c3a585230138ce1f4b276fe203cc378693dece8", + "url": "https://api.github.com/repos/shipmonk-rnd/phpstan-rules/zipball/a46689f9179206f1edcfe078bcec6fc1ec5bf202", + "reference": "a46689f9179206f1edcfe078bcec6fc1ec5bf202", "shasum": "" }, "require": { "php": "^7.4 || ^8.0", - "phpstan/phpstan": "^2.1.8" + "phpstan/phpstan": "^2.1.32" }, "require-dev": { "editorconfig-checker/editorconfig-checker": "^10.6.0", @@ -6552,12 +6576,13 @@ "phpstan/phpstan-deprecation-rules": "^2.0.1", "phpstan/phpstan-phpunit": "^2.0.4", "phpstan/phpstan-strict-rules": "^2.0.3", - "phpunit/phpunit": "^9.6.22", - "shipmonk/coding-standard": "^0.1.3", + "phpunit/phpunit": "^9.6.33", + "shipmonk/coding-standard": "^0.2.0", "shipmonk/composer-dependency-analyser": "^1.8.1", + "shipmonk/coverage-guard": "^1.0.0", "shipmonk/dead-code-detector": "^0.9.0", "shipmonk/name-collision-detector": "^2.1.1", - "shipmonk/phpstan-dev": "^0.1.1" + "shipmonk/phpstan-dev": "^0.1.5" }, "type": "phpstan-extension", "extra": { @@ -6583,38 +6608,38 @@ ], "support": { "issues": "https://github.com/shipmonk-rnd/phpstan-rules/issues", - "source": "https://github.com/shipmonk-rnd/phpstan-rules/tree/4.2.1" + "source": "https://github.com/shipmonk-rnd/phpstan-rules/tree/4.3.7" }, - "time": "2025-09-04T07:48:25+00:00" + "time": "2026-04-07T07:56:34+00:00" }, { "name": "slevomat/coding-standard", - "version": "8.22.1", + "version": "8.28.1", "source": { "type": "git", "url": "https://github.com/slevomat/coding-standard.git", - "reference": "1dd80bf3b93692bedb21a6623c496887fad05fec" + "reference": "66151cfbd25b50e8becd9f809fb704f01fd4d6f2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/slevomat/coding-standard/zipball/1dd80bf3b93692bedb21a6623c496887fad05fec", - "reference": "1dd80bf3b93692bedb21a6623c496887fad05fec", + "url": "https://api.github.com/repos/slevomat/coding-standard/zipball/66151cfbd25b50e8becd9f809fb704f01fd4d6f2", + "reference": "66151cfbd25b50e8becd9f809fb704f01fd4d6f2", "shasum": "" }, "require": { - "dealerdirect/phpcodesniffer-composer-installer": "^0.6.2 || ^0.7 || ^1.1.2", + "dealerdirect/phpcodesniffer-composer-installer": "^0.7 || ^1.2.0", "php": "^7.4 || ^8.0", - "phpstan/phpdoc-parser": "^2.3.0", - "squizlabs/php_codesniffer": "^3.13.4" + "phpstan/phpdoc-parser": "^2.3.2", + "squizlabs/php_codesniffer": "^4.0.1" }, "require-dev": { - "phing/phing": "3.0.1|3.1.0", + "phing/phing": "3.0.1|3.1.2", "php-parallel-lint/php-parallel-lint": "1.4.0", - "phpstan/phpstan": "2.1.24", - "phpstan/phpstan-deprecation-rules": "2.0.3", - "phpstan/phpstan-phpunit": "2.0.7", - "phpstan/phpstan-strict-rules": "2.0.6", - "phpunit/phpunit": "9.6.8|10.5.48|11.4.4|11.5.36|12.3.10" + "phpstan/phpstan": "2.1.42", + "phpstan/phpstan-deprecation-rules": "2.0.4", + "phpstan/phpstan-phpunit": "2.0.16", + "phpstan/phpstan-strict-rules": "2.0.10", + "phpunit/phpunit": "9.6.34|10.5.63|11.4.4|11.5.50|12.5.14" }, "type": "phpcodesniffer-standard", "extra": { @@ -6638,7 +6663,7 @@ ], "support": { "issues": "https://github.com/slevomat/coding-standard/issues", - "source": "https://github.com/slevomat/coding-standard/tree/8.22.1" + "source": "https://github.com/slevomat/coding-standard/tree/8.28.1" }, "funding": [ { @@ -6650,41 +6675,36 @@ "type": "tidelift" } ], - "time": "2025-09-13T08:53:30+00:00" + "time": "2026-03-22T17:22:38+00:00" }, { "name": "squizlabs/php_codesniffer", - "version": "3.13.4", + "version": "4.0.1", "source": { "type": "git", "url": "https://github.com/PHPCSStandards/PHP_CodeSniffer.git", - "reference": "ad545ea9c1b7d270ce0fc9cbfb884161cd706119" + "reference": "0525c73950de35ded110cffafb9892946d7771b5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/ad545ea9c1b7d270ce0fc9cbfb884161cd706119", - "reference": "ad545ea9c1b7d270ce0fc9cbfb884161cd706119", + "url": "https://api.github.com/repos/PHPCSStandards/PHP_CodeSniffer/zipball/0525c73950de35ded110cffafb9892946d7771b5", + "reference": "0525c73950de35ded110cffafb9892946d7771b5", "shasum": "" }, "require": { "ext-simplexml": "*", "ext-tokenizer": "*", "ext-xmlwriter": "*", - "php": ">=5.4.0" + "php": ">=7.2.0" }, "require-dev": { - "phpunit/phpunit": "^4.0 || ^5.0 || ^6.0 || ^7.0 || ^8.0 || ^9.3.4" + "phpunit/phpunit": "^8.4.0 || ^9.3.4 || ^10.5.32 || 11.3.3 - 11.5.28 || ^11.5.31" }, "bin": [ "bin/phpcbf", "bin/phpcs" ], "type": "library", - "extra": { - "branch-alias": { - "dev-master": "3.x-dev" - } - }, "notification-url": "https://packagist.org/downloads/", "license": [ "BSD-3-Clause" @@ -6703,7 +6723,7 @@ "homepage": "https://github.com/PHPCSStandards/PHP_CodeSniffer/graphs/contributors" } ], - "description": "PHP_CodeSniffer tokenizes PHP, JavaScript and CSS files and detects violations of a defined set of coding standards.", + "description": "PHP_CodeSniffer tokenizes PHP files and detects violations of a defined set of coding standards.", "homepage": "https://github.com/PHPCSStandards/PHP_CodeSniffer", "keywords": [ "phpcs", @@ -6734,7 +6754,7 @@ "type": "thanks_dev" } ], - "time": "2025-09-05T05:47:09+00:00" + "time": "2025-11-10T16:43:36+00:00" }, { "name": "staabm/phpstan-psr3", @@ -6861,34 +6881,33 @@ }, { "name": "symfony/config", - "version": "v7.3.4", + "version": "v8.0.9", "source": { "type": "git", "url": "https://github.com/symfony/config.git", - "reference": "8a09223170046d2cfda3d2e11af01df2c641e961" + "reference": "7e712ee3c98ec114f674adc4fbad4c2fe7526b9c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/config/zipball/8a09223170046d2cfda3d2e11af01df2c641e961", - "reference": "8a09223170046d2cfda3d2e11af01df2c641e961", + "url": "https://api.github.com/repos/symfony/config/zipball/7e712ee3c98ec114f674adc4fbad4c2fe7526b9c", + "reference": "7e712ee3c98ec114f674adc4fbad4c2fe7526b9c", "shasum": "" }, "require": { - "php": ">=8.2", + "php": ">=8.4", "symfony/deprecation-contracts": "^2.5|^3", - "symfony/filesystem": "^7.1", - "symfony/polyfill-ctype": "~1.8" + "symfony/filesystem": "^7.4|^8.0", + "symfony/polyfill-ctype": "^1.8" }, "conflict": { - "symfony/finder": "<6.4", "symfony/service-contracts": "<2.5" }, "require-dev": { - "symfony/event-dispatcher": "^6.4|^7.0", - "symfony/finder": "^6.4|^7.0", - "symfony/messenger": "^6.4|^7.0", + "symfony/event-dispatcher": "^7.4|^8.0", + "symfony/finder": "^7.4|^8.0", + "symfony/messenger": "^7.4|^8.0", "symfony/service-contracts": "^2.5|^3", - "symfony/yaml": "^6.4|^7.0" + "symfony/yaml": "^7.4|^8.0" }, "type": "library", "autoload": { @@ -6916,7 +6935,7 @@ "description": "Helps you find, load, combine, autofill and validate configuration values of any kind", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/config/tree/v7.3.4" + "source": "https://github.com/symfony/config/tree/v8.0.9" }, "funding": [ { @@ -6936,20 +6955,20 @@ "type": "tidelift" } ], - "time": "2025-09-22T12:46:16+00:00" + "time": "2026-04-29T15:02:55+00:00" }, { "name": "symfony/console", - "version": "v7.3.4", + "version": "v7.4.9", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "2b9c5fafbac0399a20a2e82429e2bd735dcfb7db" + "reference": "d7d2b64a45a89d607865927b176fa51c33ddbb58" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/2b9c5fafbac0399a20a2e82429e2bd735dcfb7db", - "reference": "2b9c5fafbac0399a20a2e82429e2bd735dcfb7db", + "url": "https://api.github.com/repos/symfony/console/zipball/d7d2b64a45a89d607865927b176fa51c33ddbb58", + "reference": "d7d2b64a45a89d607865927b176fa51c33ddbb58", "shasum": "" }, "require": { @@ -6957,7 +6976,7 @@ "symfony/deprecation-contracts": "^2.5|^3", "symfony/polyfill-mbstring": "~1.0", "symfony/service-contracts": "^2.5|^3", - "symfony/string": "^7.2" + "symfony/string": "^7.2|^8.0" }, "conflict": { "symfony/dependency-injection": "<6.4", @@ -6971,16 +6990,16 @@ }, "require-dev": { "psr/log": "^1|^2|^3", - "symfony/config": "^6.4|^7.0", - "symfony/dependency-injection": "^6.4|^7.0", - "symfony/event-dispatcher": "^6.4|^7.0", - "symfony/http-foundation": "^6.4|^7.0", - "symfony/http-kernel": "^6.4|^7.0", - "symfony/lock": "^6.4|^7.0", - "symfony/messenger": "^6.4|^7.0", - "symfony/process": "^6.4|^7.0", - "symfony/stopwatch": "^6.4|^7.0", - "symfony/var-dumper": "^6.4|^7.0" + "symfony/config": "^6.4|^7.0|^8.0", + "symfony/dependency-injection": "^6.4|^7.0|^8.0", + "symfony/event-dispatcher": "^6.4|^7.0|^8.0", + "symfony/http-foundation": "^6.4|^7.0|^8.0", + "symfony/http-kernel": "^6.4|^7.0|^8.0", + "symfony/lock": "^6.4|^7.0|^8.0", + "symfony/messenger": "^6.4|^7.0|^8.0", + "symfony/process": "^6.4|^7.0|^8.0", + "symfony/stopwatch": "^6.4|^7.0|^8.0", + "symfony/var-dumper": "^6.4|^7.0|^8.0" }, "type": "library", "autoload": { @@ -7014,7 +7033,7 @@ "terminal" ], "support": { - "source": "https://github.com/symfony/console/tree/v7.3.4" + "source": "https://github.com/symfony/console/tree/v7.4.9" }, "funding": [ { @@ -7034,43 +7053,40 @@ "type": "tidelift" } ], - "time": "2025-09-22T15:31:00+00:00" + "time": "2026-04-22T15:21:55+00:00" }, { "name": "symfony/dependency-injection", - "version": "v7.3.4", + "version": "v8.0.9", "source": { "type": "git", "url": "https://github.com/symfony/dependency-injection.git", - "reference": "82119812ab0bf3425c1234d413efd1b19bb92ae4" + "reference": "85d359a3f72b8e1ae1466b4330149318442e3a8c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/82119812ab0bf3425c1234d413efd1b19bb92ae4", - "reference": "82119812ab0bf3425c1234d413efd1b19bb92ae4", + "url": "https://api.github.com/repos/symfony/dependency-injection/zipball/85d359a3f72b8e1ae1466b4330149318442e3a8c", + "reference": "85d359a3f72b8e1ae1466b4330149318442e3a8c", "shasum": "" }, "require": { - "php": ">=8.2", + "php": ">=8.4", "psr/container": "^1.1|^2.0", "symfony/deprecation-contracts": "^2.5|^3", - "symfony/service-contracts": "^3.5", - "symfony/var-exporter": "^6.4.20|^7.2.5" + "symfony/service-contracts": "^3.6", + "symfony/var-exporter": "^7.4|^8.0" }, "conflict": { - "ext-psr": "<1.1|>=2", - "symfony/config": "<6.4", - "symfony/finder": "<6.4", - "symfony/yaml": "<6.4" + "ext-psr": "<1.1|>=2" }, "provide": { "psr/container-implementation": "1.1|2.0", "symfony/service-implementation": "1.1|2.0|3.0" }, "require-dev": { - "symfony/config": "^6.4|^7.0", - "symfony/expression-language": "^6.4|^7.0", - "symfony/yaml": "^6.4|^7.0" + "symfony/config": "^7.4|^8.0", + "symfony/expression-language": "^7.4|^8.0", + "symfony/yaml": "^7.4|^8.0" }, "type": "library", "autoload": { @@ -7098,7 +7114,7 @@ "description": "Allows you to standardize and centralize the way objects are constructed in your application", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/dependency-injection/tree/v7.3.4" + "source": "https://github.com/symfony/dependency-injection/tree/v8.0.9" }, "funding": [ { @@ -7118,7 +7134,7 @@ "type": "tidelift" } ], - "time": "2025-09-11T10:12:26+00:00" + "time": "2026-04-30T18:39:49+00:00" }, { "name": "symfony/deprecation-contracts", @@ -7189,25 +7205,25 @@ }, { "name": "symfony/filesystem", - "version": "v7.3.2", + "version": "v8.0.9", "source": { "type": "git", "url": "https://github.com/symfony/filesystem.git", - "reference": "edcbb768a186b5c3f25d0643159a787d3e63b7fd" + "reference": "d1ec4543d5c6c2dac78503c2fae5ea0b3608ce40" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/filesystem/zipball/edcbb768a186b5c3f25d0643159a787d3e63b7fd", - "reference": "edcbb768a186b5c3f25d0643159a787d3e63b7fd", + "url": "https://api.github.com/repos/symfony/filesystem/zipball/d1ec4543d5c6c2dac78503c2fae5ea0b3608ce40", + "reference": "d1ec4543d5c6c2dac78503c2fae5ea0b3608ce40", "shasum": "" }, "require": { - "php": ">=8.2", + "php": ">=8.4", "symfony/polyfill-ctype": "~1.8", "symfony/polyfill-mbstring": "~1.8" }, "require-dev": { - "symfony/process": "^6.4|^7.0" + "symfony/process": "^7.4|^8.0" }, "type": "library", "autoload": { @@ -7235,7 +7251,7 @@ "description": "Provides basic utilities for the filesystem", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/filesystem/tree/v7.3.2" + "source": "https://github.com/symfony/filesystem/tree/v8.0.9" }, "funding": [ { @@ -7255,27 +7271,27 @@ "type": "tidelift" } ], - "time": "2025-07-07T08:17:47+00:00" + "time": "2026-04-18T13:51:42+00:00" }, { "name": "symfony/finder", - "version": "v7.3.2", + "version": "v8.0.8", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "2a6614966ba1074fa93dae0bc804227422df4dfe" + "reference": "8da41214757b87d97f181e3d14a4179286151007" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/2a6614966ba1074fa93dae0bc804227422df4dfe", - "reference": "2a6614966ba1074fa93dae0bc804227422df4dfe", + "url": "https://api.github.com/repos/symfony/finder/zipball/8da41214757b87d97f181e3d14a4179286151007", + "reference": "8da41214757b87d97f181e3d14a4179286151007", "shasum": "" }, "require": { - "php": ">=8.2" + "php": ">=8.4" }, "require-dev": { - "symfony/filesystem": "^6.4|^7.0" + "symfony/filesystem": "^7.4|^8.0" }, "type": "library", "autoload": { @@ -7303,7 +7319,7 @@ "description": "Finds files and directories via an intuitive fluent interface", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/finder/tree/v7.3.2" + "source": "https://github.com/symfony/finder/tree/v8.0.8" }, "funding": [ { @@ -7323,20 +7339,20 @@ "type": "tidelift" } ], - "time": "2025-07-15T13:41:35+00:00" + "time": "2026-03-30T15:14:47+00:00" }, { "name": "symfony/polyfill-ctype", - "version": "v1.33.0", + "version": "v1.37.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "a3cc8b044a6ea513310cbd48ef7333b384945638" + "reference": "141046a8f9477948ff284fa65be2095baafb94f2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/a3cc8b044a6ea513310cbd48ef7333b384945638", - "reference": "a3cc8b044a6ea513310cbd48ef7333b384945638", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/141046a8f9477948ff284fa65be2095baafb94f2", + "reference": "141046a8f9477948ff284fa65be2095baafb94f2", "shasum": "" }, "require": { @@ -7386,7 +7402,7 @@ "portable" ], "support": { - "source": "https://github.com/symfony/polyfill-ctype/tree/v1.33.0" + "source": "https://github.com/symfony/polyfill-ctype/tree/v1.37.0" }, "funding": [ { @@ -7406,20 +7422,20 @@ "type": "tidelift" } ], - "time": "2024-09-09T11:45:10+00:00" + "time": "2026-04-10T16:19:22+00:00" }, { "name": "symfony/polyfill-intl-grapheme", - "version": "v1.33.0", + "version": "v1.37.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-grapheme.git", - "reference": "380872130d3a5dd3ace2f4010d95125fde5d5c70" + "reference": "4864388bfbd3001ce88e234fab652acd91fdc57e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/380872130d3a5dd3ace2f4010d95125fde5d5c70", - "reference": "380872130d3a5dd3ace2f4010d95125fde5d5c70", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/4864388bfbd3001ce88e234fab652acd91fdc57e", + "reference": "4864388bfbd3001ce88e234fab652acd91fdc57e", "shasum": "" }, "require": { @@ -7468,7 +7484,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.33.0" + "source": "https://github.com/symfony/polyfill-intl-grapheme/tree/v1.37.0" }, "funding": [ { @@ -7488,11 +7504,11 @@ "type": "tidelift" } ], - "time": "2025-06-27T09:58:17+00:00" + "time": "2026-04-26T13:13:48+00:00" }, { "name": "symfony/polyfill-intl-normalizer", - "version": "v1.33.0", + "version": "v1.37.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git", @@ -7553,7 +7569,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.33.0" + "source": "https://github.com/symfony/polyfill-intl-normalizer/tree/v1.37.0" }, "funding": [ { @@ -7577,16 +7593,16 @@ }, { "name": "symfony/polyfill-mbstring", - "version": "v1.33.0", + "version": "v1.37.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "6d857f4d76bd4b343eac26d6b539585d2bc56493" + "reference": "6a21eb99c6973357967f6ce3708cd55a6bec6315" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/6d857f4d76bd4b343eac26d6b539585d2bc56493", - "reference": "6d857f4d76bd4b343eac26d6b539585d2bc56493", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/6a21eb99c6973357967f6ce3708cd55a6bec6315", + "reference": "6a21eb99c6973357967f6ce3708cd55a6bec6315", "shasum": "" }, "require": { @@ -7638,7 +7654,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.33.0" + "source": "https://github.com/symfony/polyfill-mbstring/tree/v1.37.0" }, "funding": [ { @@ -7658,11 +7674,11 @@ "type": "tidelift" } ], - "time": "2024-12-23T08:48:59+00:00" + "time": "2026-04-10T17:25:58+00:00" }, { "name": "symfony/polyfill-php73", - "version": "v1.33.0", + "version": "v1.37.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php73.git", @@ -7718,7 +7734,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php73/tree/v1.33.0" + "source": "https://github.com/symfony/polyfill-php73/tree/v1.37.0" }, "funding": [ { @@ -7742,16 +7758,16 @@ }, { "name": "symfony/polyfill-php80", - "version": "v1.33.0", + "version": "v1.37.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "0cc9dd0f17f61d8131e7df6b84bd344899fe2608" + "reference": "dfb55726c3a76ea3b6459fcfda1ec2d80a682411" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/0cc9dd0f17f61d8131e7df6b84bd344899fe2608", - "reference": "0cc9dd0f17f61d8131e7df6b84bd344899fe2608", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/dfb55726c3a76ea3b6459fcfda1ec2d80a682411", + "reference": "dfb55726c3a76ea3b6459fcfda1ec2d80a682411", "shasum": "" }, "require": { @@ -7802,7 +7818,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php80/tree/v1.33.0" + "source": "https://github.com/symfony/polyfill-php80/tree/v1.37.0" }, "funding": [ { @@ -7822,11 +7838,11 @@ "type": "tidelift" } ], - "time": "2025-01-02T08:10:11+00:00" + "time": "2026-04-10T16:19:22+00:00" }, { "name": "symfony/polyfill-php81", - "version": "v1.33.0", + "version": "v1.37.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php81.git", @@ -7882,7 +7898,7 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php81/tree/v1.33.0" + "source": "https://github.com/symfony/polyfill-php81/tree/v1.37.0" }, "funding": [ { @@ -7906,16 +7922,16 @@ }, { "name": "symfony/polyfill-php84", - "version": "v1.33.0", + "version": "v1.37.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php84.git", - "reference": "d8ced4d875142b6a7426000426b8abc631d6b191" + "reference": "88486db2c389b290bf87ff1de7ebc1e13e42bb06" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php84/zipball/d8ced4d875142b6a7426000426b8abc631d6b191", - "reference": "d8ced4d875142b6a7426000426b8abc631d6b191", + "url": "https://api.github.com/repos/symfony/polyfill-php84/zipball/88486db2c389b290bf87ff1de7ebc1e13e42bb06", + "reference": "88486db2c389b290bf87ff1de7ebc1e13e42bb06", "shasum": "" }, "require": { @@ -7962,7 +7978,87 @@ "shim" ], "support": { - "source": "https://github.com/symfony/polyfill-php84/tree/v1.33.0" + "source": "https://github.com/symfony/polyfill-php84/tree/v1.37.0" + }, + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2026-04-10T18:47:49+00:00" + }, + { + "name": "symfony/polyfill-php85", + "version": "v1.37.0", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php85.git", + "reference": "fcfa4973a9917cef23f2e38774da74a2b7d115ee" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php85/zipball/fcfa4973a9917cef23f2e38774da74a2b7d115ee", + "reference": "fcfa4973a9917cef23f2e38774da74a2b7d115ee", + "shasum": "" + }, + "require": { + "php": ">=7.2" + }, + "type": "library", + "extra": { + "thanks": { + "url": "https://github.com/symfony/polyfill", + "name": "symfony/polyfill" + } + }, + "autoload": { + "files": [ + "bootstrap.php" + ], + "psr-4": { + "Symfony\\Polyfill\\Php85\\": "" + }, + "classmap": [ + "Resources/stubs" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 8.5+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "support": { + "source": "https://github.com/symfony/polyfill-php85/tree/v1.37.0" }, "funding": [ { @@ -7982,24 +8078,24 @@ "type": "tidelift" } ], - "time": "2025-06-24T13:30:11+00:00" + "time": "2026-04-26T13:10:57+00:00" }, { "name": "symfony/process", - "version": "v7.3.4", + "version": "v8.0.8", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "f24f8f316367b30810810d4eb30c543d7003ff3b" + "reference": "cb8939aff03470d1a9d1d1b66d08c6fa71b3bbdc" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/f24f8f316367b30810810d4eb30c543d7003ff3b", - "reference": "f24f8f316367b30810810d4eb30c543d7003ff3b", + "url": "https://api.github.com/repos/symfony/process/zipball/cb8939aff03470d1a9d1d1b66d08c6fa71b3bbdc", + "reference": "cb8939aff03470d1a9d1d1b66d08c6fa71b3bbdc", "shasum": "" }, "require": { - "php": ">=8.2" + "php": ">=8.4" }, "type": "library", "autoload": { @@ -8027,7 +8123,7 @@ "description": "Executes commands in sub-processes", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/process/tree/v7.3.4" + "source": "https://github.com/symfony/process/tree/v8.0.8" }, "funding": [ { @@ -8047,28 +8143,29 @@ "type": "tidelift" } ], - "time": "2025-09-11T10:12:26+00:00" + "time": "2026-03-30T15:14:47+00:00" }, { "name": "symfony/property-access", - "version": "v7.3.3", + "version": "v8.0.8", "source": { "type": "git", "url": "https://github.com/symfony/property-access.git", - "reference": "4a4389e5c8bd1d0320d80a23caa6a1ac71cb81a7" + "reference": "704c7808116fcdd67327db7b17de56b8ef6169e4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/property-access/zipball/4a4389e5c8bd1d0320d80a23caa6a1ac71cb81a7", - "reference": "4a4389e5c8bd1d0320d80a23caa6a1ac71cb81a7", + "url": "https://api.github.com/repos/symfony/property-access/zipball/704c7808116fcdd67327db7b17de56b8ef6169e4", + "reference": "704c7808116fcdd67327db7b17de56b8ef6169e4", "shasum": "" }, "require": { - "php": ">=8.2", - "symfony/property-info": "^6.4|^7.0" + "php": ">=8.4", + "symfony/property-info": "^7.4.4|^8.0.4" }, "require-dev": { - "symfony/cache": "^6.4|^7.0" + "symfony/cache": "^7.4|^8.0", + "symfony/var-exporter": "^7.4|^8.0" }, "type": "library", "autoload": { @@ -8107,7 +8204,7 @@ "reflection" ], "support": { - "source": "https://github.com/symfony/property-access/tree/v7.3.3" + "source": "https://github.com/symfony/property-access/tree/v8.0.8" }, "funding": [ { @@ -8127,41 +8224,37 @@ "type": "tidelift" } ], - "time": "2025-08-04T15:15:28+00:00" + "time": "2026-03-30T15:14:47+00:00" }, { "name": "symfony/property-info", - "version": "v7.3.4", + "version": "v8.0.8", "source": { "type": "git", "url": "https://github.com/symfony/property-info.git", - "reference": "7b6db23f23d13ada41e1cb484748a8ec028fbace" + "reference": "c21711980653360d6ef5c26d0f9ca6f58a1135c6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/property-info/zipball/7b6db23f23d13ada41e1cb484748a8ec028fbace", - "reference": "7b6db23f23d13ada41e1cb484748a8ec028fbace", + "url": "https://api.github.com/repos/symfony/property-info/zipball/c21711980653360d6ef5c26d0f9ca6f58a1135c6", + "reference": "c21711980653360d6ef5c26d0f9ca6f58a1135c6", "shasum": "" }, "require": { - "php": ">=8.2", - "symfony/deprecation-contracts": "^2.5|^3", - "symfony/string": "^6.4|^7.0", - "symfony/type-info": "~7.2.8|^7.3.1" + "php": ">=8.4", + "symfony/string": "^7.4|^8.0", + "symfony/type-info": "^7.4.7|^8.0.7" }, "conflict": { - "phpdocumentor/reflection-docblock": "<5.2", - "phpdocumentor/type-resolver": "<1.5.1", - "symfony/cache": "<6.4", - "symfony/dependency-injection": "<6.4", - "symfony/serializer": "<6.4" + "phpdocumentor/reflection-docblock": "<5.2|>=7", + "phpdocumentor/type-resolver": "<1.5.1" }, "require-dev": { - "phpdocumentor/reflection-docblock": "^5.2", + "phpdocumentor/reflection-docblock": "^5.2|^6.0", "phpstan/phpdoc-parser": "^1.0|^2.0", - "symfony/cache": "^6.4|^7.0", - "symfony/dependency-injection": "^6.4|^7.0", - "symfony/serializer": "^6.4|^7.0" + "symfony/cache": "^7.4|^8.0", + "symfony/dependency-injection": "^7.4|^8.0", + "symfony/serializer": "^7.4|^8.0" }, "type": "library", "autoload": { @@ -8197,7 +8290,7 @@ "validator" ], "support": { - "source": "https://github.com/symfony/property-info/tree/v7.3.4" + "source": "https://github.com/symfony/property-info/tree/v8.0.8" }, "funding": [ { @@ -8217,62 +8310,56 @@ "type": "tidelift" } ], - "time": "2025-09-15T13:55:54+00:00" + "time": "2026-03-30T15:14:47+00:00" }, { "name": "symfony/serializer", - "version": "v7.3.4", + "version": "v8.0.8", "source": { "type": "git", "url": "https://github.com/symfony/serializer.git", - "reference": "0df5af266c6fe9a855af7db4fea86e13b9ca3ab1" + "reference": "0e3169be25dbf0c23686c8089662cee9dd714932" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/serializer/zipball/0df5af266c6fe9a855af7db4fea86e13b9ca3ab1", - "reference": "0df5af266c6fe9a855af7db4fea86e13b9ca3ab1", + "url": "https://api.github.com/repos/symfony/serializer/zipball/0e3169be25dbf0c23686c8089662cee9dd714932", + "reference": "0e3169be25dbf0c23686c8089662cee9dd714932", "shasum": "" }, "require": { - "php": ">=8.2", - "symfony/deprecation-contracts": "^2.5|^3", - "symfony/polyfill-ctype": "~1.8", - "symfony/polyfill-php84": "^1.30" + "php": ">=8.4", + "symfony/polyfill-ctype": "^1.8" }, "conflict": { - "phpdocumentor/reflection-docblock": "<3.2.2", - "phpdocumentor/type-resolver": "<1.4.0", - "symfony/dependency-injection": "<6.4", - "symfony/property-access": "<6.4", - "symfony/property-info": "<6.4", - "symfony/uid": "<6.4", - "symfony/validator": "<6.4", - "symfony/yaml": "<6.4" + "phpdocumentor/reflection-docblock": "<5.2|>=7", + "phpdocumentor/type-resolver": "<1.5.1", + "symfony/property-info": "<7.4", + "symfony/type-info": "<7.4" }, "require-dev": { - "phpdocumentor/reflection-docblock": "^3.2|^4.0|^5.0", + "phpdocumentor/reflection-docblock": "^5.2|^6.0", "phpstan/phpdoc-parser": "^1.0|^2.0", "seld/jsonlint": "^1.10", - "symfony/cache": "^6.4|^7.0", - "symfony/config": "^6.4|^7.0", - "symfony/console": "^6.4|^7.0", - "symfony/dependency-injection": "^7.2", - "symfony/error-handler": "^6.4|^7.0", - "symfony/filesystem": "^6.4|^7.0", - "symfony/form": "^6.4|^7.0", - "symfony/http-foundation": "^6.4|^7.0", - "symfony/http-kernel": "^6.4|^7.0", - "symfony/messenger": "^6.4|^7.0", - "symfony/mime": "^6.4|^7.0", - "symfony/property-access": "^6.4|^7.0", - "symfony/property-info": "^6.4|^7.0", + "symfony/cache": "^7.4|^8.0", + "symfony/config": "^7.4|^8.0", + "symfony/console": "^7.4|^8.0", + "symfony/dependency-injection": "^7.4|^8.0", + "symfony/error-handler": "^7.4|^8.0", + "symfony/filesystem": "^7.4|^8.0", + "symfony/form": "^7.4|^8.0", + "symfony/http-foundation": "^7.4|^8.0", + "symfony/http-kernel": "^7.4|^8.0", + "symfony/messenger": "^7.4|^8.0", + "symfony/mime": "^7.4|^8.0", + "symfony/property-access": "^7.4|^8.0", + "symfony/property-info": "^7.4|^8.0", "symfony/translation-contracts": "^2.5|^3", - "symfony/type-info": "^7.1.8", - "symfony/uid": "^6.4|^7.0", - "symfony/validator": "^6.4|^7.0", - "symfony/var-dumper": "^6.4|^7.0", - "symfony/var-exporter": "^6.4|^7.0", - "symfony/yaml": "^6.4|^7.0" + "symfony/type-info": "^7.4|^8.0", + "symfony/uid": "^7.4|^8.0", + "symfony/validator": "^7.4|^8.0", + "symfony/var-dumper": "^7.4|^8.0", + "symfony/var-exporter": "^7.4|^8.0", + "symfony/yaml": "^7.4|^8.0" }, "type": "library", "autoload": { @@ -8300,7 +8387,7 @@ "description": "Handles serializing and deserializing data structures, including object graphs, into array structures or other formats like XML and JSON.", "homepage": "https://symfony.com", "support": { - "source": "https://github.com/symfony/serializer/tree/v7.3.4" + "source": "https://github.com/symfony/serializer/tree/v8.0.8" }, "funding": [ { @@ -8320,20 +8407,20 @@ "type": "tidelift" } ], - "time": "2025-09-15T13:39:02+00:00" + "time": "2026-03-31T07:15:36+00:00" }, { "name": "symfony/service-contracts", - "version": "v3.6.0", + "version": "v3.6.1", "source": { "type": "git", "url": "https://github.com/symfony/service-contracts.git", - "reference": "f021b05a130d35510bd6b25fe9053c2a8a15d5d4" + "reference": "45112560a3ba2d715666a509a0bc9521d10b6c43" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/service-contracts/zipball/f021b05a130d35510bd6b25fe9053c2a8a15d5d4", - "reference": "f021b05a130d35510bd6b25fe9053c2a8a15d5d4", + "url": "https://api.github.com/repos/symfony/service-contracts/zipball/45112560a3ba2d715666a509a0bc9521d10b6c43", + "reference": "45112560a3ba2d715666a509a0bc9521d10b6c43", "shasum": "" }, "require": { @@ -8387,7 +8474,7 @@ "standards" ], "support": { - "source": "https://github.com/symfony/service-contracts/tree/v3.6.0" + "source": "https://github.com/symfony/service-contracts/tree/v3.6.1" }, "funding": [ { @@ -8398,43 +8485,47 @@ "url": "https://github.com/fabpot", "type": "github" }, + { + "url": "https://github.com/nicolas-grekas", + "type": "github" + }, { "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", "type": "tidelift" } ], - "time": "2025-04-25T09:37:31+00:00" + "time": "2025-07-15T11:30:57+00:00" }, { "name": "symfony/string", - "version": "v7.3.4", + "version": "v8.0.8", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "f96476035142921000338bad71e5247fbc138872" + "reference": "ae9488f874d7603f9d2dfbf120203882b645d963" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/f96476035142921000338bad71e5247fbc138872", - "reference": "f96476035142921000338bad71e5247fbc138872", + "url": "https://api.github.com/repos/symfony/string/zipball/ae9488f874d7603f9d2dfbf120203882b645d963", + "reference": "ae9488f874d7603f9d2dfbf120203882b645d963", "shasum": "" }, "require": { - "php": ">=8.2", - "symfony/polyfill-ctype": "~1.8", - "symfony/polyfill-intl-grapheme": "~1.0", - "symfony/polyfill-intl-normalizer": "~1.0", - "symfony/polyfill-mbstring": "~1.0" + "php": ">=8.4", + "symfony/polyfill-ctype": "^1.8", + "symfony/polyfill-intl-grapheme": "^1.33", + "symfony/polyfill-intl-normalizer": "^1.0", + "symfony/polyfill-mbstring": "^1.0" }, "conflict": { "symfony/translation-contracts": "<2.5" }, "require-dev": { - "symfony/emoji": "^7.1", - "symfony/http-client": "^6.4|^7.0", - "symfony/intl": "^6.4|^7.0", + "symfony/emoji": "^7.4|^8.0", + "symfony/http-client": "^7.4|^8.0", + "symfony/intl": "^7.4|^8.0", "symfony/translation-contracts": "^2.5|^3.0", - "symfony/var-exporter": "^6.4|^7.0" + "symfony/var-exporter": "^7.4|^8.0" }, "type": "library", "autoload": { @@ -8473,7 +8564,7 @@ "utf8" ], "support": { - "source": "https://github.com/symfony/string/tree/v7.3.4" + "source": "https://github.com/symfony/string/tree/v8.0.8" }, "funding": [ { @@ -8493,26 +8584,25 @@ "type": "tidelift" } ], - "time": "2025-09-11T14:36:48+00:00" + "time": "2026-03-30T15:14:47+00:00" }, { "name": "symfony/type-info", - "version": "v7.3.4", + "version": "v8.0.9", "source": { "type": "git", "url": "https://github.com/symfony/type-info.git", - "reference": "d34eaeb57f39c8a9c97eb72a977c423207dfa35b" + "reference": "08723aceb8c3271e8cb3db8b2565728b0c88e866" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/type-info/zipball/d34eaeb57f39c8a9c97eb72a977c423207dfa35b", - "reference": "d34eaeb57f39c8a9c97eb72a977c423207dfa35b", + "url": "https://api.github.com/repos/symfony/type-info/zipball/08723aceb8c3271e8cb3db8b2565728b0c88e866", + "reference": "08723aceb8c3271e8cb3db8b2565728b0c88e866", "shasum": "" }, "require": { - "php": ">=8.2", - "psr/container": "^1.1|^2.0", - "symfony/deprecation-contracts": "^2.5|^3" + "php": ">=8.4", + "psr/container": "^1.1|^2.0" }, "conflict": { "phpstan/phpdoc-parser": "<1.30" @@ -8556,7 +8646,7 @@ "type" ], "support": { - "source": "https://github.com/symfony/type-info/tree/v7.3.4" + "source": "https://github.com/symfony/type-info/tree/v8.0.9" }, "funding": [ { @@ -8576,30 +8666,29 @@ "type": "tidelift" } ], - "time": "2025-09-11T15:33:27+00:00" + "time": "2026-04-29T15:02:55+00:00" }, { "name": "symfony/var-exporter", - "version": "v7.3.4", + "version": "v8.0.9", "source": { "type": "git", "url": "https://github.com/symfony/var-exporter.git", - "reference": "0f020b544a30a7fe8ba972e53ee48a74c0bc87f4" + "reference": "24cf67be4dd0926e4413635418682f4fff831412" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-exporter/zipball/0f020b544a30a7fe8ba972e53ee48a74c0bc87f4", - "reference": "0f020b544a30a7fe8ba972e53ee48a74c0bc87f4", + "url": "https://api.github.com/repos/symfony/var-exporter/zipball/24cf67be4dd0926e4413635418682f4fff831412", + "reference": "24cf67be4dd0926e4413635418682f4fff831412", "shasum": "" }, "require": { - "php": ">=8.2", - "symfony/deprecation-contracts": "^2.5|^3" + "php": ">=8.4" }, "require-dev": { - "symfony/property-access": "^6.4|^7.0", - "symfony/serializer": "^6.4|^7.0", - "symfony/var-dumper": "^6.4|^7.0" + "symfony/property-access": "^7.4|^8.0", + "symfony/serializer": "^7.4|^8.0", + "symfony/var-dumper": "^7.4|^8.0" }, "type": "library", "autoload": { @@ -8637,7 +8726,7 @@ "serialize" ], "support": { - "source": "https://github.com/symfony/var-exporter/tree/v7.3.4" + "source": "https://github.com/symfony/var-exporter/tree/v8.0.9" }, "funding": [ { @@ -8657,20 +8746,76 @@ "type": "tidelift" } ], - "time": "2025-09-11T10:12:26+00:00" + "time": "2026-04-18T13:51:42+00:00" + }, + { + "name": "symplify/phpstan-extensions", + "version": "12.0.2", + "source": { + "type": "git", + "url": "https://github.com/symplify/phpstan-extensions.git", + "reference": "5ce15cb084eb3bc7f92b77020c59ff3d318746d5" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symplify/phpstan-extensions/zipball/5ce15cb084eb3bc7f92b77020c59ff3d318746d5", + "reference": "5ce15cb084eb3bc7f92b77020c59ff3d318746d5", + "shasum": "" + }, + "require": { + "php": "^7.4 || ^8.0", + "phpstan/phpstan": "^2.0" + }, + "type": "phpstan-extension", + "extra": { + "phpstan": { + "includes": [ + "config/config.neon" + ] + } + }, + "autoload": { + "psr-4": { + "Symplify\\PHPStanExtensions\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "description": "Pre-escaped error messages in 'symplify' error format, container aware test case and other useful extensions for PHPStan", + "keywords": [ + "phpstan-extension", + "static analysis" + ], + "support": { + "issues": "https://github.com/symplify/phpstan-extensions/issues", + "source": "https://github.com/symplify/phpstan-extensions/tree/12.0.2" + }, + "funding": [ + { + "url": "https://www.paypal.me/rectorphp", + "type": "custom" + }, + { + "url": "https://github.com/tomasvotruba", + "type": "github" + } + ], + "time": "2025-11-12T16:46:04+00:00" }, { "name": "thecodingmachine/safe", - "version": "v3.3.0", + "version": "v3.4.0", "source": { "type": "git", "url": "https://github.com/thecodingmachine/safe.git", - "reference": "2cdd579eeaa2e78e51c7509b50cc9fb89a956236" + "reference": "705683a25bacf0d4860c7dea4d7947bfd09eea19" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thecodingmachine/safe/zipball/2cdd579eeaa2e78e51c7509b50cc9fb89a956236", - "reference": "2cdd579eeaa2e78e51c7509b50cc9fb89a956236", + "url": "https://api.github.com/repos/thecodingmachine/safe/zipball/705683a25bacf0d4860c7dea4d7947bfd09eea19", + "reference": "705683a25bacf0d4860c7dea4d7947bfd09eea19", "shasum": "" }, "require": { @@ -8780,7 +8925,7 @@ "description": "PHP core functions that throw exceptions instead of returning FALSE on error", "support": { "issues": "https://github.com/thecodingmachine/safe/issues", - "source": "https://github.com/thecodingmachine/safe/tree/v3.3.0" + "source": "https://github.com/thecodingmachine/safe/tree/v3.4.0" }, "funding": [ { @@ -8791,32 +8936,36 @@ "url": "https://github.com/shish", "type": "github" }, + { + "url": "https://github.com/silasjoisten", + "type": "github" + }, { "url": "https://github.com/staabm", "type": "github" } ], - "time": "2025-05-14T06:15:44+00:00" + "time": "2026-02-04T18:08:13+00:00" }, { "name": "theseer/tokenizer", - "version": "1.2.3", + "version": "2.0.1", "source": { "type": "git", "url": "https://github.com/theseer/tokenizer.git", - "reference": "737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2" + "reference": "7989e43bf381af0eac72e4f0ca5bcbfa81658be4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/theseer/tokenizer/zipball/737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2", - "reference": "737eda637ed5e28c3413cb1ebe8bb52cbf1ca7a2", + "url": "https://api.github.com/repos/theseer/tokenizer/zipball/7989e43bf381af0eac72e4f0ca5bcbfa81658be4", + "reference": "7989e43bf381af0eac72e4f0ca5bcbfa81658be4", "shasum": "" }, "require": { "ext-dom": "*", "ext-tokenizer": "*", "ext-xmlwriter": "*", - "php": "^7.2 || ^8.0" + "php": "^8.1" }, "type": "library", "autoload": { @@ -8838,7 +8987,7 @@ "description": "A small library for converting tokenized PHP source code into XML and potentially other formats", "support": { "issues": "https://github.com/theseer/tokenizer/issues", - "source": "https://github.com/theseer/tokenizer/tree/1.2.3" + "source": "https://github.com/theseer/tokenizer/tree/2.0.1" }, "funding": [ { @@ -8846,20 +8995,20 @@ "type": "github" } ], - "time": "2024-03-03T12:36:25+00:00" + "time": "2025-12-08T11:19:18+00:00" }, { "name": "tomasvotruba/type-coverage", - "version": "2.0.2", + "version": "2.1.0", "source": { "type": "git", "url": "https://github.com/TomasVotruba/type-coverage.git", - "reference": "d033429580f2c18bda538fa44f2939236a990e0c" + "reference": "468354b3964120806a69890cbeb3fcf005876391" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/TomasVotruba/type-coverage/zipball/d033429580f2c18bda538fa44f2939236a990e0c", - "reference": "d033429580f2c18bda538fa44f2939236a990e0c", + "url": "https://api.github.com/repos/TomasVotruba/type-coverage/zipball/468354b3964120806a69890cbeb3fcf005876391", + "reference": "468354b3964120806a69890cbeb3fcf005876391", "shasum": "" }, "require": { @@ -8891,7 +9040,7 @@ ], "support": { "issues": "https://github.com/TomasVotruba/type-coverage/issues", - "source": "https://github.com/TomasVotruba/type-coverage/tree/2.0.2" + "source": "https://github.com/TomasVotruba/type-coverage/tree/2.1.0" }, "funding": [ { @@ -8903,37 +9052,37 @@ "type": "github" } ], - "time": "2025-01-07T00:10:26+00:00" + "time": "2025-12-05T16:38:02+00:00" }, { "name": "webmozart/assert", - "version": "1.11.0", + "version": "2.3.0", "source": { "type": "git", "url": "https://github.com/webmozarts/assert.git", - "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991" + "reference": "eb0d790f735ba6cff25c683a85a1da0eadeff9e4" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/webmozarts/assert/zipball/11cb2199493b2f8a3b53e7f19068fc6aac760991", - "reference": "11cb2199493b2f8a3b53e7f19068fc6aac760991", + "url": "https://api.github.com/repos/webmozarts/assert/zipball/eb0d790f735ba6cff25c683a85a1da0eadeff9e4", + "reference": "eb0d790f735ba6cff25c683a85a1da0eadeff9e4", "shasum": "" }, "require": { "ext-ctype": "*", - "php": "^7.2 || ^8.0" - }, - "conflict": { - "phpstan/phpstan": "<0.12.20", - "vimeo/psalm": "<4.6.1 || 4.6.2" + "ext-date": "*", + "ext-filter": "*", + "php": "^8.2" }, - "require-dev": { - "phpunit/phpunit": "^8.5.13" + "suggest": { + "ext-intl": "", + "ext-simplexml": "", + "ext-spl": "" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.10-dev" + "dev-feature/2-0": "2.0-dev" } }, "autoload": { @@ -8949,6 +9098,10 @@ { "name": "Bernhard Schussek", "email": "bschussek@gmail.com" + }, + { + "name": "Woody Gilk", + "email": "woody.gilk@gmail.com" } ], "description": "Assertions to validate method input/output with nice error messages.", @@ -8959,9 +9112,9 @@ ], "support": { "issues": "https://github.com/webmozarts/assert/issues", - "source": "https://github.com/webmozarts/assert/tree/1.11.0" + "source": "https://github.com/webmozarts/assert/tree/2.3.0" }, - "time": "2022-06-03T18:03:27+00:00" + "time": "2026-04-11T10:33:05+00:00" }, { "name": "webmozart/glob", @@ -9014,34 +9167,34 @@ }, { "name": "wyrihaximus/async-test-utilities", - "version": "10.5.0", + "version": "12.2.0", "source": { "type": "git", "url": "https://github.com/WyriHaximus/php-async-test-utilities.git", - "reference": "77dda3736f53f3989a5d8170f5af4dfc0412795b" + "reference": "cee055045085f13ccd63fbf7472947828b7c50cb" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/WyriHaximus/php-async-test-utilities/zipball/77dda3736f53f3989a5d8170f5af4dfc0412795b", - "reference": "77dda3736f53f3989a5d8170f5af4dfc0412795b", + "url": "https://api.github.com/repos/WyriHaximus/php-async-test-utilities/zipball/cee055045085f13ccd63fbf7472947828b7c50cb", + "reference": "cee055045085f13ccd63fbf7472947828b7c50cb", "shasum": "" }, "require": { "php": "^8.4", - "phpunit/phpunit": "^12.4.1", + "phpunit/phpunit": "^12.5.23", "react/async": "^4.3.0", - "react/event-loop": "^1.5.0", + "react/event-loop": "^1.6.0", "react/promise": "^3.3.0", "wyrihaximus/phpstan-react": "^2.0.0", "wyrihaximus/react-phpunit-run-tests-in-fiber": "^3.0.0", - "wyrihaximus/test-utilities": "^8.6.0" + "wyrihaximus/test-utilities": "^12.2.0" }, "conflict": { "composer/compoer": "<2.6.0" }, "require-dev": { "react/promise-timer": "^1.11.0", - "wyrihaximus/makefiles": "^0.7.10" + "wyrihaximus/makefiles": "^0.10.4" }, "type": "library", "extra": { @@ -9069,7 +9222,7 @@ "description": "Test utilities for api-clients packages", "support": { "issues": "https://github.com/WyriHaximus/php-async-test-utilities/issues", - "source": "https://github.com/WyriHaximus/php-async-test-utilities/tree/10.5.0" + "source": "https://github.com/WyriHaximus/php-async-test-utilities/tree/12.2.0" }, "funding": [ { @@ -9077,28 +9230,28 @@ "type": "github" } ], - "time": "2025-10-25T10:05:25+00:00" + "time": "2026-04-19T20:08:46+00:00" }, { "name": "wyrihaximus/coding-standard", - "version": "2.22.0", + "version": "4.0.0", "source": { "type": "git", "url": "https://github.com/WyriHaximus/php-coding-standard.git", - "reference": "f05f141d7d5ce6921f96dda604847e933afe95a0" + "reference": "29855675f089665ad4923afb61305cbf42589255" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/WyriHaximus/php-coding-standard/zipball/f05f141d7d5ce6921f96dda604847e933afe95a0", - "reference": "f05f141d7d5ce6921f96dda604847e933afe95a0", + "url": "https://api.github.com/repos/WyriHaximus/php-coding-standard/zipball/29855675f089665ad4923afb61305cbf42589255", + "reference": "29855675f089665ad4923afb61305cbf42589255", "shasum": "" }, "require": { - "dealerdirect/phpcodesniffer-composer-installer": "^1.1.2", - "doctrine/coding-standard": "^13.0.1", + "dealerdirect/phpcodesniffer-composer-installer": "^1.2.0", + "doctrine/coding-standard": "^14.0.0", "php": "^8.4", - "slevomat/coding-standard": "^8.22.0", - "squizlabs/php_codesniffer": "^3.13.4" + "slevomat/coding-standard": "^8.26.0", + "squizlabs/php_codesniffer": "^4.0.1" }, "type": "phpcodesniffer-standard", "notification-url": "https://packagist.org/downloads/", @@ -9108,7 +9261,7 @@ "description": "WyriHaximus Coding Standard", "support": { "issues": "https://github.com/WyriHaximus/php-coding-standard/issues", - "source": "https://github.com/WyriHaximus/php-coding-standard/tree/2.22.0" + "source": "https://github.com/WyriHaximus/php-coding-standard/tree/4.0.0" }, "funding": [ { @@ -9116,7 +9269,7 @@ "type": "github" } ], - "time": "2025-09-08T13:17:09+00:00" + "time": "2026-01-14T17:34:23+00:00" }, { "name": "wyrihaximus/iterator-or-array-to-array", @@ -9276,32 +9429,33 @@ }, { "name": "wyrihaximus/phpstan-rules-wrapper", - "version": "10.20.0", + "version": "12.2.0", "source": { "type": "git", "url": "https://github.com/WyriHaximus/php-phpstan-rules-wrapper.git", - "reference": "2eec9c5147e457fa44eabb6c310abe98539a1ab6" + "reference": "a3d005d1fc7861d282c4b8fd060fb13e79043a19" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/WyriHaximus/php-phpstan-rules-wrapper/zipball/2eec9c5147e457fa44eabb6c310abe98539a1ab6", - "reference": "2eec9c5147e457fa44eabb6c310abe98539a1ab6", + "url": "https://api.github.com/repos/WyriHaximus/php-phpstan-rules-wrapper/zipball/a3d005d1fc7861d282c4b8fd060fb13e79043a19", + "reference": "a3d005d1fc7861d282c4b8fd060fb13e79043a19", "shasum": "" }, "require": { - "ergebnis/phpstan-rules": "^2.12.0", - "php": "^8.3", + "ergebnis/phpstan-rules": "^2.13.1", + "php": "^8.4", "phpstan/extension-installer": "^1.4.3", - "phpstan/phpstan": "^2.1.30", - "phpstan/phpstan-deprecation-rules": "^2.0.3", + "phpstan/phpstan": "^2.1.40", + "phpstan/phpstan-deprecation-rules": "^2.0.4", "phpstan/phpstan-mockery": "^2.0.0", - "phpstan/phpstan-phpunit": "^2.0.7", - "phpstan/phpstan-strict-rules": "^2.0.7", - "shipmonk/dead-code-detector": "^0.13.3", - "shipmonk/phpstan-rules": "^4.2.1", + "phpstan/phpstan-phpunit": "^2.0.16", + "phpstan/phpstan-strict-rules": "^2.0.10", + "shipmonk/dead-code-detector": "^0.14.1", + "shipmonk/phpstan-rules": "^4.3.6", "staabm/phpstan-psr3": "^1.0.3", - "tomasvotruba/type-coverage": "^2.0.2", - "yamadashy/phpstan-friendly-formatter": "^1.2.0" + "symplify/phpstan-extensions": "^12.0.2", + "tomasvotruba/type-coverage": "^2.1.0", + "yamadashy/phpstan-friendly-formatter": "^1.4.0" }, "type": "library", "extra": { @@ -9324,7 +9478,7 @@ "description": "🌯 PHPStan rules wrapper", "support": { "issues": "https://github.com/WyriHaximus/php-phpstan-rules-wrapper/issues", - "source": "https://github.com/WyriHaximus/php-phpstan-rules-wrapper/tree/10.20.0" + "source": "https://github.com/WyriHaximus/php-phpstan-rules-wrapper/tree/12.2.0" }, "funding": [ { @@ -9332,7 +9486,7 @@ "type": "github" } ], - "time": "2025-10-08T15:56:40+00:00" + "time": "2026-02-26T23:44:30+00:00" }, { "name": "wyrihaximus/pool-info", @@ -9444,45 +9598,46 @@ }, { "name": "wyrihaximus/test-utilities", - "version": "8.6.0", + "version": "12.2.0", "source": { "type": "git", "url": "https://github.com/WyriHaximus/php-test-utilities.git", - "reference": "d41143c31259c0c80dbcb873cdb0a57ecdbb9fd3" + "reference": "d03332b087598b8207375a3eb872df22f64f8e40" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/WyriHaximus/php-test-utilities/zipball/d41143c31259c0c80dbcb873cdb0a57ecdbb9fd3", - "reference": "d41143c31259c0c80dbcb873cdb0a57ecdbb9fd3", + "url": "https://api.github.com/repos/WyriHaximus/php-test-utilities/zipball/d03332b087598b8207375a3eb872df22f64f8e40", + "reference": "d03332b087598b8207375a3eb872df22f64f8e40", "shasum": "" }, "require": { "composer-plugin-api": "^2", - "ergebnis/composer-normalize": "^2.48.2", - "ergebnis/phpunit-slow-test-detector": "^2.20.0", + "ergebnis/composer-normalize": "^2.51.0", + "ergebnis/phpunit-slow-test-detector": "^2.24.0", "ext-hash": "^8.4", "ext-json": "^8.4", - "icanhazstring/composer-unused": "^0.9.5", - "infection/infection": "^0.31.7", - "maglnet/composer-require-checker": "^4.16.1", + "icanhazstring/composer-unused": "^0.9.6", + "infection/infection": "^0.32.6", + "maglnet/composer-require-checker": "^4.20.0", "mockery/mockery": "^1.6.12", "php": "^8.4", - "php-parallel-lint/php-console-highlighter": "^1.0", + "php-parallel-lint/php-console-highlighter": "^1.0.0", "php-parallel-lint/php-parallel-lint": "^1.4.0", - "phpstan/phpstan": "^2.1.31", - "phpunit/phpunit": "^12.4.1", - "rector/rector": "^2.2.1", - "roave/backward-compatibility-check": "^8.15.0", - "squizlabs/php_codesniffer": "^3.13.4", - "wyrihaximus/coding-standard": "^2.22.0", - "wyrihaximus/phpstan-rules-wrapper": "^10.20.0" + "phpstan/phpstan": "^2.1.50", + "phpunit/phpunit": "^12.5.23", + "rector/rector": "^2.4.2", + "roave/backward-compatibility-check": "^8.19.0", + "squizlabs/php_codesniffer": "^4.0.1", + "wyrihaximus/coding-standard": "^4.0.0", + "wyrihaximus/phpstan-rules-wrapper": "^12.2.0" }, "conflict": { + "composer-unused/symbol-parser": "<0.3.3", "composer/pcre": "<3.3.2", "wyrihaximus/makefiles": "<0.5.0" }, "require-dev": { - "wyrihaximus/makefiles": "^0.7.10" + "wyrihaximus/makefiles": "^0.10.4" }, "suggest": { "wyrihaximus/async-test-utilities": "The recommended addition to this package when building ReactPHP packages and projects.", @@ -9515,7 +9670,7 @@ "description": "🛠️ Test utilities for api-clients packages", "support": { "issues": "https://github.com/WyriHaximus/php-test-utilities/issues", - "source": "https://github.com/WyriHaximus/php-test-utilities/tree/8.6.0" + "source": "https://github.com/WyriHaximus/php-test-utilities/tree/12.2.0" }, "funding": [ { @@ -9523,31 +9678,31 @@ "type": "github" } ], - "time": "2025-10-23T19:38:43+00:00" + "time": "2026-04-19T17:51:13+00:00" }, { "name": "yamadashy/phpstan-friendly-formatter", - "version": "v1.2.0", + "version": "v1.4.0", "source": { "type": "git", "url": "https://github.com/yamadashy/phpstan-friendly-formatter.git", - "reference": "3385bd3455c7ea806efe06f30d9478d485d1ac9b" + "reference": "cd4882c7293591c13230b5be35e742b33d2ab2ff" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/yamadashy/phpstan-friendly-formatter/zipball/3385bd3455c7ea806efe06f30d9478d485d1ac9b", - "reference": "3385bd3455c7ea806efe06f30d9478d485d1ac9b", + "url": "https://api.github.com/repos/yamadashy/phpstan-friendly-formatter/zipball/cd4882c7293591c13230b5be35e742b33d2ab2ff", + "reference": "cd4882c7293591c13230b5be35e742b33d2ab2ff", "shasum": "" }, "require": { - "php": "^7.4 || ^8.0", + "php": "^8.1", "php-parallel-lint/php-console-highlighter": "^0.3 || ^0.4 || ^0.5 || ^1.0", - "phpstan/phpstan": "^0.12 || ^1.0 || ^2.0" + "phpstan/phpstan": "^1.0 || ^2.0" }, "require-dev": { - "friendsofphp/php-cs-fixer": "^3.4.0", - "phpstan/phpstan-phpunit": "^2.0", - "phpunit/phpunit": "^8.5.26 || ^10.0.0" + "friendsofphp/php-cs-fixer": "^3.93.0", + "phpstan/phpstan-phpunit": "^2.0.12", + "phpunit/phpunit": "^10.0 || ^11.0" }, "type": "phpstan-extension", "extra": { @@ -9581,9 +9736,9 @@ ], "support": { "issues": "https://github.com/yamadashy/phpstan-friendly-formatter/issues", - "source": "https://github.com/yamadashy/phpstan-friendly-formatter/tree/v1.2.0" + "source": "https://github.com/yamadashy/phpstan-friendly-formatter/tree/v1.4.0" }, - "time": "2024-11-13T14:43:14+00:00" + "time": "2026-01-26T15:12:47+00:00" } ], "packages-dev": [ @@ -9697,16 +9852,16 @@ }, { "name": "wyrihaximus/makefiles", - "version": "0.7.11", + "version": "0.7.16", "source": { "type": "git", "url": "https://github.com/WyriHaximus/Makefiles.git", - "reference": "1aac2fbee79c43fe8ce78d9663f8784dd2a8b37b" + "reference": "2628d098eb9c628e18c7d7b7e822a66c7c144775" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/WyriHaximus/Makefiles/zipball/1aac2fbee79c43fe8ce78d9663f8784dd2a8b37b", - "reference": "1aac2fbee79c43fe8ce78d9663f8784dd2a8b37b", + "url": "https://api.github.com/repos/WyriHaximus/Makefiles/zipball/2628d098eb9c628e18c7d7b7e822a66c7c144775", + "reference": "2628d098eb9c628e18c7d7b7e822a66c7c144775", "shasum": "" }, "require": { @@ -9718,7 +9873,7 @@ "infection/infection": "<0.31.3" }, "require-dev": { - "wyrihaximus/test-utilities": "^8.7.0" + "wyrihaximus/test-utilities": "^8.8.0" }, "type": "composer-plugin", "extra": { @@ -9742,7 +9897,7 @@ "description": "🧱 Makefile building blocks", "support": { "issues": "https://github.com/WyriHaximus/Makefiles/issues", - "source": "https://github.com/WyriHaximus/Makefiles/tree/0.7.11" + "source": "https://github.com/WyriHaximus/Makefiles/tree/0.7.16" }, "funding": [ { @@ -9750,7 +9905,7 @@ "type": "github" } ], - "time": "2025-11-08T14:19:45+00:00" + "time": "2025-12-22T16:36:23+00:00" } ], "aliases": [], @@ -9766,5 +9921,5 @@ "platform-overrides": { "php": "8.4.13" }, - "plugin-api-version": "2.6.0" + "plugin-api-version": "2.9.0" } diff --git a/etc/qa/phpstan.neon b/etc/qa/phpstan.neon index 5ebf761..7c27bef 100644 --- a/etc/qa/phpstan.neon +++ b/etc/qa/phpstan.neon @@ -4,21 +4,6 @@ parameters: - ../../src - ../../tests level: max - ignoreErrors: - - - message: '#sleep blocks the event loop#' - path: ../../src/AbstractPoolTest.php - - - message: '#sleep blocks the event loop#' - path: ../../src/AbstractPoolTest.php - - - identifier: shipmonk.checkedExceptionInYieldingMethod - path: ../../src/AbstractPoolTest.php - count: 4 - - - identifier: shipmonk.checkedExceptionInCallable - path: ../../src/AbstractPoolTest.php - count: 1 ergebnis: noExtends: classesAllowedToBeExtended: diff --git a/src/AbstractPoolTest.php b/src/AbstractPoolTest.php index e0e7183..1dbf1c3 100644 --- a/src/AbstractPoolTest.php +++ b/src/AbstractPoolTest.php @@ -44,6 +44,7 @@ final public static function provideCallablesAndTheirExpectedResults(): iterable $moneySameCurrentcyFunc = static fn (Money $euro, Money $usd): bool => $euro->isSameCurrency($usd); + /** @phpstan-ignore argument.type,argument.type,argument.type */ yield 'money-same-currency' => [ $moneySameCurrentcyFunc, [ @@ -73,6 +74,7 @@ final public static function provideCallablesAndTheirExpectedResults(): iterable ]; $sleepFunc = static function (): bool { + /** @phpstan-ignore wyrihaximus.reactphp.blocking.function.sleep */ sleep(1); return true; @@ -98,6 +100,7 @@ final public function fullRunThrough(Closure $callable, array $args, mixed $expe $pool = $this->createPool(); try { + /** @phpstan-ignore method.unresolvableReturnType */ $result = $pool->run($callable, $args); } finally { $pool->close(); @@ -121,6 +124,7 @@ final public function fullRunThroughMultipleConsecutiveCalls(Closure $callable, try { $results = []; foreach (range(0, 8) as $i) { + /** @phpstan-ignore method.unresolvableReturnType */ $results[$i] = $pool->run($callable, $args); } } finally { @@ -147,6 +151,7 @@ final public function closedPoolShouldNotRunClosures(Closure $callable, array $a $pool = $this->createPool(); self::assertTrue($pool->close()); + /** @phpstan-ignore method.unresolvableReturnType */ $pool->run($callable, $args); } @@ -162,7 +167,9 @@ final public function killingPoolWhileRunningClosuresShouldNotYieldValidResult() }); /** @phpstan-ignore-next-line */ + /** @phpstan-ignore staticMethod.alreadyNarrowedType */ self::assertSame(123, $pool->run(static function (): int { + /** @phpstan-ignore wyrihaximus.reactphp.blocking.function.sleep */ sleep(1); return 123;